Android

Sudo parancs a linuxban

Linux Mind #41 - Asztali felületek - 1. rész | Gnome 3 - Első fejezet

Linux Mind #41 - Asztali felületek - 1. rész | Gnome 3 - Első fejezet

Tartalomjegyzék:

Anonim

A sudo parancs lehetővé teszi a programok futtatását egy másik felhasználóként, alapértelmezés szerint a root felhasználó számára. Ha sok időt tölt a parancssorban, akkor a sudo az egyik parancs, amelyet elég gyakran használ.

A sudo használata a root felhasználóként való bejelentkezés helyett biztonságosabb, mert korlátozott adminisztrációs jogosultságokat adhat az egyes felhasználóknak anélkül, hogy tudnák a root jelszót.

Ebben az oktatóanyagban elmagyarázzuk, hogyan kell használni a sudo parancsot.

A Sudo telepítése (a sudo parancs nem található)

A sudo csomag előre telepítve van a legtöbb Linux disztribúcióra.

Annak ellenőrzéséhez, hogy a sudo csomag telepítve van-e a rendszerén, nyissa meg a konzolt, írja be a sudo , és nyomja meg az Enter billentyűt. Ha telepítette a sudo-t, akkor a rendszer rövid súgó üzenetet jelenít meg, különben a sudo command not found hasonlót fog sudo command not found .

Ha a sudo nincs telepítve, akkor könnyen telepítheti a disztribúció csomagkezelőjével.

Telepítse a Sudo szoftvert az Ubuntu és a Debian rendszerre

apt install sudo

Telepítse a Sudo-t a CentOS-ra és a Fedora-ra

yum install sudo

Felhasználó hozzáadása a Sudoershez

A legtöbb sudo hozzáférést biztosító Linux disztribúció alapértelmezés szerint olyan egyszerű, mint a felhasználó felvétele a sudoers fájlban meghatározott sudo csoportba. A csoport tagjai bármilyen parancsot rootként futtathatnak. A csoport neve terjesztésenként eltérhet.

RedHat alapú disztribúciókon, például a CentOS és a Fedora, a sudo csoport neve a wheel . A felhasználó felvétele a csoportfutáshoz:

usermod -aG wheel username

Debian, Ubuntu és származékaik esetében a sudo csoport tagjai számára sudo hozzáférés biztosított:

usermod -aG sudo username

Az Ubuntu gyökér felhasználói fiókja biztonsági okokból alapértelmezés szerint le van tiltva, és a felhasználókat arra ösztönzik, hogy a rendszer adminisztrációs feladatát hajtsák végre a sudo segítségével. Az Ubuntu telepítő által létrehozott kezdeti felhasználó már tagja a sudo csoportnak, tehát ha Ubuntu fut, akkor valószínű, hogy a bejelentkezett felhasználó már rendelkezik sudo jogosultságokkal.

Például annak engedélyezéséhez, hogy a linuxize felhasználó csak az mkdir parancsot linuxize futtassa, írja be:

sudo visudo

és illessze be a következő sort:

linuxize ALL=/bin/mkdir

A legtöbb rendszeren a visudo parancs megnyitja az /etc/sudoers fájlt a vim szövegszerkesztővel. Ha nincs tapasztalata a vim-rel, olvassa el a fájl mentésének és a vim-szerkesztőből való kilépésről szóló cikkünket.

Azt is engedélyezheti, hogy a felhasználók jelszó megadása nélkül futtassák a sudo parancsokat:

linuxize ALL=(ALL) NOPASSWD: ALL

Hogyan kell használni a Sudo-t?

A sudo parancs szintaxisa a következő:

sudo OPTION.. COMMAND

A sudo parancsnak számos olyan opciója van, amelyek szabályozzák a viselkedését, de általában a sudo a legalapvetőbb formájában kerül felhasználásra, opció nélkül.

A sudo használatához egyszerűen prefixálja a parancsot a sudo paranccsal:

sudo command

Ahol a command az a parancs, amelyet használni szeretne.

A Sudo elolvassa az /etc/sudoers fájlt, és ellenőrzi, hogy a felhívó felhasználónak engedélyezett-e a sudo assessment. Amikor először használja a sudo-t egy munkamenetben, a rendszer kéri, hogy adja meg a felhasználói jelszót, és a parancs gyökérként kerül végrehajtásra.

Például, hogy felsorolja az összes fájlt a /root könyvtárban, amelyet használni szeretne:

sudo ls /root

password for linuxize:….bashrc.cache.config.local.profile

Jelszó időtúllépése

Alapértelmezés szerint a sudo öt perces inaktivitás után újból beírja a jelszavát. Az alapértelmezett időtúllépést a sudoers fájl szerkesztésével módosíthatja. Nyissa meg a fájlt a visudo :

sudo visudo

Az alapértelmezett időtúllépést az alábbi sor hozzáadásával állíthatja be, ahol 10 a percekben megadott időkorlát:

Defaults timestamp_timeout=10

Defaults:user_name timestamp_timeout=10

Futtasson egy parancsot, mint root felhasználó

Rossz a felfogás, hogy a sudo t csak a root felhasználó root jogosultságainak megadására használják. Valójában a sudo paranccsal futtathatja a parancsot, mint bármely felhasználó.

A -u opció lehetővé teszi a parancs megadott felhasználóként történő futtatását.

A következő példában a sudo t használjuk a whoami parancs futtatására „richard” felhasználóként:

sudo -u richard whoami

A whoami parancs kinyomtatja a parancsot futtató felhasználó nevét:

richard

Hogyan lehet átirányítani a Sudo segítségével

sudo echo "test" > /root/file.txt

bash: /root/file.txt: Permission denied

Ez azért történik, mert a kimenetek „ > ” átirányítását a bejelentkezett felhasználó alatt hajtják végre, nem pedig a sudo által megadott felhasználó alatt. Az átirányítás a sudo parancs meghívása előtt történik.

Az egyik megoldás az, hogy egy új héjat gyökérként hív fel a sudo sh -c :

sudo sh -c 'echo "test" > /root/file.txt'

Egy másik lehetőség az, hogy a kimenetet rendes felhasználóként a tee parancsra továbbítsák, az alább látható módon:

echo "test" | sudo tee /root/file.txt

Következtetés

Megtanulta a sudo parancs használatát és az új felhasználók létrehozását sudo jogosultságokkal.

terminál sudo