Chown je příkaz v systému Linux který se používá ke změně vlastníka sady souborů nebo adresářů.
Chown přichází s více možnostmi a často se používá ke změně skupiny vlastnící soubor.
V některých případech však možná budete muset změnit vlastníka adresáře se všemi soubory v něm.
K tomu možná budete muset použít jednu z možností příkazu chown:rekurzivní chown .
V tomto tutoriálu se naučíte, jak můžete rekurzivně použít příkaz chown k rekurzivní změně oprávnění složek a souborů.
Chown rekurzivně
Nejjednodušší způsob, jak použít rekurzivní příkaz chown, je provést „chown“ s volbou „-R“ pro rekurzivní a zadat nového vlastníka a složky, které chcete změnit.
$ chown -R <owner> <folder_1> <folder_2> ... <folder_n>
Pokud například chcete změnit vlastníka adresářů a souborů obsažených v domovském adresáři konkrétního uživatele, napište
$ chown -R user /home/user
Poznámka :Pokud potřebujete kompletního průvodce příkazem chown, napsali jsme rozsáhlý průvodce o oprávněních k souborům v Linuxu.
Chown User and Group Rekurzivně
Chcete-li změnit uživatele a skupinu vlastnící adresáře a soubory, musíte provést „chown“ s možností „-R“ a zadat uživatele a skupinu oddělené dvojtečkami.
$ chown -R <user>:<group> <folder_1> <folder_2> ... <folder_n>
Řekněme například, že chcete změnit uživatele, který vlastní soubory, na „uživatel“ a skupinu vlastnící soubory na „root“.
Abyste toho dosáhli, spustili byste následující příkaz
$ chown -R user:root /home/user
Gratulujeme, úspěšně jste rekurzivně použili příkaz „chown“ ke změně vlastníků na vašem serveru!
Chown rekurzivně pomocí find
Dalším způsobem použití příkazu „chown“ rekurzivně je zkombinovat jej s příkazem „find“ v najít soubory odpovídající danému vzoru a změnou jejich vlastníků a skupin.
$ find <path> -name <pattern> -exec chown <user>:<group> {} \;
Řekněme například, že chcete změnit vlastníka všech souborů TXT, které se nacházejí v daném adresáři na vašem serveru.
V první řadě se velmi doporučuje provést samotný příkaz „najít“, abyste si ověřili, že odpovídáte správným souborům.
V tomto příkladu porovnáme všechny soubory TXT v domovském adresáři aktuálního uživatele.
$ find /home/user -name *.txt
Nyní, když jste se ujistili, že cílíte na správné soubory, můžete jej svázat s „chown“, abyste rekurzivně změnili oprávnění.
$ find /home/user -name *.txt -exec chown user {} \;
Jak můžete vidět, vlastník souborů TXT byl změněn, ale žádný z ostatních souborů a adresářů nebyl změněn.
Buďte opatrní při rekurzivním chownu
V Linuxu je provádění příkazů jako chown, chmod nebo rm definitivní:není cesty zpět.
V důsledku toho budete muset být velmi opatrní, abyste neprováděli žádné příkazy, které by poškodily váš systém.
Tento bod je ilustrován v předchozí části:spustíme příkaz find samostatně a ujistíme se, že jde o správný výsledek.
Poté jsme provedli příkaz chown, abychom rekurzivně změnili soubory oprávnění z předchozího příkazu.
Obecně platí:pokud si nejste jisti výstupem příkazu, rozdělte jej na menší části, dokud si nebudete jisti, že neprovedete nic škodlivého.
Závěr
V tomto tutoriálu jste se naučili, jak můžete na vašem systému rekurzivně spustit příkaz chown.
Naučili jste se, že toho můžete dosáhnout pomocí volby „-R“ nebo kombinací s příkazem find.
Oprávnění pro Linux jsou široké téma:opravdu vám doporučujeme, abyste se podívali na naši kompletní příručku o oprávněních pro Linux, pokud se chcete dozvědět více.
Také, pokud máte zájem o Správu systému Linux , máme na webu kompletní sekci věnovanou tomu, takže se na to určitě podívejte!