Operação de chown não permitida para raiz


21

Eu tento mostrar o proprietário de um arquivo como root, mas não posso. Estou fazendo isso como raiz. Recebo a seguinte mensagem:

chown: changing ownership of `ps': Operation not permitted

Um ls -lha e lsattr saída ajudariam a solução :)
drAlberT

Respostas:


45

O atributo imutável pode ser definido no arquivo. Remova-o com chattr -i


8
Foi um. Mas obrigado pelo aceno na direção certa.
31440 Peter Stuifzand

Obrigado, como posso definir atributos imutáveis ​​novamente?
Zim3r

chattr + i <arquivo>
Cian

chattr: Inappropriate ioctl for device while reading flags on
andilabs

8

Existem várias soluções, algumas delas:

  • você tem um sistema de arquivos não permite, por exemplo. uid: gid, por exemplo: FAT
  • a unidade foi montada somente leitura
  • O SELinux ou outros aplicadores de segurança se aplicam
  • O sistema de arquivos está definido no modo somente leitura (xfs_freeze, por exemplo)
  • O arquivo possui o sinalizador imutável definido (man chattr)

O sistema de arquivos é ext3, montado de leitura e gravação, sem SELinux.
31740 Peter Stuifzand

Também é possível que o arquivo esteja em um sistema de arquivos NFS, montado root_squash, embora improvável, considerando o arquivo.
Cian

3

Engraçado. Você verificou os logs do sistema (/ var / log / messages, / var / log / syslog, saída do dmesg) em busca de alguma pista?

Razões possíveis:

  • Você está executando um Linux com segurança aprimorada, como o SELinux . Isso impõe restrições mesmo sobre o que a raiz pode fazer.
  • O arquivo está em um sistema de arquivos que não suporta a propriedade do arquivo, como (V) FAT. Dependendo das opções de montagem, o chmod / chown fornecerá erros.

3

Tente o seguinte:

[root @ root] # chattr -ais / bin / ls

depois de alterar a propriedade e o grupo de volta à raiz.


2

Eu tive o mesmo problema.

$ chattr -V -i dir
chattr 1.41.12 (17-May-2010)
Flags of dir set as s----a---------

O que não foi suficiente. Então eu adicionei o 'sa'

$ chattr -V -ais dir
chattr 1.41.12 (17-May-2010)
Flags of dir set as ---------------
$ chown root dir
$

Problema resolvido :)


0

em que tipo de sistema de arquivos é o arquivo "ps" que você está tentando exibir? O fs é montado como ro (somente leitura)?

se você está falando sobre / bin / ps, no debian é sempre como:

-rwxr-xr-x 1 root root 76132 2009-05-28 10:48 /bin/ps*

O problema é que meu sistema foi invadido e alguns arquivos foram substituídos. Agora quero substituí-los pelos originais, mas não trabalho.
31440 Peter Stuifzand

9
Se seu sistema foi invadido, você não deseja colocar os arquivos de volta. Você não tem como dizer o que foi quebrado e nada no sistema é confiável. Limpe e reinstale a partir de backups.
Cian

11
Como Cian disse, se seu sistema foi invadido e eles obtiveram acesso root, não substitua arquivos. Pode ainda conter uma (quase) rootkit invisível que chamadas de sistema seqüestros. Ele ainda pode estar cheirando senhas, ainda pode ter aberto backdoors em seus serviços, e / e (número infinito de possíveis coisas que uma máquina invadida pode conter). O mais razoável a fazer é desligar a máquina e estudar seu conteúdo offline, colocando o disco em outra caixa. Não confie nesta máquina e não substitua nenhum binário; eles podem conter informações valiosas para descobrir o que o rootkit faz.
kargig

0

Cada "palpite" feito por outras respostas é possível. Uma dica de depuração pode ser fazer um rastro do comando e examinar a saída para ver qual é o problema real nos próprios syscalls.

strace chown root /bin/ps 2>&1 | less 
Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.