Usando {.,}*
, hai incluso sia ./
e ../
. Insieme -R
all'opzione, la tua chown
chiamata stava per sfogliare l'intero filesystem (e altri, eventualmente montati), passando ../
. Con altri comandi, questo piccolo errore può essere abbastanza mortale, ma credimi, non sei il primo e non sarai l'ultimo ...
Poiché questa operazione è piuttosto pesante, la tua chown
chiamata è rimasta sospesa un po ', poiché aveva molti file da elaborare. Ti suggerirei di tornare alla directory in cui hai effettuato la chiamata e di tornare progressivamente /
per vedere quali modifiche sono state apportate. Potresti essere in grado di applicare una soluzione rapida facendo:
chown root:root /* # Set ownership to root for all directories in /.
chown you:yourgroup /home/you -R # Take your home back.
Su Ubuntu, la /home
directory viene assegnata al primo utente (admin / sudo) registrato sul sistema. Se sei l'unico utente, potresti voler fare:
chown you:yourgroup /home -R
Tuttavia, è sufficiente un semplice chmod 755
on /home
, anche se appartiene a root.
Anche dare una rapida occhiata direttamente /
(inclusi i permessi di root stessi ls -ld /
) sarebbe un buon punto di partenza. Ti suggerisco di assicurarti che /
appartenga a root, con un set di autorizzazioni 755.
Se hai usato chown
per impostare una proprietà molto specifica (un utente diverso da te o root, un gruppo raro, ...), potresti voler utilizzare find
per cercare i chown
file -ed.
find / -user {username}
find / -group {groupname}
Sfortunatamente, non esiste nulla di simile undo
a ciò che hai fatto. Linux non tiene naturalmente traccia di queste operazioni "casuali".
Per ulteriori informazioni su ciò che stavi cercando di ottenere, dai un'occhiata a questa domanda SuperUser .