私はディスクからデータを読み込み、キャッシュされていないことを確認する必要のあるシステムでパフォーマンステストを行っています。私はhereを読んで、私はしかしコマンドでroot以外のユーザーがキャッシュを削除できるようにする
echo 3 | sudo tee /proc/sys/vm/drop_caches
をキャッシュをドロップすることができる、私のアカウントが管理者アカウント(ピーター・ログイン)であっても、それはまだ私のパスワードを必要とすることに注意してください。パスワードを入力する必要なしにバッチスクリプトでこれを実行できるようにしたい(これは明らかに手動です)
さらにresearchはsudoersファイルに導かれました。私の計画は、上記のコマンドをdropCacheという1行のスクリプトに置き、sudoersを編集してパスワードを入力せずに実行できるようにすることでした。だから、私のsudoersファイルの最後にvisudoを使って
ALL ALL=(ALL)NOPASSWD:/home/peter/dropCache
を追加しました。私は
sudo -l
を実行する場合、私の管理者アカウントを使用すると、私は私が私のdropCacheスクリプトを実行する場合、私はまだ私のパスワード
./dropCache
[sudo] password for peter:
これで任意の助けを求めます、しかし
(ALL) NOPASSWD: /home/peter/dropCache
を取得します非常に高く評価されるだろう。私は
私は、これは私は小さなCプログラムを書いた必要なルートにコンパイルされたファイルの所有者を変更したときに、私が何をしたかのおかげ ピーター
こんにちはトーマス:ここ
ソースコードです! –
それはうまくいった!ありがとうThomas - あなたは高い評判スコアに値する –
この実行ファイルはセキュリティ上のリスクです.PATHを設定せず、絶対パス名なしで外部コマンドを実行してください。外部同期コマンドを実行する代わりに、sync()システムコールを直接呼び出すことができます。 –