A raiz não pode chmod?

12

No meu departamento, temos um pequeno servidor de arquivos com o CentOS e o samba. Eu tenho acesso root para poder executar alguma manutenção básica.

Hoje eu estava criando algumas pastas como somente leitura, então fui em frente e fiz um chmod -R -w some-folder/ , mas para alguns arquivos obtive a resposta:

chmod: ./somefile.pdf: new permissions are r-xrwxr-x, not r-xr-xr-x

Depois de adicionar -v , não recebo muita informação:

mode of './somefile.pdf' retained as 0575 (r-xrwxr-x)

Eu tentei o seguinte apenas para ter certeza:

# 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--)

Eu não consigo pensar em nenhuma boa razão porque o root não seria capaz de fazer um chmod?

Algumas informações:

  • O sistema de arquivos não é somente leitura (somente alguns arquivos se recusaram a ser chmodded).
  • Eu corri os comandos chmod como root , mas sem efeito.
  • A partição em que os arquivos residem é ext4.

ATUALIZAÇÕES : Esta é a saída para lsattr no arquivo e na pasta:

# lsattr somefile.pdf
-------------e- somefile.pdf
# lsattr ..
-------------e- ../myfolder

Não há nenhum presente 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
    
por Roflo 30.05.2016 / 16:32

1 resposta

17

De acordo com fontes, você tem um modo esperado inesperado . Depois de abandonar mais, acho que a causa é a opção -w , que não é o que você está esperando. Você deve dar g-w ou ugo-w (de acordo com suas necessidades).

Sem fornecer um alvo explícito (a, o, g, u), alguns resultados inesperados podem ser fornecidos, de acordo com o valor de umask. Eu acho que essa mensagem extra é feita por causa de tais mudanças inesperadas.

Editar: fontes no link

Extraído do cache do google, um comentário no código que não está mais lá:

/* If true, diagnose surprises from naive misuses like "chmod -r file". POSIX allows diagnostics here, as portable code is supposed to use. "chmod -- -r file" */

    
por 30.05.2016 / 17:10

Tags