
No.4ベストアンサー
- 回答日時:
sudoコマンドは、1980年代には開発されていた技術で
ぼくやLinusが高校生だった頃
Mark Shuttleworthが宇宙に憧れる中学生だったであろう頃から
sudoコマンドはあったということになるようです。
一般化していない理由は、たぶん業務用のUNIXサーバーやワークステーションでは
root権限を使う機会がほとんど無く、必要となる状況は
管理者がある程度のメンテナンスを行なう場合に限られるため…
su -でrootになるほうが合理的だからだと思います。
それに比べれば、パーソナルなLinuxデスクトップでは
root権限を要する機会は多いと言えます。
そういった機会に、suでrootになって処理をするなら…処理を終えたら
exitで一般ユーザーに戻る必要があります。
そそっかしい人は、うっかりroot権限のまま、次の作業を行なうなど
suコマンドの弊害といえるものはあると思います。
sudoであれば、そういったミスはおきません。
またsudoを繰り返し利用する状況でも
パスワード入力を一定時間キャッシュする機構によって使いやすくなっています。
(よく使うと言っても、数時間に渡ってroot権限が必要なことはごく稀です)
これはWindowsでよく行なわれているような
「慣れていない人が、管理者権限を常用する」という悪習を
封じるようなシステムデザインを行いながら
扱いやすいroot権限作業を実現するための合理的な仕様です。
sudoと似たようなコマンドとして、Ubuntuにはgksuが使われます。
これはコマンドラインやALT+F2から、GUIの管理ツールを呼び出す際に
root権限を以って起動するためのコマンドです。
ssh -Xで入ったPCの管理ツールを起動することもできます。
gksuを日常的に利用していれば、suよりも
sudoのほうが、考え方として扱い易く感じると思います。
(オートロックのマンションの安心感をイメージしてみましょう)
ネットでの文字による操作アドバイスにおいても
「su -でrootになってからapt-get install ...」よりも
「sudo apt-get install ...」のほうが簡潔でスマートだと思っています。
もちろん「…した後、一旦exitで一般ユーザーに戻ってから…」みたいな
まどろっこしい説明を行なう必要がありません。
;でコマンドを連続実行したりする際にも応用は広いでしょう。
No.3
- 回答日時:
伝統的なUnixでは、su ないし su - でroot権限になってから各種コマンドを実行するのが普通でした。
ところがroot権限のシェルでいろいろコマンドを打つと間違えたときの被害が大きいので、通常は一般ユーザ権限で作業して、どうしてもroot権限でないと実行出来ない場合だけそのコマンドをsudoを前置して実行するような方法が考えられました。例えば、ソースからプログラムをインストールする場合は、
$ tar xvfz program.tar.gz
$ cd program
$ ./configure
$ make
$ make test
$ sudo make install
のように、コンパイルは一般ユーザで行ってインストールだけsudoを使います。
どのユーザがどのコマンドをsudoで実行出来るかは/etc/sudoersに書いてあります。
root権限のシェルで作業したいときは sudo -s で出来ますが、本来はそうせずに、必要最小限のコマンドだけをsudoで実行すべきです。
あと、sudo su と su の違いとしては、パスワードで保護されている場合、sudo su で入れるのは今ログインしている一般ユーザのパスワード、su はrootのパスワードという違いがあります。/etc/sudoers の設定でsudoする際にパスワード不要にも出来ます。
No.2
- 回答日時:
Ubuntuは、本来のUNIXから外れた特殊な仕様だから、確かに使い勝手はそう感じられるのは当然です。
本来は、
su
su -
ですむところをsudoとかの紛らわしいコマンドでUNIXの基本を打ち消しているので、使いづらいです。
UBUNTUだけでしよう。
やはり、最初は、Vine Linux等他のLinuxを経験しないと、戸惑います。
Vine Linuxは、RPMのパッケージ管理もしっかりしているし、最初は、Vine Linuxからはじめるのが良いと思いますけど。
人気の方が先になり、リリーズ製品テストも当方は信用していないので、リリーズすぐはインストールを控えています。
年明けくらいに、Ubuntu10.10をインストールするかもしれません。
No.1
- 回答日時:
Ubuntuが例外です。
通常、Linuxを含めたUnix系OSでroot権限になるために使うのがsuコマンドなのですが
Ubuntuではセキュリティ上の理由で一般ユーザー権限ではsuコマンド単独では動作しないように制限がかかっています。
(Ubuntuでもroot権限であればsuコマンドは実行可能です)
一方sudoコマンドは、その後に書いたコマンドをroot権限で実行するコマンドです。
この方法だと、sudoコマンドの後に書いたコマンドしかroot権限でしか実行できないもので
Ubuntuでは一般ユーザー権限で呼び出せるのがこちらのみに制限されています。
そのため、Ubuntuで継続的にroot権限でコマンド実行したい場合に使うのが
sudo su
という方法です。
一般ユーザー権限で呼び出せるsudoコマンドで、suコマンドをroot権限で実行するため
継続的にroot権限を得ることができます。
---
便宜上省きましたが、suコマンドは
root権限(スーパーユーザー)に限らず自分以外の別のユーザーの権限に切り替えるためのコマンドです。
同様にsudoコマンドは
root権限(スーパーユーザー)に限らず自分以外の別のユーザーの権限で、sudoの後に書いたコマンドを実行するためのコマンドです。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- UNIX・Linux linuxサーバーのキャッシュをクリアするコマンドを実行したい。 5 2023/01/24 14:52
- UNIX・Linux UbuntuにROSをインストールしたい 1 2023/03/06 12:28
- UNIX・Linux e4defragコマンドでデフラグ 1 2022/05/21 11:57
- PHP 書籍よりも より良い htmlspecialchars の変更を 1 2022/04/18 02:28
- PHP ここでの ②if($su_d<>"")の比較演算子 を使う理由は 1 2022/03/26 02:33
- PHP isset — 変数が宣言されていること、そして null とは異なることを検査 1 2022/03/27 17:34
- UNIX・Linux ubuntuで デイスク/deb/loopというドライブが出るがこれは何? 4 2023/06/04 16:52
- UNIX・Linux shellscript内のコマンドを、sudo(toor)として実行 2 2022/09/23 15:05
- その他(ゲーム) このパズルの解法、分かる方いますか? 2 2022/06/24 23:22
- その他(趣味・アウトドア・車) 戦闘機に詳しい方いたら教えてください。 領空侵犯機に対するスクランブル等で相手機の背後について警告し 2 2022/12/17 14:23
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
<自分が所有者のファイルの所...
-
OS X(10.2)なのにアプリケ−シ...
-
リモートで使うとuseraddが使え...
-
chownで所有権の変更ってrootし...
-
ネットに接続できません。
-
Linuxでsudo su - って何のコマ...
-
Dirコマンドでフォルダ内ファイ...
-
SONYの音楽ソフト「x-アプリ」...
-
Linux環境 grepで改行コード(CR...
-
エクセルの表にヘンな枠が・・・
-
tarコマンドの圧縮
-
net use /d の強制実行
-
batである文字列内に特定の文字...
-
Linuxコマンドは何の言語で書か...
-
IPアドレスだとPingが通るのに...
-
shでディレクトリを表示する方法
-
AIXでの文字コード、改行コード...
-
python IDLEで訂正、削除のやり...
-
"su -"でスーパーユーザになっ...
-
UNIX コマンドにおける # や円...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
<自分が所有者のファイルの所...
-
TeraTermで操作する際の設定に...
-
vi使用後、「vimiinfoが保存...
-
リモートで使うとuseraddが使え...
-
CUIでの、$(ドルマーク)の使...
-
[CentOS7] ユーザー(root,管理...
-
chownで所有権の変更ってrootし...
-
Ubuntu・・・ユーザ名を変更したい
-
ユーザをwheelグループに追加す...
-
scpコマンドの-pオプションにつ...
-
linux(redhat9)の文字化けを直...
-
なぜsudo出来ないのか
-
Linuxメールサーバのメールアド...
-
現在ログインしているユーザー...
-
sudo: npm: コマンドが見つかり...
-
suするとSYS_PRIVATE levelと表...
-
ubuntu アップグレードしてシ...
-
一般ユーザーでログインできな...
-
suコマンドが。。。
-
vipw 起動中でも passwd コマン...
おすすめ情報