クリーム色の背景、色付き表示、高コントラスト、大きな文字のほうが読みやすいですか?配色と文字を選ぶと、すべてのページに一度で反映されます。

無料レッスン

ファイルの権限を設定する

このレッスンのあとで: ファイルの権限を読み、「rwxr-x---」のような表記を数字で表すことができる。

45分のレッスンコマンド4件Linux 管理のラボ:ユーザー、権限、cron、systemd をブラウザーで

ファイルの権限とは何か

ファイルの権限とは、そのファイルを読む、書き換える、動かす操作を、だれに許すかの決まりです。学校の共有フォルダで、先生だけが書き換えられるのも権限のおかげです。

サーバーには何人も入るので、権限を正しく決めないと、大事なファイルを消されてしまいます。

このレッスンのゴール

メモ

ファイルの権限を読み、「rwxr-x---」のような表記を数字で表すことができる。

キーワード

ことばいみれい
ユーザーコンピュータを使う人ごとの名前
グループユーザーをまとめた集まり
所有者そのファイルの持ち主のユーザー
権限ファイルに対して許された操作
r、w、x読む、書く、実行するの3つの権限
管理者どのファイルも変えられる特別なユーザーroot

学生が入力するセルは、このプレビューでは空白です。

始める前に

メモ

上のバーの Start the lab を押し、マシンが動き出すまで待ってください。このレッスンの Run は、見るだけです。ラボの課題そのものは、レッスンのあとで自分で行います。

ファイルには持ち主がいる

ファイルには、持ち主のユーザーと、持ち主のグループが決まっています。それ以外の人は「その他」と呼ばれます。

つまり権限は、「所有者」「グループ」「その他」の3つの立場に、それぞれ決まります。

自分のユーザー名を見る

コマンド
whoami

ここでは表示のみで、実行されません。無料アカウントを作成すると、実行ボタンで自分のラボのターミナルに入力できます。

共有フォルダの持ち主を見る

コマンド
stat -c '%A %U %G' /srv/projects

ここでは表示のみで、実行されません。無料アカウントを作成すると、実行ボタンで自分のラボのターミナルに入力できます。

スクリプトの権限を見る

コマンド
stat -c '%A %U' /usr/local/bin/backup.sh

ここでは表示のみで、実行されません。無料アカウントを作成すると、実行ボタンで自分のラボのターミナルに入力できます。

例: 権限の文字を読む

表示種類所有者グループその他
drwxr-xr-xフォルダrwxr-xr-x
-rwxr-xr-xファイルrwxr-xr-x
-rw-r-----ファイルrw-r-----

学生が入力するセルは、このプレビューでは空白です。

権限は数字でも書ける

r は4、w は2、x は1という数に決まっています。1つの立場の権限は、その数を足して1けたで書きます。

所有者、グループ、その他の順に3けた並べると、権限全体になります。たとえば rwx は 4+2+1 で7です。

例: rwxr-x--- を数字にする

立場文字計算数字
所有者rwx4 + 2 + 17
グループr-x4 + 0 + 15
その他---0 + 0 + 00

学生が入力するセルは、このプレビューでは空白です。

権限を数字で見る

コマンド
stat -c '%a %A' ~/README.md

ここでは表示のみで、実行されません。無料アカウントを作成すると、実行ボタンで自分のラボのターミナルに入力できます。

権限を変えるには

権限を変えるのは chmod、持ち主を変えるのは chown です。新しいユーザーを作るのは useradd で、グループに入れるのは usermod です。

どれも管理者の力が要るので、sudo を前に付けます。次の例は、読むだけの説明で、ここでは実行しません。

例: 権限を変える命令

コード: bash
# 所有者は読み書き、グループは読むだけ、その他は何もできない
sudo chmod 640 report.txt
# 持ち主のグループを devs に変える
sudo chown :devs report.txt

よくある間違い

注意

うまく動かないとき、chmod 777 にすれば解決すると考える人がよくいます。777 は、だれでも書き換えられる状態です。必要な人にだけ、必要な権限を与えてください。

さらに挑戦: フォルダの x

フォルダでは、x は「中に入れる」という意味です。r だけで x がないフォルダは、名前の一覧は見えても、中のファイルを開けません。

rw- のフォルダと r-x のフォルダでは、どちらが中のファイルを開けるでしょうか。理由も考えてください。

このラボとソースについて: Linux 管理のラボ:ユーザー、権限、cron、systemd をブラウザーで

授業で使いますか?このモジュールを学生に割り当てると、教員用ガイド、自動採点つきの課題、学生ごとのラボを使えます。