Vegye figyelembe a fenti képregényt a kiváló XKCD webcomicból. A lusta fickó azt akarja, hogy a barátjuk készítsen nekik szendvicset, de nincs hatáskörük arra, hogy ezt megtegyék. Vagyis addig, amíg meg nem hívja a hatalmas sudo parancsot. Ezt követően szendvics készül így vagy úgy.
Bár a való életben a sudo kipróbálása a való életben valószínűleg nem lesz olyan hatékony, a varázslatos parancs az, amely túlhalad minden akadályon a Linux világában. Mi a sudo? Miért is létezik? A válasz abban rejlik, hogy a Linux hogyan kezeli az engedélyeket.
A Linux felhasználói engedélyek megértése
A Linux az operációs rendszerek biztonságos kezelési rendszere. Míg az olyan operációs rendszerek, mint a macOS (amely elődöket megosztott a Linuxdal) és a Windows, ebben a tekintetben ma már inkább hasonlítanak a Linuxra, az Open Source operációs rendszer még mindig kissé egyedi.
Ha megértjük, hogy a Linux hogyan kezeli az engedélyeket, akkor sokkal könnyebb megkerülni a sudo parancsot. Minden modern operációs rendszer rendelkezik „rendszergazda” vagy „root” felhasználói jogosultsági szinttel. Ha rendszergazdai vagy gyökérfiókja van, megváltoztathat bármilyen beállítást, törölhet minden adatot, és általában bármit megtehet a számítógéppel.
Ez magában foglalja azokat a dolgokat, amelyeket valószínűleg nem szabad megtenni, amelyek adatvesztéshez vagy teljes törléshez és újratelepítéshez vezethetnek.
A Linux nem A root felhasználói szintű engedélyeket nem teszi alapértelmezetté. Ehelyett fiókja nem juthat el a rendszer valóban érzékeny részein anélkül, hogy megemelné az engedély szintjét. Ez azt jelenti, hogy a rendszer megkéri Önt, hogy adja meg a rendszergazda jelszavát, ha grafikus felületen valami szokatlan dolgot szeretne megtenni.
Ha azonban a Terminál parancssorral akarja elvégezni a dolgokat, a sudo a legbiztonságosabb és ennek leghatékonyabb módja.
Sudo és a terminál
Kétféle módon adhat magának magasabb szintű engedélyeket a Linuxban. Az egyik az, hogy véglegesen root felhasználóként jelentkezzünk be. A probléma ezzel az, hogy bárki más, aki hozzáférhet a számítógéphez, pusztítást végezhet, és még te is véletlenül. A Sudo csak rövid ideig emeli meg az engedélyeket az azt követő parancsok végrehajtásához.
Sudo Syntax
A Sudo szintaxisa (a parancs formátuma) egyszerű. Egyszerűen írja be a „sudo” parancsot, majd a végrehajtani kívánt parancsot.
Például a „sudo apt-get update” frissíti az összes vonatkozó alkalmazástárat, amely szerepel a vonatkozó fájl. Ha sudo nélkül próbálta futtatni, hibaüzenetet kap, amely arról tájékoztatja, hogy nincs engedélye. Egyébként általában ez az első sudo parancs, amelyet futtatni kíván a kedvenc Linux-terjesztő új telepítése után.
A „Su” szudóban
A sudo „su” rövidítése a „superuser” kifejezés, és ez egy önálló parancs. A „su” paranccsal megváltoztathatja, hogy a sudo mely felhasználói jogosultságokra emel.
Bár a sudo ideiglenesen root-ra emeli, a su megfelelő privilégiumokkal rendelkező másik felhasználóvá vált. Ez jelentéktelen megkülönböztetésnek tűnhet, de jó okok vannak arra, hogy megváltoztassák azt a fiókot, amelyre a sudo felhasználót emel.
Először is, a fiókváltás azt jelenti, hogy a rendszeres felhasználók nem ismerik a root jelszót. Másodszor, van egy napló az összes sudo parancsról, ami azt jelenti, hogy a rendszergazda (root) meg tudja keresni, hogy ki adott ki su parancsokat.
A su szintaxisa lényegében megegyezik a sudo-val:
Su USERNAME -c COMMAND
Cserélje ki a USERNAME szót a kívánt felhasználóra a parancs futtatásához, a COMMAND pedig a futtatni kívánt Linux paranccsal.
Ha több parancsot szeretne futtatni más felhasználóként, egyszerűen használja:
Su USER
Cserélje ki a USER szót a kívánt felhasználói fiók identitására.
Ha önállóan használja a su szoftvert, akkor a Linux áttér a másik felhasználói fiókra, amíg nem használja az „exit” parancsot. Fontos, hogy ne feledje ezt vagy azt a felhasználót, aki a terminál eléréséhez az adott munkamenetben továbbra is megemelt engedélyekkel rendelkezik. Ezért általában jobb, ha a sudo-t használja a su helyett.
A Sudo Time Limit
A sudo parancs első használatakor Meg kell adnom egy jelszót. Ezután a jelszó 15 percig érvényes marad. Megváltoztathatja ezt az alapértelmezett értéket a sudo visudoparancs futtatásával, és az „timestamp_timeout =” hosszabb vagy rövidebb értékre váltásával. Mindazonáltal nem javasoljuk, hogy ezt tegye, hacsak nincs jó oka arra, hogy meghosszabbítsa vagy lerövidítse, mennyi ideig marad érvényben a sudo jelszó.
Sudo opció kapcsolók
Bár a sudo szintaxis egyszerű, több kapcsolóról érdemes tudni. Ezek a parancsok további információkat nyitnak meg, vagy segítenek a sudo munkamenet vezérlésében:
Sokkal több opció van beépítve a sudo-ba, és mindegyiket megtekintheti a fent felsorolt első -h kapcsolóval.
A fenti képernyőkép az eredmény, amikor használja a súgó opció.
Hasznos Sudo parancsok
Tehát mely sudo által engedélyezett parancsokat kell tudni minden Linux felhasználónak? A sudo apt-get frissítésről már volt szó, de vegye figyelembe ezeket is:
Valószínűleg ezek az első sudo parancsok, amelyeket használnia kell, de ahogy fentebb megtudta, bármelyik parancs követheti a sudo-t, de csak olyanokat használjon, amelyekhez magasabb jogosultságokra van szükség.