特定のユーザーが次のコマンドにアクセスできるようにする必要があります。
sudo sync
echo 3 | sudo tee /proc/sys/vm/drop_caches
(この特定の開発者はいくつかのデータベースパフォーマンステストを実行しており、fsキャッシュをフラッシュしてより明確な数値を提供するため、このコマンドを使用する理由については言及しないでください。)
sudoを使用して、ユーザーを次の非常に具体的なコマンドに制限できますかtee /proc/sys/vm/drop_caches
?
私が理解している限り、コマンド自体にのみ制限できますtee
。しかし、私はユーザーtee
が望むものをrootとして使用する機能を提供したくありません。
別のオプションは、特定のファイルへの書き込みアクセス権を付与することですが、管理者ではなく一部にファイルへの書き込みアクセス権を付与するというクレイジーな話ですか/proc
?
これを制限する最良の方法についてのアドバイスやアイデアをいただきありがとうございます。
答え1
Sudoはコマンドライン引数を受け入れます。したがって、パラメータが/ proc / sys / vm / drop_cachesの場合、teeが許可されるようにsudoersファイルを変更できますが、他のすべての場合はsudoが実行を拒否します。より厳格な適用が必要な場合は、より厳格な権限を使用して/usr/binまたは/usr/local/binのどこかにきれいなシェルスクリプト置換を配置し、sudoers設定でユーザーが特定の場所でrootとしてスクリプトモデレータを実行できるようにします。