comandachown
vă permite să modificați proprietatea utilizatorului și/sau a grupului asupra unui anumit fișier, director sau link simbolic.
în Linux, toate fișierele sunt asociate cu un proprietar și un grup și i se atribuie drepturi de acces permisiune pentru proprietarul fișierului, membrii grupului și alții.
în acest tutorial, vă vom arăta cum să utilizați comanda chown
prin exemple practice.,
cum se utilizează chown #
înainte de a intra în modul de utilizare a comenzii chown
, să începem prin revizuirea sintaxei de bază.
chown
comanda expresii are următoarea formă:
chown USER FILE(s)
USER
este numele de utilizator sau ID-ul de utilizator (UID) din noul proprietar. GROUP
este numele noului grup sau ID-ul grupului (GID). FILE(s)
este numele unuia sau mai multor fișiere, directoare sau link-uri., ID-urile numerice trebuie prefixate cu simbolul +
.
-
USER
– dacă este specificat doar utilizatorul, utilizatorul specificat va deveni proprietarul fișierelor date, proprietatea grupului nu este modificată. -
USER:
– atunci Când numele de utilizator este urmat de un colon:
, și grupul nume nu este dat, utilizatorul va deveni proprietar de fișiere și fișierele grup proprietate este schimbat la conectare a utilizatorului de grup., -
USER:GROUP
– dacă atât utilizatorul, cât și Grupul sunt specificate (fără spațiu între ele), proprietatea utilizatorului asupra fișierelor este schimbată în utilizatorul dat și proprietatea grupului este schimbată în grupul dat. -
:GROUP
– Dacă Utilizatorul este omis, iar grupul este prefixat cu un colon:
, doar grupul de proprietate de fișiere este schimbat la grupul dat. -
:
Dacă doar un colon:
este dat, fără a preciza utilizator și grup, nu se modifică.,
în mod implicit, la succes, chown
nu produce nicio ieșire și returnează zero.
Utilizare ls -l
comandă pentru a afla cine detine un fișier sau ce grup de fișiere aparține:
ls -l filename.txt
-rw-r--r-- 12 linuxize users 12.0K Apr 8 20:51 filename.txt|- | | | +-----------> Group +-------------------> Owner
utilizatorii Normali pot schimba grupul de fișier numai dacă au propriul dosar și numai la un grup de care sunt membru. Utilizatorii administrativi pot schimba proprietatea grupului asupra tuturor fișierelor.,
Cum de a Schimba Proprietarul unui Fișier #
Pentru a schimba proprietarul unui fișier utilizați chown
comandă, urmat de numele de utilizator al noului proprietar și fișierul țintă ca un argument:
chown USER FILE
De exemplu, următoarea comandă va schimba în proprietate un fișier numit file1
la un nou proprietar numit linuxize
:
chown linuxize file1
Pentru a schimba dreptul de proprietate asupra mai multor fișiere sau directoare, specificați-le ca un spațiu listă separată., Comanda de mai jos modificări în proprietate un fișier numit file1
și director dir1
la un nou proprietar numit linuxize
:
chown linuxize file1 dir1
numerice ID-ul de utilizator (UID) poate fi folosit în loc de numele de utilizator. Următorul exemplu va schimba în proprietate un fișier numit file2
la un nou proprietar cu UID de 1000
:
chown 1000 file2
Dacă un numerice proprietarul există ca un nume de utilizator, atunci dreptul de proprietate va fi transferat la numele de utilizator., Pentru a evita acest prefix ID-ul cu +
:
chown 1000 file2
Cum de a Schimba Proprietarul și Grupul unui Fișier #
Pentru a schimba atât proprietarul și grupul unui fișier utilizați chown
comanda urmată de către noul proprietar și grup separat printr-o virgulă (:
) fără a interveni spații și fișierul țintă.,id=”61de68025d”>
Cum de a Schimba Grupul unui Fișier #
Pentru a schimba doar grupul unui fișier utilizați chown
comanda urmat de două puncte (:
) și numele noului grup (fără spațiu între ele) și fișierul țintă ca un argument:
chown :GROUP FILE
comanda următoare va schimba grupul care deține un fișier numit file1
și www-data
:
chown :www-data file1
o Altă comandă pe care le puteți folosi pentru a schimba grupul de proprietate de fișiere este chgrp
.,când opțiunea recursivă nu este utilizată, comanda chown
modifică proprietatea de grup a fișierelor la care indică legăturile simbolice, nu legăturile simbolice în sine.,
De exemplu, dacă încercați pentru a schimba proprietarul și grupul simbolic link-ul symlink1
care indică /var/www/file1
, chown
va schimba dreptul de proprietate asupra fișier sau director symlink puncte pentru:
chown www-data: symlink1
sunt Șanse ca în loc de a schimba obiectivul proprietate, veți primi un „nu poate dereference ‘symlink1’: Permission denied” de eroare.
eroarea apare deoarece, în mod implicit, pe majoritatea distribuțiilor Linux, legăturile simbolice sunt protejate și nu puteți opera pe fișierele țintă., Această opțiune este specificată în /proc/sys/fs/protected_symlinks
. 1
înseamnă activat și 0
dezactivat. Vă recomandăm să nu dezactivați protecția symlink.,-R
(--recursive
) opțiune:
chown -R USER:GROUP DIRECTORY
următorul exemplu va schimba dreptul de proprietate de toate fișierele și subdirectoarele sub /var/www
director la un nou proprietar și grup numit www-data
:
chown -R www-data: /var/www
Dacă directorul conține link-uri simbolice trece -h
opțiune:
chown -hR www-data: /var/www
Alte opțiuni care pot fi utilizate atunci când recursiv schimbarea directorul de proprietate sunt -H
și -L
.,
Dacă argumentul trecut la chown
comanda este un link simbolic care indică un director, -H
opțiune va duce la comandă pentru a-l traverseze. -L
spunechown
pentru a traversa fiecare legătură simbolică într-un director întâlnit. De obicei, nu ar trebui să utilizați aceste opțiuni, deoarece s-ar putea să vă încurcați sistemul sau să creați un risc de securitate.,
, Folosind un Fișier de Referință #
--reference=ref_file
opțiune vă permite să modificați de utilizator și de grup proprietate de fișiere dat să fie aceleași ca și cele de referință specificată de fișier (ref_file
). Dacă fișierul de referință este un link simbolic chown
va folosi utilizatorul și grupul fișierului țintă.
chown --reference=REF_FILE FILE
De exemplu, comanda următoare va atribui de utilizator și de grup dreptul de proprietate asupra file1
și file2