Kakšna je razlika med Sudom in Su v Linuxu?
Če ste uporabnik Linuxa, ste verjetno videli reference na sudo in su. Članki o How-To Geek in drugje narekujejo uporabnikom Ubuntuja, da uporabijo sudo in druge distribucije Linuxovih uporabnikov, da uporabijo su, toda kakšna je razlika?
Sudo in su dva različna načina za pridobitev rootovih pravic. Vsaka deluje na drugačen način, različne distribucije Linuxa pa privzeto uporabljajo različne konfiguracije.
Osnovni uporabnik
Oba su in sudo se uporabljata za izvajanje ukazov s korenskimi dovoljenji. Korenski uporabnik je v bistvu enakovreden administratorskemu uporabniku v sistemu Windows - root uporabnik ima največ dovoljenj in lahko karkoli naredi za sistem. Običajni uporabniki na Linuxu delujejo z zmanjšanimi dovoljenji - na primer, ne morejo namestiti programske opreme ali pisati v sistemske imenike.
Če želite narediti nekaj, kar zahteva ta dovoljenja, jih boste morali pridobiti s su ali sudo.
Su proti Sudo
Ukaz su se preklopi na super uporabnika - ali korenskega uporabnika - ko ga izvedete brez dodatnih možnosti. Vnesti morate geslo korenskega računa. To ni vse, kar naredite v ukazu su - lahko ga uporabite za preklop na kateri koli uporabniški račun. Če izvedete su bob , boste pozvani, da vnesete Bobovo geslo in lupina bo preklopila na Bobov uporabniški račun.
Ko končate z izvajanjem ukazov v korenski lupini, morate vnesti izhod Če želite zapustiti korensko lupino in se vrniti v način omejenih privilegijev.
Sudo zažene en ukaz s korenskimi pravicami. Ko izvedete ukaz sudo, sistem vas bo pred zagonom pozval k vnosu gesla trenutnega uporabniškega računa ukaz kot root uporabnik. Po privzetku Ubuntu zapomni geslo za petnajst minut in ne bo ponovno zahteval gesla, dokler se ne izteče petnajst minut.
To je ključna razlika med su in sudo. Su vas preklopi na korenski uporabniški račun in zahteva geslo korenskega računa. Sudo zažene en ukaz s korenskimi pravicami - ne preklopi na korenskega uporabnika ali zahteva ločeno korensko uporabniško geslo.
Ubuntu in druge distribucije Linuxa
Ukaz su je tradicionalni način pridobivanja korenskih dovoljenj za Linux. Ukaz sudo je obstajal že dolgo časa, vendar je bil Ubuntu prvi popularni distribuciji Linuxa, ki je bil privzeto sudo-samo. Ko namestite Ubuntu, se ustvari standardni korenski račun, vendar mu ni dodeljeno geslo. Ne morete se prijaviti kot root, dokler ne dodelite gesla korenskemu računu.
Privzeto je, da uporabljate sudo, namesto su pa nekaj prednosti. Uporabniki Ubuntuja morajo samo zagotoviti in si zapomniti eno samo geslo, medtem ko Fedora in druge distribucije zahtevajo, da med namestitvijo ustvarite ločena gesla za koren in uporabniški račun..
Druga prednost je, da uporabnike odvrača od prijavljanja kot korenskega uporabnika - ali z uporabo su, da dobijo korensko lupino - in ohrani korensko lupino odprto, da opravi svoje običajno delo. Izvajanje manjšega števila ukazov kot root poveča varnost in preprečuje nenamerne sistemske spremembe.
Distribucije, ki temeljijo na Ubuntuju, vključno z Linux Mint, privzeto uporabljajo tudi sudo namesto su.
Nekaj trikov
Linux je fleksibilen, zato ni potrebno veliko dela, da bi bilo delo s sudo podobno kot sudo - ali obratno.
Če želite zagnati en ukaz kot root uporabnik s su, zaženite naslednji ukaz:
su -c 'ukaz'
To je podobno zagonu ukaza s sudo, vendar boste namesto gesla trenutnega uporabniškega računa potrebovali geslo korenskega računa.
Če želite dobiti popolno interaktivno korensko lupino s sudo, zaženite sudo -i.
Namesto gesla korenskega računa morate vnesti geslo trenutnega uporabniškega računa.
Omogočanje korenskega uporabnika v Ubuntuju
Če želite omogočiti root uporabniški račun v Ubuntuju, uporabite naslednji ukaz za nastavitev gesla. Upoštevajte, da Ubuntu to priporoča.
sudo passwd root
Sudo vas bo pozval, da vnesete geslo vašega trenutnega uporabniškega računa, preden lahko nastavite novo geslo. Uporabite novo geslo, da se prijavite kot koren iz poziva za prijavo v terminal ali s ukazom su. Nikoli ne bi smeli zagnati polnega grafičnega okolja kot root uporabnika - to je zelo slaba varnostna praksa in mnogi programi bodo zavrnili delo.
Dodajanje uporabnikov v datoteko Sudoers
Samo Ubuntu računi tipa administrator lahko izvajajo ukaze s sudo. Vrsto uporabniškega računa lahko spremenite v oknu z nastavitvami uporabniških računov.
Ubuntu samodejno določi uporabniški račun, ustvarjen med namestitvijo kot skrbniški račun.
Če uporabljate drugo distribucijo Linuxa, lahko uporabniku odobrite dovoljenje za uporabo sudo z zagonom visudo s korenskimi pravicami (zato zaženite su najprej uporabite su -c).
Dodajte naslednjo vrstico v datoteko, ki jo zamenjate uporabnika z imenom uporabniškega računa:
uporabnik ALL = (VSE: VSE) VSE
Pritisnite Ctrl-X in potem Y , da shranite datoteko. Uporabnika lahko dodate tudi v skupino, ki je navedena v datoteki. Uporabniki v skupinah, določenih v datoteki, bodo samodejno imeli privilegije sudo.
Grafične različice Su
Linux podpira tudi grafične različice su, ki zahtevajo geslo v grafičnem okolju. Na primer, za zagon grafičnega gesla lahko zaženete naslednji ukaz in zaženete brskalnik datotek Nautilus z koreninskimi dovoljenji. Pritisnite Alt-F2 za zagon ukaza iz grafičnega pogovornega pogona brez zagona terminala.
gksu nautilus
Ukaz gksu ima tudi nekaj drugih trikov, ki ohranjajo vaše trenutne nastavitve namizja, zato grafični programi ne bodo videti neprimerni, ko jih zaženete kot drugega uporabnika. Programi, kot je gksu, so najprimernejši način za zagon grafičnih aplikacij s korenskimi pravicami.
Gksu uporablja su-ali sudo-backend, odvisno od distribucije Linuxa, ki jo uporabljate.
Zdaj morate biti pripravljeni na srečanje s su in sudo! Videli boste tako, če uporabljate različne distribucije Linuxa.