Koja je razlika između Sudo i Su u Linuxu?
Ako ste korisnik Linuxa, vjerojatno ste vidjeli reference na sudo i su. Članci ovdje o How-To Geek i drugdje uputiti Ubuntu korisnik to iskoristiti sudo i ostali Linux distribucija 'korisnik za korištenje su, ali što je razlika \ t?
Sudo i su dva različita načina za stjecanje root prava. Svaka od njih funkcionira na drugačiji način, a različite Linux distribucije podrazumijevano koriste različite konfiguracije.
Korijenski korisnik
Su i sudo koriste se za izvo enje naredbi s root dopuštenjima. Korisnik root-a u osnovi je ekvivalent administratorskom korisniku u sustavu Windows - korijenski korisnik ima maksimalne dozvole i može učiniti bilo što sustavu. Normalni korisnici na Linuxu rade s smanjenim dozvolama - na primjer, ne mogu instalirati softver ili pisati u sistemske direktorije.
Da biste učinili nešto što zahtijeva te dozvole, morat ćete ih nabaviti sa su ili sudo.
Su protiv Sudo
Naredba su se prebacuje na super korisnika - ili korijenski korisnik - kada ga izvršavate bez dodatnih opcija. Morat ćete unijeti zaporku root računa. To nije sve što naredba su radi - možete je koristiti za prebacivanje na bilo koji korisnički račun. Ako izvršite su bob naredbu, morat ćete unijeti Bobovu lozinku, a ljuska će se prebaciti na Bobov korisnički račun.
Kada završite s izvršavanjem naredbi u korijenskoj ljusci, trebate upisati Izlaz da napustite korijensku ljusku i vratite se na način ograničenih privilegija.
Sudo pokreće jednu naredbu s root privilegijama. Kada izvršite sudo naredba, sustav će od vas zatražiti da unesete lozinku vašeg trenutnog korisničkog računa prije pokretanja naredba kao korijenski korisnik. Prema zadanim postavkama Ubuntu pamti lozinku petnaest minuta i neće ponovno tražiti lozinku dok ne istekne petnaest minuta.
To je ključna razlika između su i sudo. Su vas prebacuje na root korisnički račun i zahtijeva lozinku za rootov račun. Sudo pokreće jednu naredbu s root privilegijama - ne prebacuje se na korijenskog korisnika niti zahtijeva zasebnu root korisničku lozinku.
Ubuntu vs. Ostale Linux distribucije
Naredba su tradicionalni način stjecanja root dopuštenja na Linuxu. Sudo naredba postoji već dugo vremena, ali Ubuntu je bio prva popularna Linux distribucija koja je po defaultu bila sudo-samo. Kada instalirate Ubuntu, kreira se standardni korijenski račun, ali mu nije dodijeljena lozinka. Ne možete se prijaviti kao root dok ne dodijelite lozinku root računu.
Postoji nekoliko prednosti korištenja sudo umjesto su po defaultu. Korisnici Ubuntua moraju pružiti i zapamtiti samo jednu lozinku, dok Fedora i druge distribucije zahtijevaju stvaranje zasebnih lozinki korijena i korisničkih računa tijekom instalacije.
Još jedna prednost je to što obeshrabruje korisnike da se prijave kao korijenski korisnik - ili da koriste su kako bi dobili korijensku ljusku - i držeći korijensku ljusku otvorenom za obavljanje njihovog normalnog posla. Pokretanje manje naredbi kao root povećava sigurnost i sprječava slučajne promjene na razini sustava.
Distribucije bazirane na Ubuntuu, uključujući Linux Mint, također koriste sudo umjesto su po defaultu.
Nekoliko trikova
Linux je fleksibilan, tako da ne treba puno raditi kako bi su su radili slično sudo - ili obrnuto.
Da biste pokrenuli jednu naredbu kao korijenski korisnik sa su, pokrenite sljedeću naredbu:
su -c 'naredba'
To je slično pokretanju naredbe s sudo, ali trebat će vam lozinka root računa umjesto lozinke trenutnog korisničkog računa.
Da biste dobili punu, interaktivnu korijensku ljusku sa sudo, pokrenite sudo -i.
Morat ćete unijeti zaporku trenutnog korisničkog računa umjesto lozinke root računa.
Omogućavanje osnovnog korisnika u Ubuntuu
Da biste omogućili root korisnički račun na Ubuntuu, koristite sljedeću naredbu za postavljanje lozinke za nju. Imajte na umu da Ubuntu preporučuje ovo.
sudo passwd root
Sudo će od vas zatražiti lozinku vašeg trenutnog korisničkog računa da biste mogli postaviti novu zaporku. Koristite svoju novu lozinku za prijavu kao root iz prompta za prijavu na terminal ili s naredbom su. Nikada nemojte pokrenuti potpuno grafičko okruženje kao korijenski korisnik - to je vrlo loša sigurnosna praksa, a mnogi programi odbijaju raditi.
Dodavanje korisnika u Sudoers datoteku
Samo računi administratora u Ubuntuu mogu izvoditi naredbe sa sudo. Tip korisničkog računa možete promijeniti u prozoru Konfiguracija korisničkih računa.
Ubuntu automatski određuje korisnički račun stvoren tijekom instalacije kao administratorski račun.
Ako koristite drugu distribuciju Linuxa, korisniku možete dodijeliti dozvolu za korištenje sudo pokretanjem visudo naredba s root privilegijama (pokrenite Su ili koristiti su -c).
Dodajte sljedeći redak u datoteku i zamijenite je korisnik s nazivom korisničkog računa:
korisnik ALL = (SVE: SVE) SVE
tisak Ctrl-X i onda Y za spremanje datoteke. Također možete dodati korisnika u skupinu navedenu u datoteci. Korisnici u grupama navedenim u datoteci automatski imaju privilegije sudo.
Grafičke verzije Su
Linux također podržava grafičke verzije su, koje traže vašu lozinku u grafičkom okruženju. Na primjer, možete pokrenuti sljedeću naredbu da biste dobili upit za grafičku lozinku i pokrenuli preglednik datoteka Nautilus s korijenskim dozvolama. tisak Alt-F2 za pokretanje naredbe iz grafičkog dijaloga izvođenja bez pokretanja terminala.
gksu nautilus
Naredba gksu također ima nekoliko drugih trikova u rukavu - čuva vaše trenutne postavke na radnoj površini, tako da grafički programi neće izgledati neumjesno kada ih pokrenete kao drugog korisnika. Programi kao što je gksu preferirani su način pokretanja grafičkih aplikacija s root pravima.
Gksu koristi ili su ili sudo-bazirani backend, ovisno o Linux distribuciji koju koristite.
Sada biste trebali biti spremni susresti su i sudo! Vidjet ćete i jedno i drugo ako koristite različite Linux distribucije.