質問: ローカルユーザーとしてパッケージをインストールし、 sudoを使用したかった 必要に応じて。そのために、「stack」というアカウントを作成し、 / etc / sudoersに以下のエントリを作成しました。 ファイル。
# User privilege specification root ALL=(ALL:ALL) ALL stack ALL=(ALL) NOPASSWD:ALL
ただし、コマンドラインで sudo -sコマンドを使用して確認した場合 、以下に示すようにパスワードを要求します:
stack@cloudsec2:~$ sudo -s [sudo] password for stack:
助けてください、どこが間違っているのですか?
ソリューション1: 管理者グループのルールの行の後にその行を配置する必要があります。複数のエントリがユーザーに一致する場合、それらは順番に適用されるためです。複数の一致がある場合は、最後の一致が使用されます(これは必ずしも最も具体的な一致ではありません)。
したがって、sudoersファイルは次のようになります。
# User privilege specification root ALL=(ALL:ALL) ALL # Members of the admin group may gain root privileges %admin ALL=(ALL) ALL stack ALL=(ALL) NOPASSWD:ALL # Allow members of group sudo to execute any command %sudo ALL=(ALL:ALL) ALL
ソリューション2: 以下に示すように、行を移動する代わりに、行を削除して%sudoのエントリにNOPASSWDを追加するだけです。
%sudo ALL=(ALL:ALL) NOPASSWD:ALL
注:以下に示すように、ログインがsudoグループに属していることを確認してください。
root@cloudsec2:~# id stack uid=1000(stack) gid=1000(stack) groups=1000(stack),4(adm),27(sudo),
ソリューション3: 行を/etc/sudoers.d/の下のファイルに移動します
visudo -f /etc/sudoers.d/myOverrides
以下の行を挿入します:
stack ALL=(ALL:ALL) NOPASSWD:ALL
次に、 / etc / sudoersを開きます。 次の行をファイルしてコメントを外します:
visudo -f /etc/sudoers #includedir /etc/sudoers.d
これは、sudoerを編集するためのより良いアプローチです。
注:常に使用してくださいvisudo。ファイルにエラーを挿入すると、sudoを実行できなくなる可能性があります!
OpenStackダッシュボードのインストールエラー–パッケージopenstack-dashboard-ubuntu-themeの処理中にエラーが発生しました[解決済み]
Ubuntuでapt-getまたはaptitudeを使用してインストールする前にパッケージのバージョンを識別する方法は?