遅かれ早かれ、Linuxの世界では、ファイルまたはディレクトリの権限を変更する必要があります。これは、 chmodを使用して行われます。 コマンド。
この記事では、chmodコマンドの実際的な例をいくつか紹介します。また、chmod 777、chmod 755、chmod-rなどの一般的な用語についても説明します。
chmodの例を見る前に、Linuxでのファイルパーミッションの基本を学ぶことを強くお勧めします。権限を理解すれば、chmodコマンドの使用がはるかに簡単になります。

LinuxでのChmodコマンド
chmodとは何ですか? chmodは変更モードを表します。このコマンドは、アクセスモードを変更するために使用されます。
ちょっと待って!許可を変更するためのものではありませんか?実際、Unixの初期には、アクセス許可はアクセスモードと呼ばれていました。これが、この特定のコマンドがchmodと名付けられた理由です。
chmodコマンドの構文は次のとおりです。
chmod [option] mode file
chmodの使用方法を確認する前に 、そのオプションを知っておく必要があります。
- -v :処理されたすべてのファイルの診断を出力します
- -c :冗長に似ていますが、変更が加えられた場合にのみ報告します
- –reference = FILE:MODE値の代わりにFILEのモードを使用します
- – R :権限を再帰的に変更する
-vを使用することに注意してください 変更が行われた場合、または何もする必要がない場合のオプションレポート。 -Rと組み合わせた場合 オプション、 -v 多くの出力を生成できます。 –reference =FILE ターゲットファイルに設定する権限として、FILEの現在の権限モードを使用できます。このオプションには、(-)ではなく(–)の二重ダッシュプレフィックスが必要であることに注意してください。
Chmodコマンドの例
ファイルに設定する必要のある権限がわかっている場合、chmodコマンドの使用は非常に簡単です。
たとえば、所有者にグループとパブリックのすべての権限を付与し、権限を付与しないようにする場合は、権限700を絶対モードに設定する必要があります。
chmod 700 filename
シンボリックモードでも同じことができます。
chmod u=rwx filename
数値モードまたはシンボリックモードでのLinuxファイルのアクセス許可を簡単に知る方法が必要な場合は、このchmod計算機を使用できます。適切な権限を選択するだけで、アブソリュートモードとシンボリックモードの両方の権限が表示されます。
chmodには、ディレクトリとそのサブディレクトリ内のすべてのファイルの権限を変更できる再帰オプションがあります。
chmod -R 755 directory
chmod 777:すべての人のために
chmod 777について聞いたことがあるかもしれません。このコマンドは、所有者、グループ、およびパブリックに読み取り、書き込み、および実行のアクセス許可を与えます。
モードを777に変更する場合は、次のようなコマンドを使用できます。
chmod 777 filename
chmod 777は、ファイル/ディレクトリに対する読み取り、書き込み、および実行のアクセス許可をすべてのユーザー(システム上にいるユーザー)に付与しているため、潜在的に危険であると見なされます。完全に避けるべきです。
chmod+xまたはchmoda+ x:全員の実行
おそらく chmodの最もよく使われるケースの1つです ファイルに実行ビットを与えることです。多くの場合、実行可能ファイルをダウンロードした後、使用する前にこの権限を追加する必要があります。所有者、グループ、および他のすべての人にファイルを実行する権限を与えるには:
chmod +x /path/to/file
chmod 755:すべての人の書き込み、読み取り、実行ができるのは所有者だけです
この次のコマンドは、ファイルに次の権限を設定します: rwxr-xr-x 。所有者のみがファイルへの書き込みを許可されます。所有者、グループメンバー、およびその他すべての人が読み取りと実行の権限を持ちます。
chmod 755 /path/to/file
chmod 700:所有者専用のすべて
このコマンドは、所有者に読み取り、書き込み、および実行のアクセス許可を与えます。グループなどには権限がなく、読むことすらできません。
chmod 700 /path/to/file
chmod 666:誰も実行しません
所有者、グループ、および他のすべての人にファイルの読み取りおよび書き込み許可を与えるため。
chmod -c 666 /path/to/file
chmod 644:誰でも読むことができ、所有者だけが書くことができます
次の1つでは、所有者はグループ内で読み取りと書き込みを行い、他の全員は読み取り権限を持ちます。
chmod 644 /path/to/file
chmod 600:所有者は読み書きできます。他に誰もできません
次の1つでは、所有者はグループ内で読み取りと書き込みを行うことができ、他のすべてのユーザーには権限がまったくありません。
chmod 600 /path/to/file
上記の例では、ビットマスクを使用して新しいモードを設定しています。それらは簡単に計算できます。簡単な追加が必要です。次のことを考慮してください:
- X =1
- W =2
- R =4
これで、 755、666、640をどこで入手したかを簡単に確認できます。 から。新しい権限を設定するためにビットマスクを使用する必要はありません。より人間が読める方法が利用可能です。この2番目の形式は次のようになります:
chmod OPTIONS {u,g,o}{+,-,=}{r,w,x} /path/to/file
これは複雑に見えるかもしれませんが、非常に単純です。まず、 chmodと入力します。 およびオプション あなたがしたいこと。次に、自問してみてください。誰の権限を変更するのですか?ユーザー、グループ、その他。これにより、コマンドの最初のセクションが表示されます:
chmod OPTIONS {u,g,o}
コマンドを完了するための次のステップでは、アクセス許可ビットを追加する(+)、アクセス許可を削除する(-)、またはアクセス許可を設定する(=)ことを決定します。この最後の1つは、必要に応じてアクセス許可を追加または削除して、要求に応じてアクセス許可を設定します。
chmod -v u+
次のセクションでは、適用(+)、削除(-)、または一致(=)する権限モードを決定します。 rwxの任意の組み合わせを指定できます。
chmod -v u+rw
この次の例では、所有者のファイルに読み取り/書き込み権限を適用します。詳細オプションを使用すると、 chmod が発生します アクションについて報告します。
chmod -v u+rw /path/to/file
次は、ディレクトリとそのすべてのコンテンツに対するグループの書き込み権限を再帰的に設定します。変更についてのみ報告します。
chmod -cR g+w /path/to/directory
次の例のように、許可を得て実行する複数の操作を組み合わせることができます。所有者が読み取り/書き込み/実行できることを確認し、グループの書き込み権限を追加し、他のすべてのユーザーの実行を削除します:
chmod u=rwx,g+w,o-x /path/to/file
この最後のものはrFileを使用します ファイルに権限を設定するための参照として 。完了すると、ファイルの許可 rFileの場合とまったく同じになります
chmod --reference=/path/to/rFile /path/to/file
chmodで使用できるオプションとMODEは他にもあります ここでは取り上げたり言及したりしていません。私はこれを基本的なものに保ち、うまくいけば数人の新しいLinuxユーザーを助けたかったのです。
警告の言葉!
chmodを使用 およびsudo これで、ほとんどすべてのファイルの権限を変更できるようにする必要があります。これはあなたがすべきだという意味ではありません。ホームディレクトリ外のアクセス許可は、理由により設定されています。それらを変更することが問題の適切な解決策になることはめったにありません。
これらのchmodコマンドの例がお役に立てば幸いです。質問や提案がありますか?以下にコメントを残してください。