先ほどから、パーミッションってえ言葉がたびたび出てきますが、こりゃあ一体なんでしょう?

パーミションて言うのは、permission・・・・・・・・許可てえことですよね。何を許可するんでしょう。

ちょっと

[satou@mamochann satou]$ ls −la(リターン)

してみましょうよ。


-rw------- 1 satou satou 118 Nov 1 16:22 .Xauthority
-rw-r--r-- 1 satou satou 1593 Sep 17 11:21 .Xdefaults
-rw------- 1 satou satou 5560 Nov 1 09:13 .bash_history
-rw-r--r-- 1 satou satou 24 Sep 17 11:21 .bash_logout
-rw-r--r-- 1 satou satou 230 Sep 17 11:21 .bash_profile
-rw-r--r-- 1 satou satou 301 Sep 17 11:21 .bashrc
-rw-r--r-- 1 satou satou 2175 Oct 15 14:50 .emacs
-rw-r--r-- 1 satou satou 2175 Oct 15 14:49 .emacs~
-rw-rw-r-- 1 satou satou 11 Sep 17 12:12 .exrc
drwxr-xr-x 11 satou satou 1024 Oct 21 10:56 .gimp/

って出てきましたでしょ。赤い色のついた行に注目してほしいんですが、

上のファイルの一番左の―は、ファイルを表しているようです。(というよりも、ディレクトリではないということかな?)

一番下の最初の文字dは、ディレクトリを意味します。

次からアルファベットや、−が、9個並んでいますが、これがパーミッションをあらわしています。

最初の3文字はオーナーに対するパーミッションです。

次の3つはグループに対するパーミションです。

最後の3つが、それ以外のユーザーに対するパーミションです。

また、それぞれ(オーナー・グループ・ユーザー)の部分にかかれている

r・・・・・読み込みを許可します。

w・・・・書き込みを許可します。

x・・・・・実行を許可します。

という意味です。

また、パーミッションの後ろに数字がありますが、これはなかに含まれるファイルの数です。その後ろのsatouは、ファイルやディレクトリのオーナー

そのまた後ろのsatouは、グループの名前です。

このパーミションは変えることができるんだけれども、(chmodってコマンドを使います。もちろん、ログインした人の権限の範囲内でしか変えることはできませんが)その変更の仕方には数種類のやり方があるみたいです。

-rw-r--r-- 1 satou satou 24 Sep 17 11:21 kumagorou

ってファイルがあった時に、

全て(オーナー・グループ・ユーザー)に書き込み権限を与えるならば、

[satou@mamochann satou]$ chmod a+w kumagorou(リターン)

でできます。la −l(リターン

-rw-rw-rw- 1 satou satou 24 Sep 17 11:21 kumagorou

となるわけ。でも、筆者は別のやり方をします。

[satou@mamochann sato$ chmod 666 kumagorou(リターン)

です。 la −l(リターン)の結果は上と同じです。

つまり、パーミションは数字で書きかえることができるということです。

0

1

2

3

4

5

6

7

この一覧表の4より大きい数字が頭に入っていれば十分です。意味のある数字なのでじき全てが勝手に頭に入ってくるようになります。(2進数3ビットで構成されていて、再開のビットがx、真中のビットがw、最上位ビットがrという意味です。)

-rwxrwxrwx 1 satou satou 24 Sep 17 11:21 kumagorou にするならば

[satou@mamochann satou]$ chmod 777 kumagorou(リターン)

-rwxr-xr-x 1 satou satou 24 Sep 17 11:21 kumagorou にするならば

[satou@mamochann satou]$ chmod 755 kumagorou(リターン)

という要領です。

なお、それぞれ(ユーザーやグループなど)の最下位のビット(xのところ)が、sやtになっていることがあります。

suidビットがたたっている時 ユーザーのxが、sになる。

sgidビットがたっている時 ユーザーのxが、sになる。

という意味なんですが、これらは、セキュリティホールになりやすいので筆者は、使ったことはありません。デフォルトでそうなっているディレクトリやファイルはあるかもしれませんが・・・・。

stickyビットがたたっている時 その他のユーザーのxが、tになる。

という意味なんですが、これは、書きかえ可能なディレクトリ内のファイルを保護するために使われます。

ディレクトリのユーザーや、グループを変更することは可能ですが制限があります。オーナーを変更する権限をもつのは、スーパーユーザーだけだし、グループを変更する権限をもつのは、ファイルのオーナーが自分が属するグループに変更する場合か、スーパーユーザーだけです。

またあとで学習しましょう。