Mi a különbség Sudo és Su között a Linuxban?

Ha Linux felhasználó vagy, valószínűleg láttál hivatkozásokat mind a sudo-ra, mind a su-ra. A How-To Geek és más cikkek itt arra utasítják az Ubuntu felhasználókat, hogy a sudo és a Linux disztribúció többi felhasználóját használják a su használatára, de mi a különbség?

A Sudo és a su két különböző módszer a root jogosultságok megszerzésére. Mindegyik másképpen működik, és a különböző Linux disztribúciók alapértelmezés szerint különböző konfigurációkat használnak.

A root felhasználó

A su és a sudo parancsokat root parancsokkal futtatják. A root felhasználó alapvetően megegyezik a Windows rendszergazdai felhasználójával - a root felhasználó maximális engedélyekkel rendelkezik, és bármit megtehet a rendszerrel. A normál felhasználók a Linuxon csökkentett jogosultságokkal futnak - például nem tudnak szoftvert telepíteni vagy a rendszerkönyvtárakba írni.

Ahhoz, hogy megtehesse ezeket az engedélyeket, meg kell szereznie őket a su vagy a sudo használatával.

Su kontra Sudo

A su parancs átvált a szuperfelhasználóra - vagy root felhasználóra -, ha további opciók nélkül hajtja végre. Meg kell adnia a root fiók jelszavát. Ez nem minden, amit a su parancs elvégez - használhatja bármely felhasználói fiókra váltásra. Ha végrehajtja a su bob parancsot, a rendszer kéri, hogy adja meg Bob jelszavát, és a shell átvált Bob felhasználói fiókjára.

Miután befejezte a parancsok futtatását a gyökérhéjban, írja be az exit parancsot, hogy elhagyja a gyökérhéjat, és visszatérjen a korlátozott jogosultságú módba.

A Sudo egyetlen parancsot futtat root jogosultságokkal. A sudo parancs végrehajtásakor a rendszer kéri az aktuális felhasználói fiók jelszavát, mielőtt root parancsként futtatná a parancsot . Alapértelmezés szerint az Ubuntu tizenöt percig emlékszik a jelszóra, és nem kér újra jelszót, amíg a tizenöt perc le nem telik.

Ez a legfontosabb különbség a su és a sudo között. Su átvált a root felhasználói fiókra, és megköveteli a root fiók jelszavát. A Sudo egyetlen parancsot futtat root jogosultságokkal - nem vált át a root felhasználóra, és nem igényel külön root felhasználói jelszót.

Ubuntu vs. egyéb Linux disztribúciók

A su parancs a gyökérengedélyek megszerzésének hagyományos módja Linux rendszeren. A sudo parancs már régóta létezik, de az Ubuntu volt az első népszerű Linux disztribúció, amely alapértelmezés szerint csak sudo-ra vált. Az Ubuntu telepítésekor létrejön a szokásos gyökérfiók, de nem rendelünk hozzá jelszót. Addig nem tud bejelentkezni root felhasználóként, amíg jelszót nem rendelt a root fiókhoz.

Számos előnye van a sudo alapértelmezett su használatának. Az Ubuntu felhasználóknak csak egyetlen jelszót kell megadniuk és megjegyezniük, míg a Fedora és más disztribúciók megkövetelik, hogy külön root és felhasználói fiók jelszavakat hozzon létre a telepítés során.

További előny, hogy nem ösztönzi a felhasználókat arra, hogy root felhasználóként jelentkezzenek be - vagy a su használatával gyökérhéjhoz jussanak -, és hogy a gyökérhéjat nyitva tartsák normál munkájuk elvégzéséhez. Kevesebb parancs futtatása rootként növeli a biztonságot és megakadályozza a véletlenszerű, az egész rendszerre kiterjedő változásokat.

Az Ubuntun alapuló disztribúciók, köztük a Linux Mint is alapértelmezés szerint a sudo-t használják a su helyett.

Néhány trükk

A Linux rugalmas, ezért nem kell sok munka ahhoz, hogy a su hasonlóan működjön, mint a sudo - vagy fordítva.

Egyetlen parancs futtatásával root felhasználóként futtassa a következő parancsot:

su -c 'parancs'

Ez hasonló a sudo-val történő parancs futtatásához, de az aktuális felhasználói fiók jelszava helyett a root fiók jelszavára lesz szükség.

Ha teljes, interaktív root shell-t szeretne kapni a sudo használatával, futtassa a sudo –i parancsot.

Meg kell adnia az aktuális felhasználói fiók jelszavát a root fiók jelszavának helyett.

A root felhasználó engedélyezése az Ubuntuban

A root felhasználói fiók engedélyezéséhez az Ubuntuban a következő paranccsal állítson be jelszót hozzá. Ne feledje, hogy az Ubuntu ez ellen javasol.

sudo passwd gyökér

Az új jelszó beállítása előtt a Sudo kéri az Ön jelenlegi felhasználói fiókjának jelszavát. Az új jelszó használatával jelentkezzen be root felhasználóként a terminál bejelentkezési parancssorából vagy az su paranccsal. Soha ne futtasson teljes grafikus környezetet root felhasználóként - ez nagyon rossz biztonsági gyakorlat, és sok program nem hajlandó működni.

Felhasználók hozzáadása a Sudoers fájlhoz

Csak az Ubuntu rendszergazdai típusú fiókok futtathatnak parancsokat sudo-val. A felhasználói fiók típusát a Felhasználói fiókok konfigurációs ablakban módosíthatja.

Az Ubuntu automatikusan kijelöli a telepítés során létrehozott felhasználói fiókot rendszergazdai fiókként.

Ha egy másik Linux disztribúciót használ, akkor engedélyezheti a felhasználó számára a sudo használatát a visudo parancs futtatásával root jogosultságokkal (futtassa tehát először a su rendszert, vagy használja az su -c parancsot ).

Adja hozzá a következő sort a fájlhoz, helyettesítve a felhasználót a felhasználói fiók nevével:

felhasználó ALL = (ALL: ALL) ALL

A fájl mentéséhez nyomja meg a Ctrl-X , majd az Y gombot . Lehetséges, hogy felhasználót is hozzáadhat a fájlban megadott csoporthoz. A fájlban megadott csoportok felhasználói automatikusan sudo jogosultságokkal rendelkeznek.

Su grafikai változatai

A Linux támogatja az su grafikus verzióit is, amelyek grafikus környezetben kérik a jelszavát. Futtathatja például a következő parancsot grafikus jelszó kérésére, és futtathatja a Nautilus fájlböngészőt root jogosultságokkal. Nyomja meg az Alt-F2 billentyűt a parancs futtatásához egy grafikus futtatási párbeszédablakból, terminál indítása nélkül.

gksu nautilus

A gksu parancsnak van még néhány trükkje a hüvelyében - megőrzi az asztal jelenlegi beállításait, így a grafikus programok nem tűnnek a helyükről, amikor más felhasználóként indítják őket. Az olyan programok, mint a gksu, a gyökérjogosultsággal rendelkező grafikus alkalmazások indításának előnyös módja.

A Gksu vagy su, vagy sudo alapú háttérprogramot használ, a használt Linux disztribúciótól függően.

Most fel kell készülnie a su és a sudo találkozására is! Mindkettővel találkozhat, ha különböző Linux disztribúciókat használ.