Concedere l'autorizzazione di scrittura predefinita per raggruppare tutti i file e le cartelle appena creati


15

Diciamo che abbiamo 2 utenti: aeb, che fanno entrambi parte del gruppo generale.

Vorrei che qualsiasi file o cartella creato da A, avesse il permesso di scrittura per il gruppo GENERAL.

Come posso farlo?

Ad esempio, il file appena creato è impostato come:

-rw-r--r-- 1 a general

Questo non dà il permesso di scrivere al gruppo generale


Potresti essere interessato a questa risposta: stackoverflow.com/questions/3175303/…
Gavriel,

2
Non voglio farlo da Java. Questo non è il modo giusto per farlo
Dejel

"Non voglio farlo da Java. Questo non è il modo giusto di farlo." È quasi un'affermazione filosofica. Si applica ovunque ...
GargantuChet,

Risposte:


15

Sì, puoi farlo cambiando il umask. I umaskdetermina che sono le autorizzazioni predefinite per un file appena creted.

È possibile aggiungere umask g+walla fine del file di configurazione della shell ( ~/.bashrcad esempio).

Ma in realtà non è una pratica raccomandabile. Nel caso in cui si desideri garantire l'integrità di un file e si dimentichi di aggiornare le autorizzazioni del file, questo sarà modificabile dal gruppo. È contro il principio di sicurezza "valori iniziali sicuri".

Quello che potresti fare invece è rendere tutti i file appena creati di una directory specifica scrivibili dal gruppo. Puoi farlo manipolando gli ACL della directory. Ad esempio setfacl -dm u::rw,g::rw,o::r ~/shared,.

Guarda questi post come riferimento: /server/349145/can-i-override-my-umask-using-acls-to-make-all-files-created-in-a-given-director e /programming/580584/setting-default-permissions-for-newly-created-files-and-sub-directories-under-a .


Cosa succede se non so quale sarà la directory? Dal momento che diciamo che ho la cartella TEST. Tutti i file creati da A saranno sotto TEST. Tuttavia, potrebbe creare una cartella 20130515 e al di sotto di essa per individuare il file appena creato. quindi dovrebbe essere per qualsiasi file e cartella che viene creato ricorsivamente nella cartella TEST
Dejel

2
gli ACL predefiniti ereditano le nuove sottodirectory e si applicano ai file creati in tali directory. Quindi, se hai /srv/TESTimpostato gli ACL predefiniti su quella directory, allora quando /srv/TEST/20130515avrà gli stessi ACL predefiniti della directory padre.
Bratchley,

Potrebbe anche essere una buona idea eseguire sudo chmod g+s [dir]così i file saranno di proprietà del gruppo
linuxgnuru
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.