sudo権限からプログラムを実行する必要があり、.py
プログラム内でファイルを実行しています。そのため、プログラムが から実行されると、自動的にでファイルをsudo
呼び出し/実行します。次のようなファイルを実行しています。.py
sudo
./myFile.py arg1 arg2
私の要件は、プログラムを から実行する必要があることですsudo
が、プログラム内でファイルを実行/呼び出す場合は.py
、通常の権限 ( なし) として実行する必要がありますsudo
。
どうすればいいでしょうか?
答え1
プログラム内でPythonスクリプトを開始するには、
su -c '<your_python_script>' - <your_user_name>
例
$ sudo su -
$ whoami
root
$ su -c 'whoami' - aboettger
aboettger
またはスクリプト名としてfoo
#!/bin/bash
whoami
su -c 'whoami' - aboettger
exit 0
出力例
sudo ./foo
root
aboettger