Android

Kako rekurzivno mijenjati dozvole datoteke u Linuxu

Meteor: a better way to build apps by Roger Zurawicki

Meteor: a better way to build apps by Roger Zurawicki

Sadržaj:

Anonim

Linux je višekorisnički sustav, a pristup datotekama kontrolira se putem dopuštenja datoteka, atributa i vlasništva. To osigurava da samo ovlašteni korisnici i procesi mogu pristupiti datotekama i mapama.

Dodatne informacije o dozvolama datoteka potražite u odjeljku "Umask Command u Linuxu"., objasnit ćemo kako rekurzivno mijenjati dopuštenja datoteka i mapa.

Chmod rekurzivni

Naredba chmod omogućuje vam da promijenite dopuštenja datoteka koristeći simbolički ili numerički način rada.

Da biste rekurzivno radili na svim datotekama i mapama u datoj mapi, koristite naredbu chmod s opcijom -R , ( --recursive ). Opća sintaksa za rekurzivnu promjenu dozvola datoteke je sljedeća:

chmod -R MODE DIRECTORY

Na primjer, da biste promijenili dopuštenja za sve datoteke i poddirektoriju u direktoriju /var/www/html u 755 , upotrijebili biste:

chmod -R 755 /var/www/html

Način se također može odrediti simboličkom metodom:

chmod -R u=rwx, go=rx /var/www/html

Samo root, vlasnik datoteke ili korisnik s privilegijama sudo može promijeniti dopuštenja datoteke. Budite posebno oprezni kad rekurzivno mijenjate dozvole za datoteke.

Korištenje Naredbe za find

Općenito, datoteke i mape ne trebaju imati ista dopuštenja. Većina datoteka ne zahtijeva dozvolu izvršenja, dok morate imati dozvole izvršenja u direktorijima da biste ih promijenili.

Najčešći je scenarij rekurzivna promjena dopuštenja datoteke web stranice na 644 i dozvole direktorija u 755 .

Pomoću numeričke metode:

find /var/www/html -type d -exec chmod 755 {} ; find /var/www/html -type f -exec chmod 644 {} ;

Pomoću simboličke metode:

find /var/www/html -type d -exec chmod u=rwx, go=rx {} ; find /var/www/html -type f -exec chmod u=rw, go=r {} ;

Naredba find traži datoteke ili direktorije pod /var/www/html i prosljeđuje svaku pronađenu datoteku ili mapu naredbi chmod da bi postavila dozvole.

Kada koristite find with -exec , naredba chmod se izvodi za svaki pronađeni unos. Upotrijebite naredbu xargs za ubrzavanje operacije unošenjem više unosa odjednom:

find /var/www/html -type d -print0 | xargs -0 chmod 755 find /var/www/html -type d -print0 | xargs -0 chmod 755 find /var/www/html -type f -print0 | xargs -0 chmod 644 find /var/www/html -type f -print0 | xargs -0 chmod 644

Zaključak

Naredba chmod s opcijama -R omogućava vam rekurzivnu promjenu dopuštenja datoteke.

Da biste rekurzivno postavili dopuštenja datoteka na temelju njihove vrste, koristite chmod u kombinaciji s naredbom find .

chmod terminal