chmod は特定のディレクトリの権限を変更しません

chmod は特定のディレクトリの権限を変更しません

システムファイル:ext4

apache:次のコマンドでファイルの所有者を変更しました:

chown -R apache: wp.localhost

その後、wp.localhost内のディレクトリの権限もwp.localhost自体も変更できなくなりました。

chmod +w wp.localhostたとえば、コマンドを使用します。権限の変更は確認されません。

コマンドでフォルダのグループも再度変更しましたが、問題は解決しませんでした。

chown -R apache:users wp.localhost

前後のコマンドと権限:

#ls -ld wp.localhost
drwxr-xr-x 6 apache users 4096 Mar 28 15:26 wp.localhost/
# chmod +w wp.localhost
# ls -ld wp.localhost
drwxr-xr-x 6 apache users 4096 Mar 28 15:26 wp.localhost/

答え1

そのディレクトリにグローバル書き込み権限を与えたい場合は、

chmod a+w wp.localhost [1]

これは、「影響を受けるユーザー」の文字 ( ugoまたはa) を省略すると が暗黙的に になるためですa。ただし、現在の に設定されているビットは設定されませんumask。したがって、たとえば が の場合umask0022の「グループ」および「その他」の位置に「書き込み」ビットが設定され、明示的にchmod指定しないと無視されますa

manchmodページではこれについて明確に述べられています:

これらの [「影響を受ける」文字] のいずれも指定されていない場合、効果はa指定された場合と同じですが、umask に設定されているビットは影響を受けません。

[1] これを実行する前によく考えてください。

関連情報