はじめに
Linuxの権限(パーミッション)は、ファイルやディレクトリに対するアクセス制御を管理するための非常に重要な仕組みです。
この権限により、システム上のセキュリティやアクセス管理を効率的に行うことができます。
本記事では、Linuxにおける権限の仕組みと、それに関連するコマンドについて詳しく解説します。
1. 権限の構成要素
Linuxのファイルやディレクトリには、主に以下の3つの基本的な権限が設定されています。
・読み取り(r: read)
ファイルの内容を表示でき、ディレクトリの場合は中身をリストできる権限です。
・書き込み(w: write)
ファイルを編集したり、ディレクトリ内のファイルやサブディレクトリを作成・削除できる権限です。
・実行(x: execute)
ファイルを実行できる権限です。プログラムやスクリプトなどを実行する場合に必要です。ディレクトリの場合、そのディレクトリに移動(cd
)することができます。
2. ユーザーの分類
Linuxでは、ファイルやディレクトリに対して、以下の3種類のユーザー分類が使われます。
・所有者(user)
ファイルやディレクトリを作成したユーザー(オーナー)のことです。このユーザーには最も多くの権限が付与されていることが多いです。
・グループ(group)
同じグループに所属しているユーザー全員を指します。同じプロジェクトやタスクに関連するユーザーがグループに所属していることが一般的です。
・その他のユーザー(others)
所有者やグループに該当しないすべてのユーザーのことです。
3. パーミッションの表記
パーミッションは数値や文字列で表現され、ls -l
コマンドでファイルやディレクトリの詳細な権限を確認することができます。
例えば、次のような出力が表示されます。
-rwxr-xr--
最初の「-」はファイルの種類を示しており、-
は通常のファイル、d
はディレクトリを表します。
まず、(rwx
)は所有者の権限で、読み取り、書き込み、実行が許可されていることを意味します。
次に、(r-x
)はグループの権限で、読み取りと実行が許可され、書き込みはできません。
最後の3文字(r--
)はその他のユーザーの権限で、読み取りのみが許可されています。
権限は数値(オクタル)でも表現され、chmod
コマンドで設定を変更する際によく使用されます。それぞれの権限は以下のように数値で表されます。
読み取り(r): 4
書き込み(w): 2
実行(x): 1
例えば、rwxr-xr--
は数値で 754
と表現されます。最初の 7
は所有者が「読み取り+書き込み+実行(4+2+1=7)」の権限を持つことを示します。
次の 5
はグループが「読み取り+実行(4+1=5)」、最後の 4
はその他のユーザーが「読み取り(4)」の権限を持つことを示します。
4. パーミッションの変更
ファイルやディレクトリのパーミッションは chmod
コマンドを使って変更できます。
数値で変更する例:
chmod 755 ファイル名
ここで 755
は rwxr-xr-x
のパーミッションを意味します。
文字列で変更する例:
chmod u+rwx,g+rx,o+r ファイル名
ここで、u
は所有者、g
はグループ、o
はその他のユーザーを指し、それぞれの権限を追加(+
)、削除(-
)、または設定(=
)します。
5. よく使うコマンド一覧
以下に、Linuxの権限管理に関してよく使用されるコマンドを紹介します。
ls -l
ファイルやディレクトリのパーミッション、所有者、グループなどの詳細情報を表示します。
ls -l
chmod
ファイルやディレクトリのパーミッションを変更します。数値や文字列で設定が可能です。
chmod 755 ファイル名
chown
ファイルやディレクトリの所有者やグループを変更します。
chown 新しい所有者:新しいグループ ファイル名
chgrp
ファイルやディレクトリのグループのみを変更します。
chgrp 新しいグループ名 ファイル名
まとめ
Linuxの権限(パーミッション)は、システムやファイルのセキュリティを保つための基盤となる仕組みです。
所有者、グループ、その他のユーザーごとにアクセス権限を細かく制御することで、システムの安全性を確保しつつ、必要なアクセスのみを許可することができます。
適切なコマンドを使って権限を管理することは、Linuxシステムの管理において非常に重要なスキルです。
参考文献