SET 0225分
ユーザーとアクセス権
ファイルを読んだり変更したりできる利用者を、所有者、グループ、アクセス権から確認します。
このレッスンのメニュー
Linuxは複数の人やプログラムが一台を使うことを想定し、「誰が操作しているか」をユーザーで区別します。 複数のユーザーをまとめる仕組みがグループです。
操作しているユーザーを確認する
whoamiは現在のユーザー名を表示します。
idは、そのユーザーが所属するグループも表示します。
whoami
id
Linuxは内部で、ユーザーをユーザーID(UID)、グループをグループID(GID)という数字で識別します。
ファイルの所有者とアクセス権を読む
ファイルには、所有するユーザー、所有するグループ、操作を許す範囲が記録されています。
ls -lで確認できます。
ls -l /etc/hosts
-rw-r----- 1 app operators 842 Aug 21 10:00 app.conf
先頭の-はファイルの種類です。
続く九文字がアクセス権で、三文字ずつ所有者、グループ、その他のユーザーに対応します。
| 文字 | 許可する操作 |
|---|---|
r | 読む |
w | 書き換える |
x | プログラムとして実行する |
- | その操作を許可しない |
例のrw-r-----では、所有者は読み書き、グループは読み取り、その他のユーザーは操作できません。
ディレクトリのxは、その中にある名前へ到達できることを表します。
rootの権限でコマンドを実行する
rootは、Linuxのほぼすべてを変更できる管理者ユーザーです。
sudoは、指定したコマンドを別のユーザーとして実行するプログラムです。
よく使うsudo コマンドという形では、許可されたユーザーがrootの権限でそのコマンドを実行します。
rootの権限で動くプログラムは、多くのファイルや設定を変更できます。
sudoを使う前に、実行するプログラム、対象のファイル、起きる変更を確認します。
自分のファイルのアクセス権を変える
touch /tmp/awamori-permission.txt
ls -l /tmp/awamori-permission.txt
chmod 640 /tmp/awamori-permission.txt
ls -l /tmp/awamori-permission.txt
chmod 640は、所有者へ読み書き、グループへ読み取りを許可し、その他のユーザーの操作を許可しない設定です。
一回目と二回目のls -lで、先頭のアクセス権がどう変わったかを比べます。
このレッスンは完了
このページで扱った流れを確認したら、次の内容へ進みます。