Úvod
Předpokládejme, že jste právě vytvořili nový soubor a chcete, aby měl stejná oprávnění a vlastnictví jako starší soubor.
Potřebujete zkopírovat nebo naklonovat starší vlastnictví souboru a oprávnění do nového souboru, který jste vytvořili?
V tomto malém průvodci se naučíme, jak klonovat uživatele, vlastnictví skupiny a oprávnění k souboru z jiného souboru v operačním systému Linux
- Pro změnu vlastníka souboru a skupiny použijte chown příkaz.
- Chcete-li změnit oprávnění souboru, použijte chmod příkaz.
Poznámka :
RFILE níže v článcích odkazuje na soubor jako odkaz.
Kopírovat oprávnění k souboru do jiného souboru
Chcete-li zkopírovat souborová oprávnění starého souboru do jiného souboru, použijte chmod příkaz s –reference .
Kde reference_file je soubor z oprávnění bude zkopírován.
$ chmod --reference=RRFILE file
$ chmod [options] --reference=RRFILE file
Například:
Oprávnění kopírovat soubor, ale ne soubory
[root@unixcop ~]# ls -l unixcop
--w-r-----. 1 root root 0 Sep 21 17:44 unixcop
[root@unixcop ~]#
[root@unixcop ~]# ls -l monitor.txt
-rw-r--r--. 1 root qadry 0 Sep 21 17:46 monitor.txt
[root@unixcop ~]# chmod --reference=unixcop monitor.txt
[root@unixcop ~]#
[root@unixcop ~]# ls -l monitor.txt
--w-r--r--. 1 root qadry 0 Sep 21 17:46 monitor.txt
[root@unixcop ~]#
Poznámka :
Oprávnění obou souborů můžete vypsat současně pomocí:
[root@unixcop ~]# ls -l unixcop monitor.txt
--w-r-----. 1 root root 0 Sep 21 17:44 unixcop
--w-r--r--. 1 root qadry 0 Sep 21 17:46 monitor.txt
[root@unixcop ~]#
Zkopírujte vlastnictví souboru do jiného souboru
Chcete-li také zkopírovat vlastnictví z jiného souboru, použijte příkaz chown s –referencí jak je znázorněno v příkazu níže
Kde reference_file je soubor, ze kterého bude zkopírován vlastník a skupina.
$ chown --reference=reference_file file
Například,
[root@unixcop ~]# ls -l monitor.txt
--w-r--r--. 1 root qadry 0 Sep 21 17:46 monitor.txt
[root@unixcop ~]#
[root@unixcop ~]# touch servers
[root@unixcop ~]#
[root@unixcop ~]# ls -l servers
-rw-r--r--. 1 root root 0 Sep 21 17:50 servers
[root@unixcop ~]#
[root@unixcop ~]# chown --reference=monitor.txt servers
[root@unixcop ~]#
[root@unixcop ~]# ls -l servers
-rw-r--r--. 1 root qadry 0 Sep 21 17:50 servers
[root@unixcop ~]#
Oprávnění ke kopírování souborů do více souborů
Můžete také zkopírovat oprávnění a vlastnictví souboru ze starého souboru do více souborů, jak je uvedeno níže.
$ chmod --reference=unixcop.txt unixcop1.txt unixcop2.txt unixcop3.txt
$ chown --reference=unixcop.txt unixcop1.txt unixcop2.txt unixcop3.txt
Také můžeme kombinovat, hledat a xargs následovně:
$ find /path/to/dest/ -type f -print0 | xargs -O -I {} chmod --reference=/path/to/rfile.txt {}
Závěr
V tomto článku jsme si ukázali, jak zkopírovat nebo naklonovat oprávnění a vlastnictví z jednoho souboru do jiného souboru v Linuxu pomocí chmod a chown příkazy.