ファイルのアクセス権を変更する必要がある場合、主に使用するツールはchmod(変更モード)コマンドです。Linux でパーミッションを変更する方法を理解することは、すべてのユーザーにとって基本的なスキルです。chmodコマンドには、このタスクのために主に 2 つの方法があります。シンボリックモードと数値モードです。
シンボリックモードの使用
シンボリックモードは、ユーザーとパーミッションを文字で表すため、より読みやすいとされることがよくあります。まず、変更したいパーミッションセット(ユーザー、グループ、その他)を指定し、次に+を使用してパーミッションを追加するか、-を使用して削除します。
u(ユーザー/所有者)g(グループ)o(その他)a(すべて:ユーザー、グループ、その他)
いくつかの例で、Linux でファイルパーミッションを変更する方法を見てみましょう。
ファイルに対してユーザーの実行権限を追加するには、次のように使用します。
chmod u+x myfile
このコマンドは、myfileに対してユーザー(u)の実行(x)パーミッションを追加(+)します。
パーミッションを削除するには、-演算子を使用します。たとえば、グループの書き込み権限を削除するには、次のようにします。
chmod g-w myfile
複数のパーミッションを一度に変更することもできます。次のコマンドは、ユーザーとグループの両方に書き込み権限を追加します。
chmod ug+w myfile
数値(八進数)モードの使用
Linux のパーミッション変更を提供するもう一つの強力な方法は、数値モード、つまり八進数モードを使用することです。この方法では、3 桁の数字を使用して、ユーザー、グループ、その他のすべてのパーミッションを同時に設定できます。
パーミッションは次の値で表されます。
4: 読み取り (r)2: 書き込み (w)1: 実行 (x)
パーミッションセットを設定するには、これらの数値を合計します。たとえば、読み取り、書き込み、実行のパーミッションを付与するには、4 + 2 + 1 = 7を使用します。
一般的な例を見てみましょう。
chmod 755 myfile
このlinux change permissionコマンドはどのように機能するのでしょうか?数字755を分解してみましょう。
- 7 (ユーザー):
4 + 2 + 1-> ユーザーは読み取り、書き込み、実行のパーミッション(rwx)を取得します。 - 5 (グループ):
4 + 0 + 1-> グループは読み取りと実行のパーミッション(r-x)を取得します。 - 5 (その他):
4 + 0 + 1-> その他のすべてのユーザーは読み取りと実行のパーミッション(r-x)を取得します。
セキュリティに関する考慮事項
chmodは不可欠ですが、注意深く使用することが重要です。パーミッションの変更がシステム管理に与える影響を理解せずに変更すると、機密ファイルが不正な変更や閲覧にさらされる可能性があります。たとえば、777パーミッションを再帰的に設定する(chmod -R 777 /some/directory)のは一般的ですが危険な慣行であり、すべての人に完全な読み取り、書き込み、実行アクセスを与えてしまいます。常に最小権限の原則を適用し、厳密に必要なパーミッションのみを付与してください。