logo

Naredba Chmod u Linuxu/Unixu s primjerima

Linux chmod naredba koristi se za promjenu dopuštenja pristupa datotekama i direktorijima. To stoji za promijeniti način rada . Ne može promijeniti dopuštenje simboličkih veza. Čak, zanemaruje simboličke veze koje nailaze na rekurzivno obilaženje direktorija.

u Linux datotečni sustav, svaka je datoteka povezana s određenim vlasnikom i ima dopuštenje pristupa za različite korisnike. Korisničke klase mogu biti:

  • vlasnik
  • član grupe
  • Ostali (Svi ostali)

Dozvole za datoteke u Linuxu su sljedeće tri vrste:

  • čitaj (r)
  • napisati (w)
  • izvršiti (x)

Kratka povijest Chmoda

Prvo, naredba chmod predstavljena je u AT&T UNIX verziji 1 sistemskim pozivom chmod. Liste za kontrolu pristupa uključene su u nekoliko datotečnih sustava u sklopu ovih najčešćih načina kako bi se poboljšala fleksibilnost jer su sustavi rasli u vrstama i broju korisnika.

Verziju chmod uređenu u GNU coreutils specificirali su Jim Meyering i David MacKenzie. Ova naredba je prisutna kao izolirani paket za Microsoft Windows kao element UnxUtils izvorne Win32 port kolekcije osnovnih uslužnih programa sličnih GNU Unixu. Također, naredba chmod je poslana u IBM i OS.

Pogledajmo kako promijeniti dopuštenje datoteke pomoću naredbe chmod.

Sintaksa:

pyspark vodič

Osnovna sintaksa naredbe chmod je sljedeća:

 chmod 

Općenito primijenjene opcije su:

    -R:Označava rekurzivno, tj. dodavanje objekata u poddirektorije.-U:Označava verbose, modificirane prikazne objekte (nemodificirani objekti se ne prikazuju).

Na ciljni objekt utječe ako se spomene simbolička veza. Tipično se ne koriste načini datoteka koji se izravno odnose na same simboličke veze.

Primarna komponenta chmod dozvole:

Na primjer, rwxr-x---

Sve grupe od tri znaka određuju dopuštenja za sve klase:

    rwx:Tri krajnja lijeva znaka određuju dopuštenja za vlasnika datoteke (tj. klasu korisnika).r-x:Tri srednja znaka određuju dopuštenja za grupu koja posjeduje datoteku (tj. klasu grupe).---:Tri krajnja desna znaka određuju dopuštenja za klasu Ostalo. Korisnici koji nisu vlasnici datoteke i članovi grupe ne mogu pristupiti datoteci.

Mogućnosti:

Naredba chmod podržava sljedeće opcije naredbenog retka:

-c, --promjene: Slična je verbose opciji, ali razlika je u tome što se prijavljuje ako je promjena napravljena.

-f, --tiho, --tiho: Koristi se za suzbijanje poruka o greškama.

-v, --opširno: Koristi se za prikaz dijagnostike za svaku obrađenu datoteku.

--no-preserve-root: Koristi se za ne tretiranje simbola obrnute kose crte ('/'), posebno (zadano).

--preserve-root: Ako se koristi ova opcija, neće uspjeti djelovati rekurzivno na obrnuto kosoj crti ('/').

--referenca=RFILE: Koristi se za određivanje načina rada RFILE-a ili vrijednosti MODE.

-R, --rekurzivno: Koristi se za rekurzivnu promjenu datoteka i direktorija.

--Pomozite: Koristi se za prikaz priručnika za pomoć s kratkim opisom mogućnosti korištenja i podrške.

--verzija: Koristi se za prikaz informacija o verziji.

Sintaksa dopuštenja datoteke

Ako ste novi korisnik, mogli biste se zbuniti s različitim vrstama slova koja se koriste za postavljanje dopuštenja datoteke. Dakle, prije nego što nastavimo s naredbom chmod, shvatimo sintaksu dopuštenja datoteke.

značajke jave

Da bismo postavili dozvolu za datoteku ili direktorij, moramo navesti sljedeće stvari:

  • Tko: Tko smo mi. (korisnik)
  • Što: Koju promjenu ćemo napraviti (kao što je dodavanje ili uklanjanje dopuštenja)?
  • Koja: Koja od dozvola?

Izjava o dopuštenju predstavljena je indikatorima kao što su u+x, u-x. Gdje 'u' označava 'korisnika', '+' označava dodavanje, '-' označava uklanjanje, 'x' označava izvršni (koji).

java usporedba nizova

Korisnička vrijednost može biti:

u: vlasnik datoteke

g: član grupe

o: drugi

a: sve

Vrste dopuštenja mogu biti r, w i x.

Postavljanje i ažuriranje dopuštenja

Da biste postavili dopuštenje datoteke, izvršite naredbu dopuštenja pomoću naredbe chmod. Na primjer, želimo postaviti dopuštenje za čitanje i pisanje za sve korisnike i grupe datoteke 'Demo.txt.' Moramo proslijediti izjavu o dopuštenju 'u=rw,go=rw Demo.txt' s naredbom chmod. Za prikaz dopuštenja datoteke, izvršite naredbu u nastavku:

 ls -l Demo.txt 

Gornja naredba prikazat će trenutnu dozvolu za datoteku 'Demo.txt'.

Da biste promijenili dopuštenje, izvršite naredbu u nastavku:

 chmod u=rw,go=rw Demo.txt 

Razmotrite donji izlaz:

Linux chmod naredba

Iz gornjeg izlaza, dozvola pristupa za 'Demo.txt' je promijenjena.

