Jestem użytkownikiem root i przypuszczam, że chcę uruchomić dowolną aplikację jako inny użytkownik. Czy to możliwe bez przełączania się na innego użytkownika?
Coś jak
# google-chrome user=abc
W rzeczywistości wykonuję program CLI jako użytkownik inny niż root. Włączyłem lepki bit i używam setuid, więc program działa z uprawnieniami roota. Teraz używam system()
w programie do wywołania aplikacji GUI. Ale nie chcę uruchamiać go jako root, więc chcę tymczasowo zrzucić uprawnienia roota tylko dla tego połączenia.
Odpowiedzi:
Przenośnym rozwiązaniem byłoby:
Ponieważ jednak Google-chrome wymaga dostępu do X11, prawdopodobnie nie powiedzie się, chyba że go nie zabezpieczysz, co byłoby bardzo złym pomysłem, szczególnie podczas uruchamiania jako root.
Jeśli tunelowanie / przekazywanie X11 jest dozwolone, lepszym sposobem byłoby
lub
źródło
su abc -c google-chrome
najprawdopodobniej zakończy się niepowodzeniem, ponieważabc
nie może korzystać z sesji roota,.Xauthority
ponieważ jest nieczytelnyabc
.Krótka odpowiedź: „Tak, jest to możliwe”.
jeśli chcesz uruchomić aplikację inną niż X, użyj następującego polecenia:
Jeśli chcesz uruchomić aplikację X jako inny użytkownik, ale najpierw na swoim pulpicie musisz utworzyć skrypt pomocnika, który ułatwi Ci życie
i używając ulubionego edytora tekstu utwórz plik
~/bin/xsudo
w następujący sposób:następnie uczyń go wykonywalnym:
i używaj go w ten sam sposób,
sudo
ale bez żadnych przełączników:Cieszyć się.
PS Począwszy
xsession
odroot
konta zdecydowanie odradzam!źródło
ssh -X abc@localhost google-chrome
:)Istnieje sposób na uruchomienie chromu po zalogowaniu do użytkownika root. Jeśli otworzysz go normalnie, pojawi się błąd „chrom nie może być uruchamiany jako root”.
Aby go uruchomić bez błędu, right clickpulpicie, należy utworzyć nową wyrzutnię z poleceniem:
chromium-browser --user-data-dir
. Możesz nazwać go tak, jak chcesz, zapisz go, gdy go otworzysz, da ci przeglądarkę chromową. (Działa w Ubuntu 10.04.4 LTS)źródło
źródło