【Linuxコマンド】chmodでパーミッションを設定する方法

Linuxにはファイルのパーミッションを設定できる「chmod」コマンドがあります。ここでは「chmod」コマンドについて以下の内容で解説していきます。

chmod_image

この記事では「chmod」コマンドについてわかりやすく解説していますので、ぜひ使い方を覚えておきましょう!

chmodコマンドとは

shutterstock_109676912

「chmod」コマンドはLinuxでファイルのパーミッションを設定するときに使用するコマンドです。パーミッションとは実行権限のことで、ファイルによって「所有者」「グループ」「その他のユーザ」のそれぞれ権限が割り振られています。

たとえば、所有者やグループによってファイルやプログラムのアクセス権限を指定したい場合に、「chmod」コマンドを使用することで、それぞれの権限を細かく指定することが可能になります。

「chmod」コマンドは以下のように記述します。

$ chmod パーミッション ファイル名

次項ではそんな「chmod」コマンドについて詳しく解説していきます。

chmodコマンドの使い方

ここではchmodコマンドの使い方をパターン別に紹介します。

パーミッションを確認する

まずはパーミッションを確認する方法について解説します。ファイルのパーミッションを確認するには「ls」コマンドに「-l」オプションを付けると、ファイルの詳細情報まで確認できます。

$ ls -l test.txt

実行結果:
ch_image01

lsで表示された左側の文字列「rw-rw-r--」がパーミッション情報になります。表示されたパーミッションは左から「所有者:rw-」「グループ:rw-」「その他のユーザ:r--」となります。それぞれのパーミッションの有効無効は0~7の数値で表します。

以下がパーミッションの対応表になります。

アクセス権数値説明
---0読み込み書き込み不可
--x1実行のみ
-w-2書き込みのみ
-wx3書き込み実行のみ
r--4読み込みのみ
r-x5読み込み実行のみ
rw-6読み込み書き込みのみ
rwx7読み込み書き込み実行ができる

パーミッションを変更する

では実際にパーミッションの変更をしてみましょう。

以下では全てのパーミッションで読み込み書き込み実行を許可します。

$ chmod 777 test.txt
$ ls -l

実行結果:
ch_image02

数値の7は読み込み書き込み実行が可能です。ここでは「所有者」「グループ」「その他ユーザ」全てを7に指定しています。「chmod」コマンド実行後にlsコマンドを実行すると、実行権が「rwxrwxrwx」になっていることがわかりますね!

グループの実行権のみ読み込みのみの権限にしたい場合は「747」に指定すればOKです。

chmodコマンドのオプション

以下に「chmod」コマンドで使用する主なオプションを紹介します。

オプション説明
-fエラーメッセージを表示しない
-cコマンド実行時に変更があったときのみ結果を表示
-vコマンド実行時に詳細を表示
-Rディレクトリ内の複数のファイルも変更対象とする

-vで詳細を表示する

コマンド実行時に詳細な結果を確認したい場合は「-v」オプションを使用します。「-v」オプションを使用することで、意図したとおりにパーミッションが変更できたか確認することができます。

$ chmod -v 666 test.txt
`test.txt' のモードを 0777 (rwxrwxrwx) から 0666 (rw-rw-rw-) へ変更しました

-Rでディレクトリ内の複数ファイルを設定する

ディレクトリ内の複数ファイルのパーミッションも一括で設定したい場合は「-R」オプションを使用します。ここでは、testディレクトリ内にある複数のファイルの実行権を変更しています。

$ chmod -R 777 test
$ ls -l test/

実行結果:
ch_image03
全てのファイルのパーミッションが「777」に設定されたことがわかりますね!

Linuxについてもっと知りたい方へ

そもそもLinuxについて、

実はなんとなくしか理解していない…
Linuxを効率よく学習する方法が知りたい

といった情報を知りたい方は、以下の記事も参考にしてみてくださいね!


【完全保存版】エンジニア監修!Linuxおすすめ入門書7選
更新日 : 2020年7月30日

【完全保存版】Linux入門サイトおすすめ7選
更新日 : 2019年9月11日

まとめ

ここでは、Linuxでファイルのパーミッションを設定する「chmod」コマンドについて、

  • パーミッションの確認方法
  • chmodコマンドの使い方
  • chmodコマンドのオプションと使い方


などについて解説しました。

「chmod」コマンドはLinuxを開発で使用する上で、変更されたくないファイルに対してアクセス制限をしたり、セキュリティ面からも使用する頻度が高いコマンドです。

もし「chmod」コマンドの使い方を忘れてしまったら、この記事を参考にしてくださいね。

LINEで送る
Pocket

「プログラミング、右も左もわからない…」という方にオススメ

当プログラミングスクール「侍エンジニア塾」では、これまで6000人以上のエンジニアを輩出してきました。

その経験を通してプログラミング学習に成功する人は、「目的目標が明確でそれに合わせた学習プランがあること」「常に相談できる人がそばにいること」「自己解決能力が身につくこと」この3つが根付いている傾向を発見しました。

侍エンジニア塾は上記3つの成功ポイントを満たすようなサービス設計に磨きをかけております。

cta_under_bnr

「自分のスタイルや目的に合わせて学習を進めたいな」とお考えの方は、ぜひチェックしてみてください。

書いた人

侍ブログ編集部

侍ブログ編集部

侍エンジニア塾は「人生を変えるプログラミング学習」をコンセンプトに、過去多くのフリーランスエンジニアを輩出したプログラミングスクールです。プログラミングに役立つ情報や有用な情報を発信していきます。
サービスページはこちら
ツイッターはこちら
フェイスブックはこちら