お知らせ

  • 利用規約を守って投稿してください。また、よくある質問および投稿の手引きも参照してください。
  • メッセージの投稿にはアカウントが必要です。未登録の方は、ユーザ登録ページからアカウントを作成することができます。

#1 2009-01-13 21:55:01

pirupiru
メンバ
登録日: 2009-01-01

sudo コマンド

再起動やシャットダウン等の際にsudoコマンドを入力します。その後パスワードをいれますが、これは省略できないのでしょうか。自分一人しかパソコン使ってないので管理者権限も特に意識しないし、いちいちパスワードをいれるのが面倒なのです。助言をよろしくお願いします。

オフライン

 

#2 2009-01-13 22:02:19

yama
メンバ
登録日: 2006-10-23

Re: sudo コマンド

ubuntuですと右上のアイコンをクリックしますと、シャットダウンメニューが表れ、いちいちsudo なしで電源OFFや再起動が出来ます。
もしかしてサーバー版でもお使いでしょうか。

shutdown コマンドでしょうか?

コード:

sudo chmod u+s shutdown

で shutdown コマンドを管理者以外でも使用できるようになり、sudoをいちいち付ける必要がなくなります。当然セキュリティリスクは増えます。

オフライン

 

#3 2009-01-13 23:13:54

STGSAGWAN
ゲスト

Re: sudo コマンド

shutdown や rebootなどの特定コマンドというわけじゃなくて、sudo なんちゃら の時のパスワードが「うっとうしい」のですよね?

私には2つ方法が思いつきます。

方法1) sudoersを編集し、NOPASSWD というタグを用いる事で、パスワードを不要にする。
定番の方法の1つです。
sudoersはある程度体系的に学ぶことをせずにいきなりイジるとやや危険なので、まずは調べてみることをお勧めします。

方法2) 簡単でもの凄く短いパスワードを使う。

極端に短いパスワードについては、ユーザ権限だと設定できないようなので、
代わりに端末から
$ sudo passwd 自分のユーザ名
を実行する必要があります。

ただし、どちらの場合でもセキュリティはかなり低くなるので、その点は留意してくださいね。

なお、完全に個人ユースで今回のような場合では、方法2)のほうが良いと個人的には思います。
以下、その理由を説明します。※これは一般論ではなく私の見解です。

方法1)を設定してしまうと、端末からsudoコマンドと合わせて単発のコマンドを明示的に打っている場面ではあまり問題にはならないのですが(※1)、画面から操作する場合(gksudoコマンドが自分からは見えない裏で実行されている場合)は、パスワード要求ダイアログが出現せずに素通りする動きとなる為、どういう場面で管理者権限が必要とされているのかを実体験を持って学習できなくなるので、お勧めしないのです。

※1 内部でsudoを使ってるシェルスクリプトは、画面と同様、いつ管理者権限を要求されているのか分からなくなります。

具体例でいうと、
もし方法1)を設定すると、例えばアップデート・マネージャでは、どの操作がユーザ権限で出来て、どの操作が管理者権限を要するのか区別が分からなくなり、他のマシンを使った時や人に教える時にかなり戸惑うはずです。

最後の編集者: STGSAGWAN (2009-01-13 23:36:33)

 

#4 2009-01-14 00:58:09

pirupiru
メンバ
登録日: 2009-01-01

Re: sudo コマンド

皆様回答ありがとうございます。
yama様 サーバー版ではありません。パスワードを入れるのが煩わしいので質問しました。アイコンをクリックするよりは、コマンド入力のほうが個人的に好きなのです。

STGSAGWAN 様 自分は方法1を選択しました。他のマシンを使う時や他人に教えることはあまり自分にはなさそうです。
とりあえず調べて sudo visudo の後、

# Uncomment to allow members of group sudo to not need a password
# (Note that later entries override this, so you might need to move
# it further down)
%sudo ALL=NOPASSWD: ALL

で最後の行をコメントアウトしてみましたがどうもうまくいきません。どうしたらよいのでしょうか?

オフライン

 

#5 2009-01-14 07:43:08

sumiyota
メンバ
From: 茨城県
登録日: 2007-06-09

Re: sudo コマンド

sudoのパスワードを省略するということでしたら、

$ sudo EDITOR=gedit visudo と入力して、

『%admin ALL=(ALL) ALL』 の部分を→ 『%admin ALL=(ALL) NOPASSWD:ALL』 とすると省略できます。

オフライン

 

#6 2009-01-14 16:33:36

pirupiru
メンバ
登録日: 2009-01-01

Re: sudo コマンド

sumiyota様、回答ありがとうございます。しかしどうもコマンドを打ち間違えたみたいで、sudoコマンドを実行すると

>>>sudoers file: syntax error, line 25 <<<
sudo : parse error in etc/sudoers near line 25

とでてしまい、実行できません。おまけにファイルを開けないので修正もできません(泣)。
どうしたらいいでしょうか?

オフライン

 

#7 2009-01-14 18:29:40

sumiyota
メンバ
From: 茨城県
登録日: 2007-06-09

Re: sudo コマンド

pirupiruさん。

残念ながら復旧方法は私には解りません。私も同じことやっちまったことがありますが素直?に再インストールをしました。詳しい方からの回答をお待ちください。

オフライン

 

#8 2009-01-14 20:26:56

pirupiru
メンバ
登録日: 2009-01-01

Re: sudo コマンド

sumiyota様、回答ありがとうございます。
うーん、最悪の場合は再インストールですか...。
でも、こうしたトラブルもまたLinuxでしか味わえない楽しみですね。

オフライン

 

#9 2009-01-14 21:46:35

mizuno
管理者
From: Kyoto
登録日: 2007-02-28

Re: sudo コマンド

Grubメニューからリカバリモードで起動して /etc/sudoers を修正してください。

# visudo で編集していると構文エラーがあった場合警告するはずですが、geditで開いたりするとだめなのかな

オフライン

 

#10 2009-01-14 23:44:33

pirupiru
メンバ
登録日: 2009-01-01

Re: sudo コマンド

mizuno様、回答ありがとうございます。
Grubメニュー → リカバリーメニュー → root Drop to root shell prompt  → パスワード → sudo EDITOR=gedit visudo としましたが

>>>sudoers file: syntax error, line 25 <<<
sudo : parse error in etc/sudoers near line 25

となり修正できませんでした。どうしたらよいでしょうか...。

オフライン

 

#11 2009-01-14 23:54:11

mizuno
管理者
From: Kyoto
登録日: 2007-02-28

Re: sudo コマンド

sudo EDITOR=gedit visudo ではなく
visudo を実行してください。
おそらく nano (か vi)で sudoers が開かれるはずですので、間違っている部分を修正してください。

オフライン

 

#12 2009-01-15 00:12:45

pirupiru
メンバ
登録日: 2009-01-01

Re: sudo コマンド

mizuno様、回答ありがとうございます。本当に大変助かりました。無事成功しました。PASSWDをPASSWARDと入力していました。これですこしlinuxの知識が増えたことをうれしく思います。

オフライン

 

Board footer

Powered by FluxBB