Odpowiedzi:
Próbowałeś używać su - foo?
Aktualizacja na podstawie komentarzy:
Puste -mówi suo konieczności pełnego logowania. To znaczy (ze strony podręcznika),
Środowisko jest odrzucane, z wyjątkiem HOME, SHELL, PATH, TERM i USER. HOME i SHELL są modyfikowane jak wyżej. USER jest ustawiony na docelowy login. PATH jest ustawiony na `` / bin: / usr / bin ''. TERM jest importowany z bieżącego środowiska. Wywołana powłoka jest docelowym loginem, a su zmieni katalog na katalog domowy docelowego logowania.
Tak więc, jeśli potrzebujesz innych zmiennych środowiskowych, takich jak DISPLAYotwieranie programów korzystających z serwera okien, musisz pominąć puste -.
mate myfilei pojawia się błąd „nie udało się połączyć z WindowServer”. To nie jest krytyczna poprawka, ale byłoby dobrze, aby to działało.
open -a TextMate myfile.
su foomógłbym to zrobić. Pominięcie -zachowuje wartości zmiennych środowiskowych.
W systemie MacOS X. login
$ login
login: your username
hasło: your password
Ostatnie logowanie: Dzień Miesiąc Data GG: MM: SS on ttys000
$ whoami
twoja nazwa użytkownika
Miałem problemy z uruchomieniem nanopo użyciu su - admin
do edycji .bashrcpliku. Podczas dostosowywania rozmiaru okna tekst byłby zniekształcony. Odpowiedź, którą znalazłem poniżej, wyjaśnia dlaczego i poprowadziła mnie we właściwym kierunku.
„Emulator terminala wyśle sygnał zmiany okna (SIGWINCH) do powłoki, która została uruchomiona wraz z emulatorem terminala. Powłoka ma przekazać ją swoim potomkom - ale po przejściu na inne konto użytkownika (używając su lub w inny sposób), nie będzie w stanie zasygnalizować tej powłoce, ponieważ działa ona jako inny użytkownik. Zatem powłoka su'd i wszelkie uruchamiane z niej programy będą nadal używać starego rozmiaru okna, nie zważając na fakt, że prawdziwe okno rozmiar się zmienił. ” - telcoM
su - foo?