[ubuntu-jp:3340] Re: root(スーパー)ユーザーについて
Mitsuru Ogino
ogino @ verama.net
2011年 1月 26日 (水) 14:23:45 UTC
荻野です。
Dezawa said the following on 11/01/25 21:45:
> ところで、これですと
>> $ sudo bash
>
> su - と実質同じですね。
いえ、sudo bash は su - (sudo su -, sudo -i)とは違います。しつこくて済み
ません。
ogino @ black:~$ sudo bash
[sudo] password for ogino:
root @ black:~# echo $HOME ← 環境変数が sudo を実行した一般ユーザのそれ
/home/ogino
ogino @ black:~$ su -
Password:
root @ black:~# echo $HOME ← 環境変数が root でログインした状態に
/root
ogino @ black:~$ sudo -i
root @ black:~# echo $HOME ← 環境変数が root でログインした状態に
/root
昔、Solaris の FTP が /bin/ls を実行していたころ、LANG=C の状態で inetd
を起動しなければいけないとこと su してから起動してしまう失敗が繰り返され
たおかげで、su や sudo bash は su - の代わりにならないというトラウマ?が
形成されました。
一般ユーザから su してから inetd を起動すると、FTP クライアントの dir
(LIST) に対して EUC が吐かれて当時の GUI FTP クライアントではにっちも
さっちもいかないとか、MS-DOS (ShiftJIS) 環境の FTP クライアントも画面が
おかしくなったりしていました。
なお確認しておりませんが、root にパスワードを設定し、最初から root でロ
グインした場合と、su - などでは環境変数などは一緒でも ulimit -n などの値
が異なる可能性があります。またログインを経ていない /etc/init.d 以下のス
クリプトが OS 起動時に起動されるときも、PAM 関連での設定がないなど su -
とは異なる箇所があると思います。普通は su -, sudo -i で十分ですが、時々
落とし穴になるようです。
--
荻野 充 (おぎの みつる) ... 「萩(はぎ)」にあらず
Key fingerprint = 7F26 5414 1805 F31B 1617 10B7 C117 07AE 1691 9BD1
ubuntu-jp メーリングリストの案内