Postavljanje dopuštenja za više datoteka

Možemo postaviti dopuštenje za više datoteka odjednom pomoću naredbe chmod. Da biste promijenili dopuštenje za više datoteka, navedite uzorak datoteke pomoću naredbe chmod. Na primjer, ako želimo postaviti dopuštenje za čitanje i pisanje za sve tekstualne datoteke, navedite *. txt uzorak s naredbom chmod.

Za pregled dopuštenja svih tekstualnih datoteka iz trenutnog radnog direktorija, izvršite naredbu ispod:

 ls -l *.txt 

Popisat će sve tekstualne datoteke s njihovim načinom dopuštenja. Razmotrite donji izlaz:

Linux chmod naredba

Iz gornjeg izlaza, mnoge datoteke imaju dopuštenje samo za čitanje za druge korisnike.

Za postavljanje dopuštenja za čitanje i pisanje za druge korisnike, izvršite naredbu u nastavku:

 chmod o+w *.txt 

Postavit će dopuštenje za čitanje i pisanje za druge korisnike tekstualnih datoteka. Razmotrite donji izlaz:

Linux chmod naredba

Numerička stenografija

Možemo koristiti numeričke vrijednosti umjesto slova da odredimo dopuštenja. Za određivanje dopuštenja koristi se troznamenkasta vrijednost. Krajnja lijeva znamenka predstavlja vlasnika (u), a srednja znamenka predstavlja članove grupe (g). Krajnja desna znamenka predstavlja ostale (o).

Sljedeća tablica predstavlja znamenke i njihova dopuštenja:

Znamenke Dozvole
000 Bez dozvole
001 Izvrši dopuštenje
010 Dopuštenje za pisanje
011 Dopuštenja za pisanje i izvršavanje
100 Dopuštenje za čitanje
101 Dopuštenja za čitanje i izvršavanje
110 Dozvole za čitanje i pisanje
111 Dopuštenja za čitanje, pisanje i izvršavanje

Simbolički načini

Također, naredba chmod prihvaća finije simboličku notaciju, koja dopušta promjenu određenih načina. Simbolički način se sastoji od tri elementa, koji su spojeni u jedan tekstualni niz:

 $ chmod [references] [operator] [modes] file... 

Program chmod primjenjuje operator za definiranje načina na koji bi načini datoteke trebali biti raspoređeni. Sljedeći operateri su odobreni:

Operater Opis
+ Dodaje opisano opisanim klasama.
- Uklanja opisani način iz opisanih klasa.
= Predstavlja da se opisani modovi kreiraju kao isti modovi za opisane klase.

Načini predstavljaju koja će se dopuštenja ukloniti ili dodijeliti iz opisanih klasa. Postoje uglavnom tri uobičajena načina koji se odnose na uobičajene dozvole:

Madhuri je rekla hajde
Ime Način rada Opis
čitati r Čita datoteku ili ispisuje sadržaj direktorija.
pisati U Zapisuje u direktorij ili datoteku.
izvršiti x Rekurzira stablo direktorija ili izvršava datoteku.
posebno izvršiti x To nije dopuštenje, ali umjesto toga može se koristiti umjesto x. Koristi dopuštenja izvršavanja za direktorije unatoč njihovim trenutnim dopuštenjima i koristi dopuštenja izvršavanja za datoteku koja ima postavljen barem jedan bit dopuštenja izvršavanja. Korisno je ako se koristi s operatorom '+' i bez postavljanja dopuštenja za izvršenje što bi se dogodilo da smo samo upotrijebili chmod -R a+rx ., dok možemo implementirati chmod -R a+rx . s x radije.

Višestruke modifikacije mogu se opisati izdvajanjem višestrukih simboličkih načina zajedno sa zarezima. Naredba chmod će pregledati umask ako korisnik nije naveden.

Posebni načini rada

Također, naredba chmod može promijeniti posebne načine rada i dodatna dopuštenja direktorija ili datoteke. Simbolički načini primjenjuju 's' za označavanje načina setgid i setuid i 't' za označavanje ljepljivog načina. Način se koristi samo za ispravne klase, bez obzira na to spominju li se druge klase ili ne.

Gotovo svi operativni sustavi numerički podržavaju specifikaciju posebnog načina rada, posebno u oktalnom, ali neki ne. Na ove sustave mogu se primijeniti samo simbolički načini.

Neki primjeri naredbenog retka:

Naredba Opis
chmod a+r publicComments.txt Dodat će dopuštenje za čitanje za svaku klasu (tj. grupu, vlasnika i ostale).
chmod a-x publicComments.txt Uklonit će dopuštenje za izvršenje za svaku klasu.
chmod a+rx preglednik.sh Dodat će dopuštenja za izvršavanje i čitanje za svaku klasu.
chmod u=rw, g=r, o=unutarnjiPlan.txt Postavit će dopuštenja za pisanje i čitanje za korisnika, ser za čitanje za grupu i odbiti pristup za ostale.
chmod -R u+w, go-w dokumenti Uključit će dopuštenje za pisanje u imenik dokumenata i svaki njegov sadržaj za vlasnika i izbrisati dopuštenje za pisanje za druge i grupu.
chmod and=rw groupAgreements.txt Postavit će dopuštenja pisanja i čitanja za grupu i korisnika.
chmod 664 global.txt Postavit će dopuštenja za pisanje i čitanje za grupu i korisnika i dati dopuštenje za čitanje drugima.
chmod 744 Show_myCV.sh Postavit će dopuštenja za izvršavanje, pisanje i čitanje za korisnika i dati dopuštenje za čitanje grupi i ostalima.