私たちの部門には、CentOSとSambaを備えた小さなファイルサーバーがあります。ルートアクセス権があり、いくつかの基本的なメンテナンスを実行できます。
今日、いくつかのフォルダを読み取り専用にして実行しましたが、chmod -R -w some-folder/
いくつかのファイルに対して次の応答がありました。
chmod:./somefile.pdf:新しい権限はr-xr-xr-xではなくr-xrwxr-xです。
以下を追加した後は、-v
多くの情報は得られません。
`./somefile.pdf'モードは0575(r-xrwxr-x)に保持されます。
確認するために、次のことを試しました。
# touch test-file
# chmod -v -R -w .
mode of `./somefile.pdf' retained as 0575 (r-xrwxr-x)
chmod: ./somefile.pdf: new permissions are r-xrwxr-x, not r-xr-xr-x
mode of `./test-file' changed to 0444 (r--r--r--)
正しい理由が思い出されません。ルートがchmod操作を実行できないのはなぜですか?
いくつかの有用な情報:
- ファイルシステムはいいえ 読み取り専用(ただ一部ファイルのchmoddが拒否されました。)
- chmodコマンドを実行しましたrootユーザーとしてしかし、役に立たない。
- ファイルのあるパーティションはext4です。
修正するlsattr
:これはファイルとインクルードフォルダへの出力です。
# lsattr somefile.pdf
-------------e- somefile.pdf
# lsattr ..
-------------e- ../myfolder
setuid( ls -la
) が存在しません:
dr-xr-xr-x 2 userxyz abc 4096 May 30 09:29 .
dr-xr-xr-x 17 userxyz abc 4096 Sep 19 2013 ..
-r-xrwxr-x 1 userxyz abc 275150 Aug 6 2013 somefile.pdf
答え1
消息筋によると、無邪気な期待モデル。もっと与えてみると、その理由は選択のためだと思いますが、-w
これは期待していたものとは異なります。あなたは(あなたのニーズに応じg-w
てugo-w
)与えなければなりません。
明示的なターゲット(a、o、g、u)が指定されていない場合、umaskの値によっては予期しない結果が表示されることがあります。このような予想外の変化のために、このような追加情報が出てきたと思います。
編集:ソースhttp://git.savannah.gnu.org/cgit/coreutils.git/tree/src/chmod.c#n301
Google キャッシュから取得した次のコードのコメントはもう存在しません。
/* true の場合、「chmod -r ファイル」などの素直な誤用による事故を診断します。移植可能なコードを使用する必要があるため、POSIXはここで診断を受け入れます。 "chmod ---r ファイル"*/