105.2基礎
script.shの既存権限を保ったまま、所有者に実行権限を追加する。
適切なコマンドはどれか。
× 不正解
chmodの記号形式u+xは所有者へ実行権限だけを追加する。既存の読み書き権限やグループ・その他の権限は変えない。
詳細解説
誤り
chmod 644 script.sh読み書き権限を設定するが、実行権限を付けない。
誤り。644は所有者に読み書き、他に読み取りだけを設定し、既存モードも置き換えて実行可能にはしない。
正しい
chmod u+x script.sh所有者クラスへ実行ビットを追加し、他の権限を維持する。
正しい。uが所有者、+が既存値への追加、xが実行を表すため、要求した1ビットだけを加える。
誤り
chown +x script.shchownは所有者を変更するコマンドで、権限記号を受け取らない。
誤り。chownはユーザーやグループの所有関係を変更し、+xのようなファイルモード記号は解釈しない。
誤り
exec script.sh現在プロセスを置換して実行を試みるだけで、ファイルモードを変更しない。
誤り。execは現在のシェルプロセスを別プログラムで置換する組込みで、対象ファイルの権限を変更しない。
実際に確かめる
一時的な検証環境で実行できる例です。
script=$(mktemp); chmod 600 "$script"; chmod u+x "$script"; stat -c '%A' "$script"; rm -f -- "$script"期待される結果
所有者欄にxを含む-rwx------理解のポイント
- uは所有者
- +は追加
- xは実行権限
確認時の注意
- 確認環境: GNU coreutils 9.x / 一時ファイル
基礎のおさらい
読取権限との関係
スクリプトの解釈系は内容を読む必要があるため、通常は実行権限だけでなく適切な読取権限も必要になる。
記号形式
u、g、o、aで対象クラスを選び、+、-、=で権限の追加、削除、置換を指定する。
問題IDKP-105-619
確認環境GNU coreutils 9.x / 一時ファイル
最終技術確認2026-08-13
誤り・権利侵害を報告