権限の課題 入門
以下は あなた(todasan)でログインしたまま 実行します。sudo が使える前提です。
1) デモ用ファイル・ディレクトリを作る
作業フォルダ
mkdir -p ~/demo_permissions
cd ~/demo_permissions
中身を作る
echo “これは読み書き可ファイル” > open.txt
echo “これは触れないファイル” > locked.txt
mkdir locked_dir
echo “中身” > locked_dir/inside.txt
2) locked 側を root 所有にして権限を絞る(これであなたでも触れなくなる)
所有者を root に変更(sudo が必要)
sudo chown root:root locked.txt
sudo chown -R root:root locked_dir
権限を 600 や 700 にする(所有者以外アクセス不可)
sudo chmod 600 locked.txt
sudo chmod 700 locked_dir
3) 戸田さんに見せる(実行例)
open.txt(自分のファイル)は普通に読める/編集できる:
cat open.txt # 見える
echo “追記” >> open.txt # 書ける
locked.txt は読むとエラーになる(所有者が root で読み権限がないため):
cat locked.txt # Permission denied(触れない)
ls -l locked.txt # 所有者 root, mode 600 と表示
locked_dir に入ろうとすると入れない:
cd locked_dir # Permission denied(入れない)
ls locked_dir # error opening dir
ここまでで「同じホーム内でも、所有者と権限次第で『触れない体験』ができる」ことを直感的に理解できます。
他ユーザアカウントを出さずに“アクセスできる/できない”を見せられます。
4) 管理者権限での復旧(どうすれば触れるかのデモ)
sudo を使えば root として扱えるのでアクセスできることも見せられます(権限の差を理解させる):
sudo cat locked.txt
sudo ls -l locked_dir
sudo cat locked_dir/inside.txt
5) 実験が終わったら必ず元に戻す(重要)
元の状態に戻す(自分を所有者に戻す)
sudo chown -R $(whoami):$(id -gn) ~/demo_permissions
chmod -R u+rwX,go-rwx ~/demo_permissions
あるいは完全に消してしまう
rm -rf ~/demo_permissions
なぜこれが良いか(教育効果)
「他のユーザ」や「グループ」の概念を説明せずとも、『触れる/触れない』の差だけで権限の意味がわかる。
sudo(管理者)で解決できることを見せれば、なぜ普通のユーザが制限されるかが体感しやすい。
実際のサーバ運用での危険(777にする等)を持ち出さずに、まずは基本挙動の理解に集中できる。
