本文へスキップ
BecomeCoder

Linuxコマンドコース · 第4章 ユーザーと権限 · レッスン22

chmod ― 権限を変える

ブラウザで完結

導入

スクリプトを「実行できる」状態にするのが chmod(change mode)です。chmod +x ファイル は実務で最頻出のコマンドのひとつ。書いたシェルスクリプトを動かす直前に必ず使います。

説明

chmod +x ファイル で、実行権限(x)を付けます。付ける前と後で ls -l を見比べてみましょう。

ls -l scripts
chmod +x scripts/backup.sh
ls -l scripts

backup.sh の権限が -rw-r--r-- から -rwxr-xr-x に変わり、x が付いたのが分かります。逆に外すときは -x です。

chmod -x scripts/backup.sh

権限は**数字(8進数)**でまとめて指定することもできます。r=4, w=2, x=1 を足した値を、所有者・グループ・その他の3桁で書きます。たとえば 755 は次のように分解できます。

flowchart TD
    N["755"] --> U["7 = 所有者<br/>r+w+x = 4+2+1"]
    N --> G["5 = グループ<br/>r+x = 4+1"]
    N --> O["5 = その他<br/>r+x = 4+1"]
    U --> R["rwxr-xr-x"]
    G --> R
    O --> R

よく使う組み合わせは覚えてしまうと速いです。

chmod 644 readme.txt
chmod 755 scripts/deploy.sh
ls -l scripts
  • 644(rw-r—r—)… 一般的なファイル(所有者は読み書き、他は読みだけ)
  • 755(rwxr-xr-x)… スクリプトや実行ファイル(所有者は全部、他は読みと実行)

やってみよう

ls -l scriptschmod +x scripts/deploy.shls -l scripts の順に実行し、x が付く瞬間を観察しましょう。次に chmod 644 scripts/deploy.sh で数字指定に戻し、権限が rw-r--r-- になることを確かめてください。

演習

scripts/backup.sh に実行権限を付けて、実行できる状態にしてください。

ヒント1を見る

実行権限を足すのは +x です。chmod +x scripts/backup.sh

ヒント2を見る

ls -l scripts-rwxr-xr-x になっていれば成功です。

実際に動かしてみよう

下の端末にコマンドを打って Enter を押すと、その場で結果が返ります。本文で出てきたコマンドを実際に試しながら進めましょう(ファイルを消しても「最初からやり直す」で元に戻ります)。

Linux シェル(シミュレート)

ブラウザ内でコマンドを試せる仮想シェルを読み込みます(本物のLinuxカーネルではなく学習用の再現です)。
スクロールして表示された時点でも自動で読み込まれます。