SU(1) | Narzędzia powłokowe GNU 2.0 | SU(1) |
NAZWA¶
su - uruchom powłokę z podmienieniem ID użytkownika/grupy.
SKŁADNIA¶
- su
- [-flmp] [-c polecenie] [-s
powłoka] [-] [--login]
[--fast] [--preserve-environment] [--shell=powłoka]
[--command=polecenie] [--help] [--version]
[użytkownik [arg...]]
OPIS¶
Ta strona podręcznika opisuje polecenie su w wersji GNU.
su pozwala danemu użytkownikowi na tymczasowe bycie innym użytkownikiem. Uruchamia polecenie (często powłokę interaktywną) z rzeczywistym i efektywnym id użytkownika oraz id grupy i grupami dodatkowymi, należącymi do użytkownika. Jeśli nie podano użytkownika, domyślnym jest root, czyli superużytkownik. Nazwa powłoki jest pobierana ze wpisu w /etc/passwd, a jeśli tam nic nie będzie, używany jest /bin/sh. Jeśli użytkownik ma hasło, to su zapyta o hasło, chyba że wywołujący je użytkownik miał efektywny identyfikator użytkownika ustawiony na 0 (superużytkownik).
Domyślnie su nie zmienia bieżącego katalogu. Ustawia zmienne środowiskowe HOME i SHELL według zapisów w pliku haseł dla użytkownika, a jeśli nie jest on superużytkownikiem, ustawia też USER i LOGNAME na użytkownik. Domyślnie powłoka nie jest powłoką zgłoszeniową (zalogowania).
Jeśli podano więcej argumentów, to są one przekazywane jako dodatkowe argumenty dla powłoki.
su nie obsługuje specjalnie /bin/sh czy innych powłok (ustawianie argv[0] na "-su", przekazywanie -c do niektórych powłok, itp.).
Na systemach, które mają sysloga, su może zostać tak skompilowane, by raportowało nieudane, lub opcjonalnie również udane próby zmiany id przy użyciu su. Jednak su w wersji GNU nie sprawdza czy użytkownik jest członkiem grupy `wheel' -- patrz poniżej.
OPCJE¶
- -c polecenie, --command=polecenie
- Przekazuje polecenie, pojedynczy wiersz poleceń do wykonania, do powłoki z użyciem parametru -c, zamiast uruchamiać powłokę interaktywną.
- -f, --fast
- Przekazuje powłoce opcję -f. Prawdopodobnie ma to zastosowanie tylko dla csh i tcsh, dla których opcja -f powoduje nieczytanie pliku startowego (.cshrc). W powłokach typu bourne, opcja -f wyłącza rozszerzanie wzorców nazw plików, co raczej nie jest przydatne.
- -, -l, --login
- Sprawia, że powłoka będzie powłoką zgłoszeniową. Znaczy to, co następuje. Unieważnia wszelkie zmienne środowiskowe poza TERM, HOME i SHELL (które są ustawiane, jak opisano wyżej), i USER oraz LOGNAME (ustawiane, nawet dla superużytkownika, w sposób wyżej opisany ). Ustawia zmienną PATH na wkompilowaną wartość domyślną. Zmienia katalog na katalog domowy użytkownika. Dodaje do nazwy powłoki "-", aby przeczytał pliki startowe logowania.
- -m, -p, --preserve-environment
- Nie zmienia zmiennych środowiskowych HOME, USER, LOGNAME czy SHELL. Zamiast powłoki użytkownika określonej w pliku passwd, uruchamia powłokę podaną w zmiennej SHELL, chyba że użytkownik wywołujący su nie jest superużytkownikiem, a powłoka użytkownika jest okrojona. Powłoka okrojona, to taka, która nie jest wymieniona w pliku /etc/shells, lub we wkompilowanej liście powłok. Częściowo opcja ta może być przesłonięta opcjami --login i --shell.
- -s powłoka, --shell= powłoka
- Zamiast powłoki użytkownika określonej w passwd, uruchamia zadaną powłokę, chyba że uruchamiający su użytkownik nie jest superużytkownikiem, a powłoka użytkownika jest ograniczona.
- --help
- Wyświetla informację o stosowaniu programu i dostępnych opcjach, kończy pracę.
- --version
- Wyświetla numer wersji programu i kończy pracę.
Dlaczego GNU `su' nie obsługuje grupy `wheel'¶
(Sekcję tę napisał Richard Stallman)
Czasami kilku użytkowników usiłuje sprawować nieograniczoną władzę nad pozostałymi. Na przykład, w 1984, kilku użytkowników w laboratorium AI MIT zdecydowało się `przejąć władzę' zmieniając hasło operatora systemu Twenex i trzymając je w tajemnicy przed wszystkimi innymi. (Udało mi się udaremnić ten zamach i przywrócić władzę użytkownikom łatając jądro, lecz nie wiedziałbym jak zrobić to w Uniksie.)
Jednak, od czasu do czasu panujący wyjawiają komuś. Przy zwykłym mechanizmie `su', ktoś, kto poznał hasło root'a i sympatyzuje ze zwykłymi użytkownikami, może przekazać je pozostałym. Funkcja "grupy wheel" uniemożliwiałaby to, i w ten sposób umacniała władzę rządzących.
Jestem po stronie mas, nie po stronie rządzących. Jeżeli zwykłeś popierać szefów i administratorów systemów we wszystkim, co robią, podejście to może początkowo wydać Ci się dziwne.
ZGŁASZANIE BŁĘDÓW¶
Błędy proszę zgłaszać, w jęz.ang., do <bug-sh-utils@gnu.org>.
COPYRIGHT¶
Copyright © 1999 Free Software Foundation, Inc.
This is free software; see the source for copying conditions. There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR
PURPOSE.
ZOBACZ TAKŻE¶
OD TŁUMACZA¶
Zaktualizowano i poszerzono wg dokumentacji Texinfo dla narzędzi powłokowych GNU wersji 2.0.
FSF | maj 2000 |