GNU/Linux >> Znalost Linux >  >> Ubuntu

Udělit oprávnění pro nově vytvořené soubory ve složce automaticky?

Mám složku, jejíž oprávnění je nastaveno na 777, ale když přidám nějaké soubory nebo složku, rozbalím se do této složky. Extrahované soubory nebo oprávnění složky se nikdy nezmění. Oprávnění cílové složky je 777 a chci, aby to, co do této složky přidám, automaticky získalo oprávnění 777.

Když přidám nějaké soubory nebo složku extrahováním .zip v této složce, oprávnění k extrahované složce/souborům se automaticky nezmění. Vždy musím chmod pro nově přidat soubor/složku!

Přijatá odpověď:

To, co chcete, se nazývá ACL – Seznamy řízení přístupu.

Seznam řízení přístupu (ACL) poskytuje další, flexibilnější
mechanismus oprávnění pro systémy souborů. Je navržen tak, aby pomáhal s
oprávněními k souborům UNIX. ACL vám umožňuje udělit oprávnění jakémukoli uživateli
nebo skupině k jakémukoli prostředku disku.

acl balíček by měl být již nainstalován, pro kontrolu spusťte:dpkg -s acl .

Chcete-li používat ACL, měli byste je povolit pro váš souborový systém. Ale může být již povoleno . Chcete-li to zkontrolovat, použijte tune2fs -l . Nahraďte /dev/sda6 pro váš systém:

$ tune2fs -l /dev/sda6 | grep "Default mount options:"
Default mount options:    user_xattr acl

Pokud vidíte acl word – je již povoleno pro zařízení /dev/sda6 .

Pokud nevidíte acl word – spusťte tune2fs -o acl /dev/sda6 pro jeho aktivaci.

Chcete-li upravit ACL, použijte setfacl příkaz. Chcete-li přidat oprávnění, použijte setfacl -m .

Nastavení oprávnění pro uživatele:

$ setfacl -m "u:username:rwx" /path/to/folder

Tím nastavíte rwx ACL pro uživatele username do /cesta/do/složky. To znamená, že všechny soubory vytvořené v této složce budou mít rwx oprávnění pro username .

Nastavení oprávnění pro skupinu:

$ setfacl -m "g:groupname:rwx" /path/to/folder

Tím nastavíte rwx ACL, pro skupinu groupname do /cesta/do/složky. To znamená, že všechny soubory vytvořené v této složce budou mít rwx oprávnění pro skupinu groupname .

Nastavení oprávnění pro ostatní:

$ setfacl -m "o:rwx" /path/to/folder

Tím nastavíte rwx ACL, pro ostatní do /cesta/do/složky. To znamená, že všechny soubory vytvořené v této složce budou mít rwx povolení pro jiné.

Kontrola oprávnění:

$ getfacl /path/to/folder

Kombinovat acl

$ setfacl -m u:username:rwx,g:groupname:rwx,o:rwx /path/to/folder

Výchozí seznam ACL

 The new object inherits the default ACL of the containing directory as its
 access ACL.

 If no default ACL is associated with a directory, the mode parameter to the func‐
 tions creating file objects and the file creation mask (see umask(2)) are used to
 determine the ACL of the new object:

 The new object is assigned an access ACL containing entries of tag types
 ACL_USER_OBJ, ACL_GROUP_OBJ, and ACL_OTHER. The permissions of these entries
 are set to the permissions specified by the file creation mask.

Pokud tedy nastavíte výchozí ACL, bude to preferováno ACL. To znamená, že pokud nastavíte ACL pro user nebo group , nově vytvořený soubor zdědí výchozí acl stejně . Buďte opatrní s výchozím ACL.

Související:Jak změnit/převést jednotku Ubuntu Mbr na Gpt a provést spouštění Ubuntu z Efi v Ubuntu?

Pro nastavení výchozího acl použijte -d klíč,

$ setfacl -d -m u::rwx,g::rwx,o::rwx /path/to/folder

nebo použijte default slovo

$ setfacl -m default:u::rwx,default:g::rwx,default:o::rwx /path/to/folder

Buďte opatrní s nastavením výchozího ACL. Například pokud je nastaven takto:

$ setfacl -d -m o:--x /path/to/folder

a nyní načtěte tento ACL

$ getfacl /path/to/folder
# file: path/to/folder
# owner: c0rp
# group: c0rp
user::rwx
group::rwx
other::--x
default:user::rwx
default:group::rwx
default:other::--x

Výchozí ACL pro skupinu a uživatele bude rwx automaticky!

Odebrat ACL

$ setfacl -b /path/to/folder

Tím se odstraní všechny ACL ze složky

Konečně

Pokud jste pouze uživatelem systému, doporučuji použít výchozí ACL.

$ setfacl -d -m u::rwx,g::rwx,o::rwx /path/to/folder

To udělá to, co chcete pro /cesta/k/složce

Zdroje

archlinux – https://wiki.archlinux.org/index.php/Access_Control_Lists

help.ubuntu – https://help.ubuntu.com/community/FilePermissionsACLs


Ubuntu
  1. Skript pro sledování nových souborů ve složce?

  2. Přidat novou vlastní relaci?

  3. Snap – Jak udělit trvalé oprávnění ke čtení složky?

  1. Složka a soubory na ploše zmizely?

  2. Obnovit smazanou složku v šifrované domácnosti?

  3. Výchozí nastavení nových podřízených souborů a složek na vlastnictví nadřazené složky?

  1. Programově klonovat /etc/skel pro nové uživatele?

  2. skript pro sledování nových souborů ve sdílené složce (hostitel systému Windows, host linux)

  3. Jak nastavit oprávnění linux pro složku WWW?