Issei.M's Techlog

Web/iOS エンジニアの僕が技術関連のメモ等をつらつらと。主に Symfony について書いています。

[Linux] CentOS で setfacl が使用できない時は

Apache ユーザに特定のディレクトリへの書き込み権限を与えようと思って setfacl を使用したらこんなエラーが。 (※CentOS 6.2 x86_64 でのお話)

setfacl -m u:www-data:rwx /var/www/example.com/logs
setfacl: /var/www/example.com/logs: Operation not permitted

ググってみると、どうやらディスクのマウント時に ACL を許可していないとダメらしい。 てな訳で sudo mount でチェック。

sudo mount

/dev/vda1 on / type ext3 (rw)
...

括弧の中に acl が無いので許可されていない模様。有効にする為に /etc/fstab を修正。

sudo vi /etc/fstab

/dev/vda1 / ext3 defaults 1 1

↓ オプションに acl を追加します。

/dev/vda1 / ext3 defaults,acl 1 1

完了後、以下のコマンドでリマウントして確認。

sudo mount -o remount /
sudo mount

/dev/vda1 on / type ext3 (rw,acl) # ←追加されてる!
...

これで使えるようになりましたとさ。めでたしめでたし。

参考にしたサイト
さくら VPS WebDav ACL 設定