パスワードとしてパラメータを指定してsudoを実行して、スクリプトに使用できるようにします。私は試しましたパスワードとしてパスワードをパラメータとして使用する
sudo -S mypassword execute_command
しかし成功しません。助言がありますか?
パスワードとしてパラメータを指定してsudoを実行して、スクリプトに使用できるようにします。私は試しましたパスワードとしてパスワードをパラメータとして使用する
sudo -S mypassword execute_command
しかし成功しません。助言がありますか?
echo -e "YOURPASSWORD\n" | sudo -S yourcommand
私のコマンドの引数がある場合、これは動作しません。例えば。 'echo -e"あなたのパスワード\ n "| sudo -S "run -x" ' 'sudo:run -x:command not found'と表示されます。どのようにこれを回避するための任意のアイデアですか? – Bee
@Bhathiyaは単純に引用符を使用しません。例: echo -e "YOURPASSWORD \ n" | sudo -S ls -l/root – matteomattei
素晴らしい、ありがとう... – Bee
-Sスイッチを使用すると、sudoはSTDINからパスワードを読み取ります。これはしかし、ユーザーがルートの場合、このようなチェックなどのコマンドの一部としてパスワードを渡す伴わない他者による提案は、おそらくある須藤
にパスワードを渡すために
echo mypassword | sudo -S command
を行うことができることを意味しますセキュリティ上の理由から
働いて、多くの多くのありがとう!! – normalUser
私の一日を救い、多くの感謝!!! – AdrianES
それを専用のフォルダに入れて、フォルダと実行可能なフォルダの両方に実行権限を与える方法は? 'sudo chmod -R 0100 myScriptFolder'?それはセキュリティの問題を解決しないだろうか? – Shule
1つのオプションは、sudoに-Aフラグを使用することです。これにより、パスワードを尋ねるプログラムが実行されます。尋ねるのではなく、パスワードを吐き出してプログラムを続けるスクリプトを作成することができます。
# Make sure only root can run our script
if [ "$(id -u)" != "0" ]; then
echo "This script must be run as root" 1>&2
exit 1
fi
これはOPの質問には答えません。 – codeforester
"root"でスクリプトが実行されているかどうかを確認するだけです。パスワードをエコーするのは悪いですが、それは歴史の中で発見されます... – kbdjockey
'sudo'を適切に設定すると、そのような不正なハックを避けるために、特定のプログラム/ユーザ/グループのパスワードを尋ねることはありません。 – rush