androide

Come modificare in modo ricorsivo le autorizzazioni del file in linux

0x02 Linux Bash directory navigation commands: pwd, cd, ls, less, more, piping output

0x02 Linux Bash directory navigation commands: pwd, cd, ls, less, more, piping output

Sommario:

Anonim

Linux è un sistema multiutente e l'accesso ai file è controllato attraverso le autorizzazioni, gli attributi e la proprietà dei file. Ciò garantisce che solo utenti e processi autorizzati possano accedere a file e directory.

Per ulteriori informazioni sulle autorizzazioni dei file, vedere "Comando Umask in Linux"., spiegheremo come modificare in modo ricorsivo le autorizzazioni di file e directory.

Chmod ricorsivo

Il comando chmod consente di modificare le autorizzazioni dei file utilizzando la modalità simbolica o numerica.

Per operare in modo ricorsivo su tutti i file e le directory in una determinata directory, utilizzare il comando chmod con l'opzione -R , ( --recursive ). La sintassi generale per modificare in modo ricorsivo le autorizzazioni del file è la seguente:

chmod -R MODE DIRECTORY

Ad esempio, per modificare le autorizzazioni di tutti i file e le sottodirectory nella directory /var/www/html su 755 dovresti usare:

chmod -R 755 /var/www/html

La modalità può anche essere specificata usando il metodo simbolico:

chmod -R u=rwx, go=rx /var/www/html

Solo root, il proprietario del file o l'utente con privilegi sudo possono modificare le autorizzazioni di un file. Prestare particolare attenzione quando si modificano in modo ricorsivo le autorizzazioni dei file.

Usando il comando find

In generale, i file e le directory non dovrebbero avere le stesse autorizzazioni. La maggior parte dei file non richiede l'autorizzazione di esecuzione, mentre è necessario impostare le autorizzazioni di esecuzione sulle directory per poterle modificare.

Lo scenario più comune è modificare in modo ricorsivo le autorizzazioni del file del sito Web in 644 e le autorizzazioni della directory in 755 .

Utilizzando il metodo numerico:

find /var/www/html -type d -exec chmod 755 {} ; find /var/www/html -type f -exec chmod 644 {} ;

Utilizzando il metodo simbolico:

find /var/www/html -type d -exec chmod u=rwx, go=rx {} ; find /var/www/html -type f -exec chmod u=rw, go=r {} ;

Il comando find cerca i file o le directory in /var/www/html e passa ogni file o directory trovati al comando chmod per impostare le autorizzazioni.

Quando si utilizza find con -exec , il comando chmod viene eseguito per ogni voce trovata. Utilizzare il comando xargs per velocizzare l'operazione passando più voci contemporaneamente:

find /var/www/html -type d -print0 | xargs -0 chmod 755 find /var/www/html -type d -print0 | xargs -0 chmod 755 find /var/www/html -type f -print0 | xargs -0 chmod 644 find /var/www/html -type f -print0 | xargs -0 chmod 644

Conclusione

Il comando chmod con le opzioni -R consente di modificare in modo ricorsivo le autorizzazioni del file.

Per impostare in modo ricorsivo le autorizzazioni dei file in base al loro tipo, utilizzare chmod in combinazione con il comando find .

terminale chmod