Opis problemu:
są dwa komputery Mac, # 2 jeden zalogowany za pomocą exampleuser i # 1 Jestem zalogowany jako administrator.
exampleuser w ogóle nie ma praw SSH, ponieważ nie jest administratorem. Administrator ma pełne prawa i znam też hasło na przykład użytkownik.
Co chcę robić:
Chcę otworzyć program przez SSH na przykładusers Mac (nr 1).
Podczas testowania dałem przykładowemu użytkownikowi prawa i połączyłem się jako przykładowy użytkownik za pośrednictwem SSH - wszystko działało dobrze z „open / Applications / ...” (Ale ze względów bezpieczeństwa nie mogę dać dostępu przykładowemu użytkownikowi SSH).
Co ja zrobiłem:
Użyłem konta administratora, aby połączyć się z komputerem Mac # 2 przez SSH, ale kiedy uruchomiłem program, oczywiście zwrócił błąd, ponieważ nie jest to ten sam użytkownik. Próbowałem więc „su exampleuser”, ale potem tak naprawdę nie byłem połączony jako przykładowy użytkownik, ale zamiast tego utknąłem w dziwnym bashu, którego nigdy wcześniej nie widziałem, więc też nie zadziałało.
Pomyślałem więc o połączeniu jako administrator, a następnie tymczasowym nadaniu uprawnień przykładowego użytkownika ssh, aby połączyć się bezpośrednio, ale nie dowiedziałem się, jak zmienić ustawienia SSH za pośrednictwem SSH.
Jak mogłem to zrobić?
su
musisz być w grupiewheel
. Ponieważ OS X jest pochodną BSD, mogłem sobie wyobrazić, że to jest problem. Innym wariantem byłoby użyciesudo
(z odpowiednią konfiguracją).Odpowiedzi:
Polecenie „su” umożliwia „przełączenie kontekstu użytkownika” (w tym „superużytkownika”). Zapominam, który SU nazywa „su” jego nazwą.
Kiedy uruchamiasz coś po wpisaniu
su <username>
, JESTEŚ uruchamiany jako ten użytkownik. Nie będziesz jednak mieć środowiska użytkownika.Spróbuj
su - <username>
zamiast tego. Załaduje całe środowisko użytkownika (wiersza poleceń). Zakładam, że uruchamiasz program wiersza polecenia i nie próbujesz otworzyć GUI, takiego jak MS Word czy coś takiego.źródło
PCNAME:~ USERNAME$
ale po „su exampleuser” pokazywał tylko coś takiegobash-3.1$
Czy próbowałeś
źródło
Zakładam, że jesteś podłączony do Mac1 tak jak ty, przykładowy użytkownik jest zalogowany na Mac2, przykładowy użytkownik może SSH na Mac2 i znasz hasło dla przykładowego użytkownika. Biorąc to pod uwagę, powinieneś być w stanie
Wtedy powinieneś być w stanie uruchomić aplikację z ich kontekstem. Jeśli aplikacja jest oparta na interfejsie GUI, musisz użyć
open
polecenia z opcją -a.źródło