Kako se koristi naredba sudo

Na većini Linux sustava postoje dvije osnovne vrste korisničkih računa: The korijenski korisnik (koji se također naziva “super korisnik”) i normalan korisnik.

Korijenski korisnički račun je poseban račun koji ima puni pristup bilo kojem programu i svim datotekama u sustavu. Obični korisnički račun ima pristup samo vlastitom početnom direktoriju, bilo kojem općenito dostupnom programu i datotekama te potencijalno bilo kojem programu i datotekama kojem je korisnik odobrio pristup (korijenski korisnik).

Ovo podrazumijeva da postoje programi i datoteke kojima normalan korisnik nema zadani pristup. Na primjer, normalan korisnik ne može upotrijebiti alate apt-get i dpkg upravitelja paketa za instaliranje ili ažuriranje paketa na Debian / Ubuntu sustavu. Ova vrsta korisnika također ne može uređivati ​​nikakve globalne konfiguracijske datoteke koje se nalaze u “/ etc” direktoriju. Postoje i mnoge druge situacije poput ovih primjera.

Kako bismo normalnim korisnicima omogućili obavljanje određenih zadataka s povlasticama korijenskog korisnika, a ne davali im lozinku za korijen, možemo koristiti sudo alat.

Pomoću sudo-a moguće je korisnicima odobriti pristup određenim naredbama na određenim domaćinima ili im jednostavno odobriti pristup onome što korijenski korisnik može učiniti. Sudo također zabilježi svaku izvršenu naredbu u datoteku dnevnika (/var/log/auth.log), tako da administrator sustava može paziti što se radi sa sudom.

Sudo konfiguracija

Da biste naučili kako konfigurirati sudo za određene korisnike i uz određena ograničenja, pogledajte ove vodiče:

  • Kako urediti datoteku Sudoers na Ubuntu i CentOS-u
  • Kako dodati, izbrisati i dodijeliti Sudove povlastice korisnicima na Debian VPS-u

Da biste saznali koja točno sudo dopuštenja imate na vašem sustavu, pokrenite sljedeću naredbu:

1 sudo -l

To bi moglo rezultirati sljedećim izlazom za primjer korisnika “john” na host “server1”:

1
2
3
4
5

Odgovarajući zadani unosi za john na server1:

env_reset, mail_badpass, secure_path = / usr / local / sbin: / usr / local / bin: / usr / sbin: / usr / bin: / sbin: / bin

 

Korisnik john može pokrenuti sljedeće naredbe na server1:

(SVE: SVE) SVE

Zadnji redak znači da ovaj korisnik može izvesti sudo na svim domaćinima kao i bilo koji ciljni korisnik za bilo koju naredbu.

Opcije naredbe Sudo

Ovo je sažetak opcija naredbe sudo koje ćemo koristiti u ovom vodiču:

  • -l: navesti dopuštenja sudo poziva korisnika
  • -u: pokrenite naredbu kao drugi korisnik
  • -e: uredite jednu ili više datoteka umjesto izvršavanja naredbe
  • sudoedit alias za “sudo -e”

Primjeri Sudo naredbe

Da biste naredili naredbe kao korijenski korisnik, upotrijebili biste sljedeću sintaksu:

1 <em>sudo</ em> naredba

Omogućuje instalaciju softvera za kontrolu verzije “git” pomoću apt-get upravitelja paketa. Ako bismo to pokušali bez upotrebe sudo-a:

1 apt-get install git

Dobili bismo ovu poruku o pogrešci:

1
2

E: Ne mogu se otvoriti zaključana datoteka / var / lib / dpkg / lock – otvoriti (13: Dozvola odbijena)

E: Nije moguće zaključati administracijski direktorij (/ var / lib / dpkg /), jesi root?

Međutim, ako sada dodamo naredbu sudo prije naše prethodne naredbe, od nas će se tražiti da prvo popunimo vlastitu lozinku, nakon čega će sustav izvršiti našu naredbu s povlasticama root korisnika:

1 sudo apt-get install git

Sa sudo-om također možemo izvoditi naredbe kao korisnik osim korijena pomoću opcije -u. Ovo može biti korisno u slučajevima kada određeni programi očekuju određeno korisničko okruženje (tj. Za korisnike mysql ili postgres baze podataka). Sintaksa za to je:

1 naredba korisničkog imena sudo -u

Da bismo pokrenuli desktop (grafički prozor) kao drugi korisnik, trebamo koristiti naredbu gksu.

Na primjer, otvorili bismo sinaptički (frontend upravitelja paketa Debian / Ubuntu) poput ovog iz naredbenog retka (umjesto da prolazimo kroz sustav izbornika radne površine):

1 gksu sinaptik

Zatražit će se da unesete lozinku u grafički prozor, nakon čega naredba započinje izvršenje.

Da biste uredili datoteku kao korijenski korisnik umjesto izvršavanja naredbe:

1 sudo -e / etc / ime domaćina

Mogli ste koristiti naredbu sudoedit, što je jednostavno prečac za sudo -e.

1"sudoedit / etc / ime domaćina"

Imajte na umu da možete promijeniti uređivač koji se ovdje koristi.

Možete jednostavno i izvršiti svoj omiljeni uređivač:

1 sudo vim / etc / ime domaćina

Ako trebate imati root ovlasti za mnogo različitih naredbi, ponekad vam može biti korisno postati korijenski korisnik. Ova naredba funkcionirat će samo ako korisnik koji poziva koji ima prava za izvršavanje naredbe su (također se naziva zamjenski korisnik, super korisnik, ili promijeni korisnika). Prema zadanim postavkama, bez ikakvog drugog argumenta naredbenog retka, ovo će trenutnog korisnika uzdići matičnom korisniku lokalnog sustava.

1Su

Sada možete obaviti niz zadataka koji zahtijevaju korisničke privilegije. Pazite, međutim, da se ne dogodi pustoš s tim upornim supersilama.

Jeffrey Wilson Administrator
Sorry! The Author has not filled his profile.
follow me