web-dev-qa-db-ja.com

gksu -wは、私が慣れている方法では機能しませんか?

icewmのシステム全体のメニューコマンドとしてgksu -w shutdown -hP nowを使用したため、管理者以外のユーザーがメニューからシャットダウンをクリックすると、管理者パスワードを要求するパスワードダイアログボックスが表示されます。それは私がLinuxMintでicewmを実行していたときでした。

Ubuntuに切り替えたとき、同じコマンドが機能しませんでした。管理者パスワードを要求する同じダイアログボックスが表示されますが、私が試した既存のsudoersパスワードはどれも機能または受け入れられませんでした。 Ubuntuのインストール時に作成するように求められた最初のアカウントのパスワードでさえ機能しませんでした。

gksu -u admin-user -w 'shutdown -hP nowも試しましたが、「shutdown:Need toberoot」というエラーメッセージが表示されました。

では、UbuntuとMintのgksuルールの違いは何ですか?私は現在Ubuntu12.04 LTSを使用しており、参照しているMintはMint 13Mayaです。また、管理者以外のユーザーがIceWMメニューでシャットダウンコマンドを許可する他の方法はありますが、管理者パスワードを要求することで、シャットダウンする前にまず許可を求めてほしいのですが。

シャットダウンの他に、バックアップパーティションをマウントするためのhibernateや、gksu -wを適用したsynapticなど、管理者権限を必要とする他のコマンドもIceWMメニューにあります。

問題:

  • gksu -wはrootパスワードを要求しますが、Ubuntuではrootユーザーはデフォルトでパスワードを持っていないため、試行するすべてが失敗します。

  • gksu -u admin-user -wshutdownadmin-userとして実行しますが、ではなくrootである必要がありますadmin-user

考えられる解決策は2つです。

  1. 使用する gksu -u admin-user -w gksu -S。つまり、最初にadmin-usergksu -u admin-user -w)、次にルートになります(gksu -S)。

  2. rootユーザーのパスワードを設定します 。こちらです、 gksu -wは期待どおりに機能します。

最初の解決策の欠点は、2つのパスワードの入力を求められることですが、これは不快な場合があります。 2番目のソリューションの欠点は、rootユーザーを有効にすることが推奨されないことです。

2

Ubuntuではそれほど違いはありませんが、gksudoではなくgksuを使用することをお勧めします。 'admin-username'を 'sudoers'または 'admin'グループに追加するか、/ etc/sudoersファイルのshutdownコマンドへのアクセスを許可するだけです。

次に、gksu -w <admin-username> <command>の代わりにgksudo <command>を使用できます。繰り返しますが、Sudo/gksudoを使用することの全体的なポイントは、ユーザーが本格的なrootアクセスを許可せずに管理タスクを実行できるようにすることです。

0
Fahad Yousuf