a mesterMár nem tudom hol olvastam, de valahol: a "su" alapértelmezetten "su -" -vel indul. Javasolhatnak az álmoskönyvek olyat, amit mondasz :) ... én így emlékszem (Debian).
A man-jában nincs:
su(1) su(1)
NÉV
su - indít egy shellt más felhasználó- és
csoportazonosítóval
ÁTTEKINTÉS
su [-] [-flmp] [-c parancs] [-s shell] [--fast]
[--login] [--preserve-environment] [--command=parancs]
[--shell=shell] [felhasználó [argumentum...]]
su [--help] [--version]
LEÍRÁS
Az su parancs lehetővé teszi, hogy ideiglenesen más
felhasználóvá válhassunk úgy, hogy egy új shell-t indít
a kért felhasználó valós és effektív felhasználói
azonosítójával, csoportazonosítójával és másodlagos
csoportjaival. Ha nem adunk meg felhasználó-t, az
alapértelmezett érték a root (super-user). Az a shell
indul el, ami a felhasználó passwd bejegyzésében
szerepel, ha ott nincs semmi, akkor a /bin/sh. Ha a
felhasználó-nak van jelszava, akkor az su meg fogja azt
kérdezni, kivéve ha root-ként (a felhasználói azonosító
0) futtatjuk.
Alapértelmezésben az su nem változtatja meg az aktuális
könyvtárat. Átállítja a HOME és a SHELL környezeti
változókat a felhasználó password bejegyzéséből
kinézett értékekre, és ha a felhasználó nem a root (a
super-user) a USERésLOGNAME változókat a felhasználó
nevére állítja. Az alapértelmezés az, hogy az elinduló
shell nem lesz bejelentkezési shell.
Ha megadunk argumentum-ként valamit, az is átadódik az
induló shellnek.
Az su se a /bin/sh-t, se más shell-eket nem kezel
speciálisan. (ilyen az argv[0] "-su"-ra állítása, vagy
a -c paraméter csak bizonyos shelleknek való átadása,
stb.)
Azokon a rendszereken, ahol van syslog(3), az su
fordítható úgy is, hogy a sikertelen, vagy opcionálisan
a sikeres próbálkozásokat is naplóztassa a sysloggal.
OPCIÓK
-c parancs, --command=parancs
Csak a parancs parancsot hajtatja végre a
shell-lel a -c opció segítségével, így a shell
nem interaktívan indul el.
-f, --fast
Beállítja a -f opciót az induló shellnél. Ennek
talán csak a csh(1) és a tcsh(1), shelleknél van
értelme ahol -f opció megakadályozza, hogy a
startup fájlt (.cshrc) a shell beolvassa. A
Bourne-hoz hasonló shelleknél a -f opció
letiltja a fájlnév minták kiterjesztését
(filename pattern expansion), ami általában nem
kívánatos dolog.
-, -l, --login
A shellt bejelentkezési shellként indítja. Ez a
következőket jelenti: törli az összes környezeti
változót, kivéve a TERM-et, HOME-ot, és a
SHELL-t (amiket a fent leírt módon állít át), és
a USER-t és LOGNAME-t (amiket szintén a fent
leírt módon állít át a rootnak), továbbá a
PATH-t, amit a fordításkor meghatározott
alapértékre állít. Az aktuális könyvtárat a
felhasználó home-könyvtárára állítja. A shell
neve elé egy - -t szúr be, így eléri azt, hogy
az beolvassa a startup fájlját illetve fájljait.
-m, -p, --preserve-environment
Nem állítja át a HOME, USER, LOGNAME, és SHELL
környezeti változókat. Azt a shellt indítja, ami
a SHELL változóban van a passwd fájlban lévő
helyett, de csak akkor, ha az su parancsot vagy
a superuser futtatja, vagy nem egy korlátozott
(restricted) shellt akar futtatni. Az a shell
korlátozott, ami nem szerepel a /etc/shells
fájlban, vagy az su belső listájában, ha ez a
fájl nem létezik. Az opció hatásainak egy részét
a --login és a --shell opciók hatástalanítják.
-s, --shell shell
A shell-t indítja a felhasználó /etc/passwd
fájlban szereplő shellje helyett, ha parancsot
vagy a superuser futtatja, vagy ha nem
korlátozott shellt akar futtatni. (Korlátozott
shell-t lásd fentebb.)
--help Használati útmutatót ír a standard kimenetre,
majd sikeres visszatérési értékkel kilép.
--version
A program verziójáról ír ki információt a
standard kimenetre, majd sikeres visszatérési
értékkel kilép.
Miért nem támogatja a GNU su a wheel csoportot? (Richard
Stallman)
Néha a rendszer fölötti teljes ellenőrzést egy néhány
emberből álló csoport akarja kézbe venni. Például
1984-ben pár user a MIT AI laborban úgy döntött, hogy
átveszik az irányítást a Twenex rendszer operátori
jelszavának megváltoztatásával, és annak titokban
tartásával. (A puccsot sikerült leverni, és a
felhasználókat jogaikba visszahelyezni egy kernel patch
segítségével, de Unix alatt ezt nem tudtam volna
megcsinálni.) (A fordító megj.: a wheel csoportot
ezzel a módszerrel könnyen önkényesen is leszűkíthetik
a csoporttagok , így tulajdonképpen nincs sok értelme.)
Néha az uralmon levők elárulják a root jelszót. A
szokásos su mechanizmus szerint, ha valaki megtudja a
root jelszót, és szimpatizál a többi közönséges
felhasználóval, elárulhatja nekik is. A wheel csoport
ezt lehetetlenné tenné, és így bebetonozná az uralmon
levő hatalmát.
Én a tömegek oldalán állok, nem az uralkodókén. Ha te
mindig a főnökök és a rendszergazdák oldalán állsz,
bármit is tesznek, akkor valószínűleg furcsálni fogod
ezt a hozzáállást.
A fordító megjegyzése: Valami jó azért mégis lenne a
wheel csoportban: az, hogy ha a root jelszó kitudódna
azzal nem tudna bármelyik felhasználó közvetlenül
visszaélni. A wheel csoporthoz hasonló dolgot lehet
elérni a sudo csomaggal.
MEGJEGYZÉS
A hibákat a bug-sh-utils@gnu.org címen lehet jelenteni.
Az oldalt Ragnar Hojland Espinosa
frissítette.
MAGYAR FORDÍTÁS
Havasi Ferenc és Tímár András
GNU Shell Utilities 2.0 18 August 1999 su(1)