私は幻覚で作られたguiを持っています。端末を使わずに所有権とアクセス権を変更する - Python
所有権とアクセス権を変更するボタンがあります。それはrootが所有するフォルダやファイルを除いて正常に動作します。
端末にルートパスワードを入力しなくても、このコマンドを実行するにはルート特権を呼び出すことはありますか?すなわち、スクリプト内で事前定義するか、またはパスワードのポップアッププロンプトをアクティブにして、それを組み込む。以下のコードの
例:
def on_button_clicked(self, widget):
path = {defined from combobox}
os.chdir(path)
uid = os.getuid()
gid = os.getgid()
for root, dirs, files in os.walk(path):
for d in dirs:
os.chown(os.path.join(root, d), uid, gid)
os.chmod(os.path.join(root, d), 0o755)
for f in files:
os.chown(os.path.join(root, f), uid, gid)
os.chmod(os.path.join(root, f), 0o755)
rootとしてスクリプトを実行するだけの理由はありません。あなたの「パスワードが端末に入力されていません」という要件は私には少し不明です。パスワードを入力する必要がないことを意味しますか、パスワードの入力を求められてスクリプトを中断したくないのですか? – skrrgwasme
私はあなたが[Envoy](https://github.com/kennethreitz/envoy) – Olian04
を使用することができると思う理由は、@ skrrgwasmeは、スクリプトがGUIでうまく動作すると私はos.systemを使用する場合 'sudoのchown ..... ')コマンドを実行すると、実際にルートpasswrodがユーザによって入力されるのを待っているように、クラッシュしたかのように見えるようになります。 –