パーミッションとは
パーミッションとは、ファイルへのアクセス権限のことです。
オーナー、グループ、その他のユーザーが、ファイルに対して、読み込み許可、書き込み許可、実行許可を持つかという情報です。
ファイルという言葉には、ディレクトリも含まれます。Linuxにおいては、ディレクトリは、ファイルの一種類という考え方をするからです。
オーナ、グループ、その他のユーザー
オーナ、グループ、その他のユーザーについての解説です。
パーミッションにおけるオーナーとは
パーミッションにおけるオーナーとは、そのファイルの所有者ユーザーのことです。「ls -l」で見れます。3列目に表示されています。
パーミッションにおけるグループとは
パーミッションにおけるグループとは、そのファイルの所有者グループに所属するユーザーのことです。「ls -l」で見れます。4列目に表示されています。
パーミッションにおけるその他のユーザーとは
パーミッションにおける、その他のユーザーとは、オーナーとグループに所属するユーザー以外のユーザーのことです。
読み込み許可、書き込み許可、実行許可
読み込み許可、書き込み許可、実行許可についての解説です。
読み込み許可とは
読み込み許可とは、ファイルを読みこむことができるということを意味します。
書き込み許可とは
読み込み許可とは、ファイルに書き込むことができるといういうことを意味します。
実行許可とは
実行許可とは、そのファイルを実行ファイルとして実行できるということを意味します。
ディレクトリの場合は特別な意味があり、実行権限がなければ、ディレクトリにアクセスすることができません。
一般的には、すべてのディレクトリに実行権限をつけます。
パーミッションの表現
パーミッションの表現について解説します。
まずパーミッションは次の9つの情報で表現されます。この順番を覚えましょう。
- オーナーの読み込み許可
- オーナーの書き込み許可
- オーナーの実行許可
- グループの読み込み許可
- グループの書き込み許可
- グループの実行許可
- その他ユーザーの読み込み許可
- その他ユーザーの書き込み許可
- その他ユーザーの実行許可
パーミッションの文字列表現
パーミッションが文字列で表現される場合です。lsコマンドで見ると、文字列で表現されています。
drwxr-xr-x 7 admins admins 68 Apr 20 13:13 dir1 -rwxrwxr-x 1 admins admins 724 May 21 13:56 file1
一番左の「d」「-」となっている部分は、取り除いて考えます。
rwxr-xr-x
これは9文字ありますが、上で解説した9つの情報にそのまま対応しています。
rは読み込み許可、wは書き込み許可、xが実行許可です。
パーミッションの8進数表現
パーミッションの8進数表現です。chmodコマンドでは、8進数を使ってパーミッションを設定するのに利用します。
# 8進数 644 755 600
これは、2進数に直して考えます。
4は「4 + 0 + 0」です。ですので二進数なら「100」です。読み込み許可がありです。
5は「4 + 0 + 1」です。ですので二進数なら「101」です。読み込み許可と、実行許可がありです。
6は「4 + 2 + 0」です。ですので二進数なら「110」です。読み込み許可と、書き込み許可がありです。
7は「4 + 2 + 1」です。ですので二進数なら「111」です。読み込み許可と、書き込み許可と、実行許可がありです。
0は「0 + 0 + 0」です。ですので二進数なら「000」です。権限はありません。
これが9つの情報に対応します。1が立っている場所は、許可があります。
# 2進数 110 100 100 111 101 101 110 000 000
わかりやすいようにオーナーの権限、グループの権限、その他ユーザーの権限の区切りに空白を入れています。