chmodは、ファイルやディレクトリのアクセス権などのモードを変更します。
コマンドは次のように書くことができます。
$ chmod [options] mode file1
権限の変更
chmodフォルダには、次のように4つのファイルがあります。一番左の9つの文字 rwxr-xr-x
は、ファイルのアクセス権(モード)を意味します。
ls -l
を使用すると、ファイルのアクセス権の状態を見ることができます。
chmod$ ls -l
total 16
-rwxrwxrwx 1 js js 6 3월 10 16:02 file1.txt
-rw-r--r-- 1 js js 6 3월 10 16:02 file2.txt
-rw-r--r-- 1 js js 6 3월 10 16:02 file3.txt
-rw-r--r-- 1 js js 6 3월 10 16:02 file4.txt
一般的に、ユーザーがファイルにアクセスする際User、Group、Otherの権限が必要アクセスが可能です。
この権限を示すことが rwxrwxrwx
のような状態です。
上記の ls -l
出力では、rwxrwxrwx
は権限の状態を示します。
前から文字の3つの rwx
はOwnerの権限、次いで文字の3つのrwx
はGroupの権限は、その次の文字の3つ rwx
はOtherの権限です。
そして権限の r
はread、w
はwrite、 x
はexecute
(実行可能)を意味します。
ファイルに各モードごとに権限を別の設定にみましょう。
chmod$ chmod u=rwx,g=rx,o=r file1.txt
上記のコマンドで user
にrwx(read、write、execute)、
group
にrx(read、write)、other
にr(read)アクセス権を file1.txt
に付与しました。
ls -l
に検証することで設定したとおり変更されたことを見ることができます。
chmod$ ls -l
total 16
-rwxr-xr-- 1 js js 6 3월 10 16:02 file1.txt
上記のコマンド $ chmod u=rwx,g=rx,o=r file1.txt
は次のように簡潔に使用することもできます。
chmod$ chmod 754 file1.txt
chmod$ ls -l
total 16
-rwxr-xr-- 1 js js 6 3월 10 16:02 file1.txt
754
はu=rwx,g=rx,o=r
を意味します。
7はuser、5はgroup、4はotherの権限です。
そして、各数値は、次の権限の組み合わせ(合計)です。
- 4はreadをの
- 2はwriteをの
- 1は、executeをの
- 0は何の権限もないことをの
だから7はread、write、execute(4 + 2 + 1)権限の組み合わせであり、6はread、write(4 + 2 + 0)の権限の組み合わせです。
サブフォルダ完全な権限の変更(Recursive)
フォルダ全体のアクセス権を変更して与えるに -R
オプションを使用します。 Recursiveにフォルダの下のサブフォルダにも適用されます。
$ chmod -R 755 chmod/
確認してみるのフォルダ内のすべてのファイルのアクセス権が 755
に変更されたことを確認することができます。
$ ls -l chmod/
total 16
-rwxr-xr-x 1 js js 6 3월 10 16:02 file1.txt
-rwxr-xr-x 1 js js 6 3월 10 16:02 file2.txt
-rwxr-xr-x 1 js js 6 3월 10 16:02 file3.txt
-rwxr-xr-x 1 js js 6 3월 10 16:02 file4.txt
特定の権限の追加/削除
Userのexecute権限を除いてたいだけ u-x
を使用します。
他の権限は、触れることなくuserのx権限のみを抜くには( - )を意味します。
$ ls -l
-rwxr-xr-x 1 js js 6 3월 10 16:02 file1.txt
$ chmod u-x file1.txt
$ ls -l
-rw-r-xr-x 1 js js 6 3월 10 16:02 file1.txt
逆に権限を付与するには、 u+x
を入力します。他の権限は触れることなくuserのx権限のみを加えるには(+)を意味します。
$ ls -l
-rw-r-xr-x 1 js js 6 3월 10 16:02 file1.txt
$ chmod u+x file1.txt
$ ls -l
-rwxr-xr-x 1 js js 6 3월 10 16:02 file1.txt
group、otherもすべて同様に使用ください。そして、上では一つの権限のみを除去、追加したが、次のように複数の権限を抜いたり加えることができます。
たとえば、groupでreadとwriteを削除するには、 g-rw
を使用します。
$ ls -l
-rwxr-xr-x 1 js js 6 3월 10 16:02 file1.txt
$ chmod g-rx file1.txt
$ ls -l
-rwx---r-x 1 js js 6 3월 10 16:02 file1.txt
すべてのタイプの権限を付与する
すべてのUser、Group、Otherの権限を一度に変更するには、 a=
を使用します。
a=rwx
は、すべてのグループにrwx権限を設定するようにという意味です。
$ chmod a=rwx file1.txt
$ ls -l
-rwxrwxrwx 1 js js 6 3월 10 16:02 file1.txt
Related Posts
- Linux - Hardware情報を示すコマンド
- Virtualenvインストールとセッティングする方法(Ubuntu)
- Linux - ファイル更新日時 確認
- Vi/Vimから1行または複数行を削除する方法
- UbuntuでGoogleドライブを使用する(ローカルフォルダにマウント)
- Ubuntuで利用可能なテキストエディタの紹介
- Ubuntu(Linux) - RAM(メモリ)サイズの確認
- Ubuntu(Linux)でMicrosoft Edgeブラウザをインストールする方法
- Ubuntu(Linux)からVisual Studio Codeをインストールする
- UbuntuでRight ALTをハンヨンキーに変換する
- Ubuntu - Python 3.9のインストール方法
- Proxy環境でpipを使用する方法
- Linux - IPアドレスを確認
- Linux - MAC Addressを確認する
- Linux - findコマンド
- Ubuntu 20.04 - SSHのインストールと接続方法
- apt remove、purge、autoremoveコマンドの違い
- Ubuntu 20.04 - OpenJDK 11のインストール、削除、
- Ubuntu 20.04 - VLC Playerのインストール
- Ubuntu - kernel更新する方法(manually)
- Bashシェルスクリプトファイルの絶対パスを取得
- Ubuntu18.04のネットワークイーサネットの名前を変更する方法(enp?をeth0に変更)
- Linux - chmodコマンドを使用する方法
- Linuxの - スィベン(Shebang)は何ですか?
- Linuxファイル圧縮コマンドまとめ
- UbuntuのデスクトップにShortcutアイコンを作成する方法
- UbuntuでPythonのバージョンを変更する方法