MC' Napisano Maj 25, 2005 Zgłoszenie Share Napisano Maj 25, 2005 W wielu postach pojawia się problem polecenia su i su -. Dlatego mam pytanie : "su" to polecenie dzięki któremu możemy się przełączyć na dowolnego użyytkownika systemu (także roota; oczywiście trzeba znać haslo ) zmienia ono UID i GID i zmienne środowiskowe użytkownika. Natomiast reszta środowiska jest taka jaką ma użytkownik spod, którego wydajemy "su" (np. PWD=katalog roboczy, nie zmienia się) "su -" dostaję uprawnienia (_root'a_ → roota) ORT i "dziedziczę jego środowisko pracy " To tyle co wiem o tych dwóch poleceniach. Moje pytania są następujące: 1.Co to naczy "dziedziczy środowisko pracy"? (wiem, że chodzi o np. PWD no ale co z tego wynika? Jakie są praktyczne różnice z tego wynikające? na co to wpływa?) 2. Kiedy należy używać "su" a kiedy "su -" ? (nie chodzi oczywiście o wszystkie sytuacje ale o te które najlepiej zobrazują całą różnice) Pozdrawiam MC' Odnośnik do komentarza Udostępnij na innych stronach More sharing options...
@WalDo Napisano Maj 25, 2005 Zgłoszenie Share Napisano Maj 25, 2005 Wydając polecenie "su -" dziedziczysz wszystkie zmienne środowiskowe np. zmienną $PATH. Spróbuj zrobić "su" i wywołać np. "iptables -L" - i co? Nic. A teraz "su -" i wydaj to samo polecenie. No i to jest - oczywiście tylko najprostsza - różnica między polecenie "su" a "su -" Generalnie chodzi o to, że pewne zmienne globalne są inne dla użytkownika a inne - to oczywiste - dla (_root'a_ → roota) ORT. Nie wiem czy jasno wytłumaczyłem, ale pewnie ktoś coś doda Pozdr, W. Odnośnik do komentarza Udostępnij na innych stronach More sharing options...
Soleth Napisano Maj 30, 2005 Zgłoszenie Share Napisano Maj 30, 2005 Ja zauważyłem tylko, że jak wpisze "su -" to wiecej komend mi działa, które mi na "su" nie działają Odnośnik do komentarza Udostępnij na innych stronach More sharing options...
Gość _PaT Napisano Maj 30, 2005 Zgłoszenie Share Napisano Maj 30, 2005 Ja zauważyłem tylko, że jak wpisze "su -" to wiecej komend mi działa, które mi na "su" nie działają Bo tak jak napisał WalDo po samym su nie masz wyeksportowanej zmiennej środowiskowej $PATH z wkompilowaną wartością domyślną, więc jak wpiszesz jakieś polecenie w konsolę to system go nie szuka np. w katalogu /sbin Odnośnik do komentarza Udostępnij na innych stronach More sharing options...
mynus Napisano Maj 31, 2005 Zgłoszenie Share Napisano Maj 31, 2005 zrób tak: wydaj polecenie su i po zalogowaniu się na roota sprawdź zmienne środowiskowe (polecenie env), potem sprawdź to samo gdy zalogujesz się jako su -, wtedy zobaczysz różnice (samą zmienną PATH możesz sprawdzić pisząc: echo $PATH) Odnośnik do komentarza Udostępnij na innych stronach More sharing options...
@perl Napisano Czerwiec 9, 2005 Zgłoszenie Share Napisano Czerwiec 9, 2005 polecenie su (sktrot od substitute user, a nie zaden superuser jak ostatnio uslyszalem) moze rowniez byc uzyte w stosunku do zwyklego uzytkownika i to w wypadku "su" jaki i "su -" , np. $ su zbyszek - spowoduje to ze system otworzy sesje uzytkownika zbyszek (substitute - podszywac sie) tak jakby on sam sie zalogowal na tej maszynie wraz z jego parametrami srodowiskowymi (sciezka dostepu do plikow, eksporty itp), bez "-" rowniez system otworzy nowa sesje jednak w tym wypadku zmienne systemowe pozostana 'nasze' (czyli konta z ktorego wydalismy polecenie "su") polecenie jak widzac bardzo pomocne kiedy chcemy jako administratorzy ustawic danemu userowi odpowiednie parametry srodowiskowe konta, Odnośnik do komentarza Udostępnij na innych stronach More sharing options...
Rekomendowane odpowiedzi
Jeśli chcesz dodać odpowiedź, zaloguj się lub zarejestruj nowe konto
Jedynie zarejestrowani użytkownicy mogą komentować zawartość tej strony.
Zarejestruj nowe konto
Załóż nowe konto. To bardzo proste!
Zarejestruj sięZaloguj się
Posiadasz już konto? Zaloguj się poniżej.
Zaloguj się