v3 | v4 | |
---|---|---|
7 | 7 | root(ルート) は、一般ユーザとは異なり、システムの管理などのために、ほぼ全ての操作を行う権限を持った特別なユーザです。 |
8 | 8 | |
9 | rootは、rootユーザ、スーパーユーザ、管理者などとも呼ばれます。 | |
10 | ||
11 | 以下で説明する sudo や gksu などを利用して root 権限で特定のコマンドを実行することを、「root権限で○○を実行」、「スーパーユーザ権限で○○を実行」、「管理者権限で○○を実行」のように表現します。 | |
12 | ||
13 | {{{ | |
14 | #!Admonition type=warning | |
15 | === su による root ユーザーへの昇格は非推奨となりました === | |
16 | ||
9 | 17 | アプリケーションのインストールおよびアンインストールや、ユーザーの登録および抹消や、(ハードディスクやUSBメモリなどの)ファイルシステムのマウントおよびアンマウントや、ファイルのアクセス制限を無視した読み書き作成削除が出来たりなど様々なことが出来るため、何か誤操作を行うとシステムを破壊したり、重要なデータを削除するということも起こります。 |
10 | 18 | |
11 | 本当に必要な時だけrootで作業し、それ以外の時は一般ユーザで作業するようにしてください。 | |
12 | ||
13 | rootは、rootユーザ、スーパーユーザ、管理者などとも呼ばれます。 | |
14 | ||
15 | su - コマンド等で root になったうえで、あるいは root で login したうえで何か作業を行うことを、「root権限で○○を実行」、「スーパーユーザ権限で○○を実行」、「管理者権限で○○を実行」のように表現します。 | |
16 | ||
17 | sudo や gksu などのような、root権限で特定のコマンドを実行するためのプログラムもあります。 | |
18 | ||
19 | == rootユーザになるには == | |
20 | ||
21 | コンソールや、gnome-terminal(GNOME)、Konsole(KDE)、Terminal(XFce)、xterm(WindowMaker)、kterm、mlterm などの端末から、コマンドで su - root と入力し root のパスワードを入力します。 | |
22 | ||
23 | su コマンドは指定したユーザに切り替えるコマンドですが、ユーザ名を省略すると root になるので su - という形で利用できます。 | |
24 | ||
25 | {{{ | |
26 | $ su - | |
27 | パスワード(P): | |
28 | }}} | |
29 | ||
30 | Konsole では上部メニューの セッション → 新規シェル(root) を選択することでもできます。 | |
31 | ||
32 | rootユーザになり、コマンド入力によって作業を行ったりアプリケーションを起動することなどができます。 | |
33 | ||
34 | コマンドで exit もしくは logout と入力すると、su - を実行する前のユーザに戻ります。 | |
35 | ||
36 | {{{ | |
37 | # exit | |
38 | }}} | |
39 | ||
40 | また、gnome-terminal などのアプリケーションのタイトルバーのボタンをクリックすることでウィンドウを閉じて終了してもかまいません。 | |
41 | ||
42 | su コマンドついては、su - とする場合と su とした場合では動作が異なります。 jman su で日本語の man page を読むことが出来るので、-, -l, --login というオプションの部分について参照してください。 | |
43 | ||
44 | オプションの有無による違いを理解することが大切ですが、-オプションをつけることによるトラブルよりも -オプションをつけないことによるトラブルのほうが多いように思うので、「su コマンドを使うときには - というオプションも使う」と覚えてしまってもいいかもしれません。 | |
45 | ||
46 | LANとセキュリティ のセキュリティのところに PAMを使ったセキュリティ の方法が記述されています。参照しておいてください。 | |
47 | ||
48 | == root権限でアプリケーションを起動するには == | |
49 | ||
50 | コマンドやアプリケーションを root権限で起動するには、セクション IV.15.2 - rootユーザになるにはのようにgnome-terminalなどの端末で su -コマンドで rootユーザになったうえで、コマンドを入力してアプリケーションを起動します。 | |
51 | ||
52 | また、suコマンドの -c というオプションを利用することで実行するコマンドを指定することもできます。 | |
53 | ||
54 | {{{ | |
55 | $ su - root -c "apt-get update" | |
56 | パスワード(P): | |
57 | }}} | |
58 | ||
59 | この場合も root というユーザー名を省略して次のようにすることができます。 | |
60 | ||
61 | {{{ | |
62 | $ su - -c "apt-get update" | |
63 | }}} | |
64 | ||
65 | -c オプションでコマンドを指定して実行した場合は、そのコマンドが終了するともとの一般ユーザーに戻ります。 | |
66 | ||
67 | {{{ | |
68 | #!Admonition | |
69 | synaptic などのように、root権限を必要とするアプリケーションは、コマンドで起動したり、GNOME Panel などのメニューから選択して起動するだけで、rootのパスワードの入力を求めるウィンドウが開くものがあります。 | |
70 | }}} | |
71 | ||
72 | また、次のようにしてアプリケーションを起動することもできます。 | |
73 | ||
74 | GNOME Panel のメニューの アプリケーション→システムツール→Run as different user (GKsu) を選択します。 | |
75 | ||
76 | {{{ | |
77 | $ gksuexec | |
78 | }}} | |
79 | のようにコマンドを入力しても起動できます。 | |
80 | ||
81 | プログラムの実行というウィンドウが開くので 実行するコマンド と 実行するユーザ名 を入力します。 | |
82 | ||
83 | OK をクリックすると、実行するユーザ名で指定したユーザのパスワードの入力を求められるので、パスワードを入力すると、そのユーザの権限でアプリケーションを起動することができます。 | |
84 | ||
85 | 実行するユーザ名の部分に root と入力することで root権限でアプリケーションを起動できます。 | |
86 | ||
87 | gksuexec を利用して gnome-terminal などのような端末を起動する場合には、高度なオプション(A) をクリックし、ユーザの変更時に使用するオプションの ログインシェル(L) にチェックをつけるとよいでしょう。 | |
88 | ||
89 | 「ログインシェル」という言葉については、jman su を参照しておいてください。 | |
19 | 本当に必要な時だけ root 権限で作業し、それ以外の時は一般ユーザ権限で作業するためにも以下で説明する sudo を利用するようにしてください。 | |
20 | }}} | |
90 | 21 | |
91 | 22 | == sudo == |
… | … | |
93 | 24 | 特定のユーザや特定のグループに所属するユーザが、スーパーユーザ権限(あるいはそれ以外の特定ユーザの権限)でいくつかのコマンド操作を行うことを許可する sudo というプログラムがあります。 |
94 | 25 | |
26 | {{{ | |
27 | #!Admonition | |
28 | === Vine Linux 6.0 からインストーラで作成した一般ユーザアカウントが標準で sudo できるようになりました === | |
29 | ||
30 | Vine Linux 6.0 から、インストーラで作成した一般ユーザアカウントは wheel グループ(管理者グループ)に所属するようになりました。 | |
31 | ||
32 | wheel グループには標準で sudo 権限が付与されます。 | |
33 | }}} | |
34 | ||
95 | 35 | sudo は、あらかじめ、userAというユーザに対してスーパーユーザ権限で実行できるコマンドの一覧を作成しておき、実行する際には、userAというユーザであるかどうかを認証するという形になります。 |
96 | 36 | |
97 | su や gksuexec などでは、root のパスワードが必要でしたが、sudo では、認められたユーザ本人であるかを確認するので、root のパスワードは不要になります。 | |
37 | {{{ | |
38 | #!Admonition type=important | |
39 | === sudo を実行したユーザーのパスワードで認証します === | |
40 | ||
41 | su や gksuexec などでは、root のパスワードが必要ですが、sudo では認められたユーザ本人であるかを確認するので、root のパスワードは不要です。 | |
42 | }}} | |
98 | 43 | |
99 | 44 | また、コマンドを制限できるので、誤操作の危険性を減らすことができます。 |
… | … | |
105 | 50 | root権限で visudo コマンドを実行し、ユーザ名、ホスト名(現在利用しているホストの名前は hostname コマンドで確認出来ます)、許可するコマンドなどを設定します。 |
106 | 51 | |
107 | visudo コマンドについては、 |
|
52 | visudo コマンドについては、man visudo で、また、書式については、man sudoers で確認してください。 | |
108 | 53 | |
109 | 54 | visudo コマンドを実行すると、vi というエディタが設定ファイル(/etc/sudoers)を開いた状態で起動します。 |
… | … | |
122 | 67 | }}} |
123 | 68 | |
124 | パスワードを用いた認証を省略するように設定することもできます。 |
|
69 | パスワードを用いた認証を省略するように設定することもできます。man sudoers で "NOPASSWD と PASSWD" の部分などを読んでください。 | |
125 | 70 | |
126 | 71 | {{{ |
… | … | |
243 | 188 | |
244 | 189 | root のパスワードではなく、userA 自身のパスワードを入力します。 |
190 | ||
191 | {{{ | |
192 | #!Admonition | |
193 | synaptic などのように、root権限を必要とするアプリケーションは、コマンドで起動したり、GNOME Panel などのメニューから選択して起動するだけで、rootのパスワードの入力を求めるウィンドウが開くものがあります。 | |
194 | ||
195 | また、次のようにしてアプリケーションを起動することもできます。 | |
196 | ||
197 | GNOME Panel のメニューの アプリケーション→システムツール→Run as different user (GKsu) を選択します。 | |
198 | ||
199 | {{{ | |
200 | $ gksuexec | |
201 | }}} | |
202 | のようにコマンドを入力しても起動できます。 | |
203 | ||
204 | プログラムの実行というウィンドウが開くので 実行するコマンド と 実行するユーザ名 を入力します。 | |
205 | ||
206 | OK をクリックすると、実行するユーザ名で指定したユーザのパスワードの入力を求められるので、パスワードを入力すると、そのユーザの権限でアプリケーションを起動することができます。 | |
207 | ||
208 | 実行するユーザ名の部分に root と入力することで root権限でアプリケーションを起動できます。 | |
209 | }}} |