2012-02-03 12 views

risposta

9

Edit: La risposta corretta è di gran user112358132134


La mia risposta sbagliata:

Il primo carattere del drwxrwsrwx è d e questo significa directory. Non sarà in grado di impostare un file in modo che si tratta di una directory, perché è un file :)

Per impostare tutti i file nella directory corrente per -rwxrwsrwx è possibile utilizzare chmod 777 *

Per fare questo in modo ricorsivo, dal utilizzare la directory corrente: chmod -R 777 *

Prova man chmod per ulteriori informazioni. Spero che questo ti aiuti.


Edit: La risposta corretta è di user112358132134


Edit: Io controllo:

enter image description here

+0

Grazie, non sono così bravo con le autorizzazioni :) apprezzo l'aiuto! :) –

+0

Sei il benvenuto. – jon

+3

Sembra che tu abbia perso la "s" in "rws", non è la stessa di "rwx". user112358132134 sembra aver capito bene. – reconbot

30

chmod 777non lo fa applicare rwxrwsrwx. Questo implicitamente significa chmod 0777, si applica rwxrwxrwx ed è significativamente diverso da rwxrwsrwx.

Il permesso rwxrwsrwx può essere applicato con:

chmod 2777 your_target 

è possibile mostrare la stringa autorizzazione effettiva di un file o una directory con:

ls -lad your_target 

Un file sarà simile:

-rwxrwsrwx 1 user group   0 Feb 3 13:24 foo 

E una directory potrebbe essere:

drwxrwsrwx 2 user group  4096 Feb 3 13:24 bar 

Il primo carattere della stringa indica il tipo di oggetto che è. Un file normale avrà - e una directory avrà d. Ci sono altre possibilità per altri oggetti.

I restanti 9 caratteri, in ordine, si riferiscono al permesso di lettura/scrittura/esecuzione per il proprietario dell'utente, il permesso di lettura/scrittura/esecuzione per il proprietario del gruppo e quindi il permesso di lettura/scrittura/esecuzione per tutti gli altri .

Nel tuo esempio, i permessi utente proprietario e tutti sono rwx, il che significa che l'utente proprietario e tutti hanno il permesso di leggere, scrivere ed eseguire l'oggetto.

Le autorizzazioni di proprietario del gruppo in vostro esempio sono rws, il che significa che il proprietario del gruppo è leggere, scrivere, e il processo di esecuzione e l'oggetto ha il bit impostato setguid (questo è il s in rws). Su un file, il numero setgid indica che, se il file è stato eseguito, verrà eseguito con i diritti effettivi del proprietario del gruppo (anziché quello dell'utente che lo ha eseguito). Su una directory, il setgid bit significa che, se un file viene creato nella directory, il suo proprietario del gruppo sarà quello della directory (anziché quello dell'utente che lo ha creato).

È possibile leggere le autorizzazioni di Linux, incluso ciò che legge/scrive/esegue significa su file e directory, here e here.

+0

Grazie per aver spiegato cosa significa, non è stato possibile trovarlo da nessuna parte – Davos

Problemi correlati