sviluppo-web-qa.it

Operazione chown non consentita per root

Cerco di trasferire il proprietario di un file alla radice, ma non ci riesco. Lo sto facendo come root. Ricevo il seguente messaggio:

chown: changing ownership of `ps': Operation not permitted
22
Peter Stuifzand

L'attributo immutabile può essere impostato sul file. Rimuovilo con chattr -i

47
Cian

Esistono diverse soluzioni, tra cui alcune:

  • hai un filesystem non ti consente ad es. uid: gid, ad es .: FAT
  • l'unità è stata montata in sola lettura
  • Si applicano SELinux o altri responsabili dell'applicazione della sicurezza
  • il filesystem è impostato in modalità di sola lettura (ad esempio xfs_freeze)
  • il file ha il flag immutabile impostato (man chattr)
8
asdmin

Prova questo:

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

dopo aver modificato la proprietà e il gruppo di nuovo alla radice.

3
Mukesh

Divertente. Hai controllato i registri di sistema (/ var/log/messages,/var/log/syslog, output di dmesg) per qualche indizio?

Possibili ragioni:

  • Stai eseguendo alcuni sistemi Linux ottimizzati per la sicurezza, come SELinux . Questi pongono restrizioni anche su ciò che root può fare.
  • Il file si trova su un file system che non supporta la proprietà del file, ad esempio (V) FAT. A seconda delle opzioni di mount chmod/chown ti darà errori.
3
sleske

Ho avuto lo stesso problema.

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

Che non era abbastanza. Quindi ho aggiunto il "sa"

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

Problema risolto :)

2

su quale tipo di filesystem è il file "ps" che stai provando a chown? La fs è montata come ro (sola lettura)?

se stai parlando di/bin/ps, su debian è sempre come:

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

Ogni "ipotesi" fatta da altre risposte è possibile. Un suggerimento per il debug potrebbe essere quello di fare un strace del comando, e guardare nell'output per vedere qual è il vero problema nei syscalls stessi.

strace chown root /bin/ps 2>&1 | less 
0
drAlberT