Tips – 所有者とグループ – ディレクトリを775にファイルを664にをchmodでいっぺんにやる

ついでにパーミッションについてもうひとつ。
(以前の話は下記です、未だの方はそちらを先にどうぞ。「Tips – パーミッションの話」)
それってどんな時に使うの?
あるフォルダ配下を全てディレクトリだけ775にしてファイルだけ664にしたいとき。
今回のようなCMSサイトを構築する場合(「ParallelsでUbuntuが快適だった件 -【MacとUbuntuで快適LAMP構築】」から一連の記事を参照ください)なんかで使います。
デフォルトではドキュメントルートのファイルのパーミッションは、ディレクトリは755でファイルは644とかです。ユーザーもグループもwww-dataにします。デフォルトのログインユーザーはparallelsですから、これではエディタで直接編集するときにいちいちsudoとかつける羽目になるわ、GUIでフォルダ開いてファイル名を変更できないわでなかなか面倒です。
しかも実際の作業ではユーザーは複数のこともありますし。
そこでグループを使用します。
まあやってみましょう。
所有者とグループを使う
例としてグループ cms を作成して、パーミッションを所有者と同等にして、グループが所有者と同じ編集作業が行えるようにします。
cmsグループを作成。
$ sudo groupadd cms
ユーザーを追加。
$ sudo gpasswd -a parallels cms
$ sudo gpasswd -a www-data cms
ドキュメントルートの権限グループを変更。
$ sudo chown -R www-data:cms /var/www/html
ユーザーとグループに同じ権限を与えるため、ディレクトリは775にファイルは664にします。
いっぺんにやります。
$ sudo chmod -R "=r,u+w,g+w,+X" /var/www/html
(上記のコマンドを少し説明すると、「=r」で全てのユーザーにアクセスだけを許可するパーミッションを指定(=)し、「u+w」で所有者(u)に書き込み権限(w)を付与(+)し、「g+w」でグループ(g)に書き込み権限(w)を付与(+)しています、大文字指定の「+X」は再帰実行(-R)向けの特殊パーミッションとして配下全てのディレクトリに実行パーミッションをつけています)
以上です。
gpasswdでの変更を反映させるため再起動しておきましょう。
これでユーザーparallelsもwww-dataも所有者がいずれでも編集が可能になりましたね、
TTでした。