Perché umask 077 non consente all'utente di eseguire file / directory?


10

Sto usando umask 077. "Altro" e "gruppo" non hanno alcun diritto, ma l'utente non può eseguire file / directory. Perché umask 077 non consente al proprietario di eseguire file / directory?

Risposte:


6

Quando si utilizza uno umaskdi 077, solo l'utente ha permesso di leggere, scrivere ed eseguire. L'utente sarà sicuramente in grado di aprire ('eseguire') le directory (vedere di più sul perché le directory devono essere eseguibili nella mia risposta qui ). Tuttavia, i file devono essere sempre resi eseguibili inserendo chmod u+x myfile; non sono mai eseguibili automaticamente. Alcune informazioni più utili umasksono fornite in questa risposta:

La probabile possibilità per i tuoi problemi è che forse hai inserito il valore in modo leggermente errato, il che ha provocato una diversa umask o che il valore non è stato impostato in modo permanente. Se si entra umask 077nel terminale, sarà valido solo per quella sessione del terminale; per renderlo permanente per il tuo utente, aggiungi semplicemente umask 077al tuo ~/.profile. L'impostazione predefinita del sistema per umaskè in /etc/login.defs; è usato per essere in /etc/profile. Vedi anche la manpage per pam_umask, che è un modulo pam che gestisce l'assegnazione di umask.

I seguenti esempi provengono da un'impostazione corretta di umask 077:

1) Per la creazione di cartelle : mkdir docselezionato con stat docle autorizzazioni corrette e una cartella 'eseguibile':

File: `doc'
  Size: 4096        Blocks: 8          IO Block: 4096   directory
Device: 801h/2049d  Inode: 6425268     Links: 2
Access: (0700/drwx------)  Uid: ( 1000/    mike)   Gid: ( 1000/    mike)
Access: 2012-09-12 11:33:01.236675420 +0100
Modify: 2012-09-12 11:33:01.236675420 +0100
Change: 2012-09-12 11:33:01.236675420 +0100
 Birth: -

2) Per la creazione di file : touch newselezionato con stat newle autorizzazioni corrette; il file viene reso eseguibile solo quando si utilizza chmod +x:

File: `new'
  Size: 0           Blocks: 0          IO Block: 4096   regular empty file
Device: 801h/2049d  Inode: 6303902     Links: 1
Access: (0600/-rw-------)  Uid: ( 1000/    mike)   Gid: ( 1000/    mike)
Access: 2012-09-12 11:34:58.272676270 +0100
Modify: 2012-09-12 11:34:58.272676270 +0100
Change: 2012-09-12 11:34:58.272676270 +0100

A umaskdi 077 fornirà le autorizzazioni mostrate, ma se hai ancora problemi con le autorizzazioni dopo aver impostato umask 077correttamente (come discusso più sopra) possiamo esaminarlo ulteriormente.


5

Il valore umask verrà utilizzato per modificare in modo appropriato la maschera di default per le autorizzazioni dei file (autorizzazione di base 0666) e la maschera di protezione per le autorizzazioni directory / cartella (autorizzazione di base 0777).

I valori effettivi di maschera e dmask verranno calcolati deducendo il valore umask (calcoli ottali).

Quindi un umask 0022 comporterebbe in fmask un valore 0644 (ovvero 0666 - 0022) mentre dmask sarebbe 0755 (ovvero 0777 - 0022).

L'umask 0077 impedisce che i file vengano creati con qualsiasi accesso non solo al mondo (indicato dalla ultima cifra ottale), ma anche i vostri membri del gruppo (indicato dalla penultima ottale cifra).

Riferimento:


più leggo questo, più non lo capisco. C'è qualche spiegazione per il novizio che vuole fare solo piccoli cambiamenti senza saperlo in profondità?
GusDeCooL,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.