GNU/Linux >> Linux Esercitazione >  >> Linux

È necessario correggere i permessi dei file nella home directory di un utente

Soluzione 1:

Questo dovrebbe risolvere il problema:

find /home/user -type d -print0 | xargs -0 chmod 0775
find /home/user -type f -print0 | xargs -0 chmod 0664

Soluzione 2:

find può fare il trucco da solo con -exec:

find /home/user -type f -exec chmod 0664 {} \;
find /home/user -type d -exec chmod 0775 {} \;

per impedire a find di generare un chmod per ogni voce:

find /home/user -type f -exec chmod 0664 {} +
find /home/user -type d -exec chmod 0775 {} +

(questo chiama effettivamente chmod una volta con l'elenco di tutti i file come parametri anziché un chmod per file)

Soluzione 3:

Questa risposta non risolverà il tuo problema, ma qualcuno potrebbe trovarla utile per un problema simile in cui i file hanno meno autorizzazioni di quanto dovrebbero.

# chmod -R . u=rwX,g=rX,o=rX

La magia è il permesso X, piuttosto che x. La manpage chmod lo descrive così:

esegui/cerca solo se il file è una directory o ha già il permesso di esecuzione per qualche utente

Questo non è adatto nel tuo caso in quanto i tuoi file hanno il permesso di esecuzione, quindi corrisponderà al secondo test.


Linux
  1. Permessi Linux:un'introduzione a chmod

  2. Linux chmod and chown - Come modificare le autorizzazioni e la proprietà dei file in Linux

  3. Autorizzazioni Ssh e Home Directory?

  4. Qual è lo scopo del file .bash_profile nella directory home dell'utente in Linux

  5. Come trovare la home directory di un utente su Linux o Unix?

Permessi dei file Linux:tutto ciò che devi sapere

Crea directory home per utenti esistenti in Linux

Autorizzazioni Linux:come trovare le autorizzazioni di un file

Comando Chmod:come modificare le autorizzazioni dei file in Linux

Esempi di comandi chmod di Linux

Gestisci le autorizzazioni di directory e file con chmod Recursive