web-dev-qa-db-ja.com

特定の一般ユーザーが/ etc / fstabを編集できるようにSudoをセットアップします

特定の一般ユーザーが/etc/fstabを編集できるようにSudoを設定するにはどうすればよいですか?これを行うには/etc/sudoers.dファイルを編集するつもりですが、このファイルの/etc/fstabをどのように編集しますか?

1
user786034

editfstabという名前の簡単なスクリプトを作成し、/usr/local/binに配置し(シェルコマンドとしてアクセス可能)、実行可能にします。

echo -e '#!/bin/sh\nnano /etc/fstab' | Sudo tee /usr/local/bin/editfstab && Sudo chmod +x /usr/local/bin/editfstab

コマンドSudo visudo -f /etc/sudoers.d/editfstabを実行し、新しく作成されたファイルのコンテンツとして次のルールを追加します。

ALL ALL=NOPASSWD: /usr/local/bin/editfstab

この時点で、各システムユーザーは、次のコマンドにより、パスワードなしで/etc/fstabを編集できます。

Sudo editfstab

編集前にバックアップコピーを作成する機能を追加することにより、/usr/local/bin/editfstabの機能を拡張できます。

#!/bin/sh
cp /etc/fstab /etc/fstab.bak
nano /etc/fstab
1
pa4080

Cmdエイリアスでお気に入りの編集ソフトウェアを使用してsudoers.dに行を追加すると、トリックが実行されます。

Cmnd_Alias EDITFSTAB = /etc/bin/vim /etc/fstab
username    ALL = (user) EDITFSTAB

エスケープ特権の大きなリスクがあることに注意してください。エディターを使用せずにfstabの変更を制限/制御する基本的なシェルスクリプトを作成する必要があります(つまり、「その変更のため、1を押して」fstabでエコーします)。

1