Kiedy chcesz uruchomić program jako root używamy sudo
, gksu
, gksudo
i itd. Teraz moje pytanie jest w jaki sposób można uruchomić Terminal jako użytkownik root w terminalu?
Próbowałem z użyciem gksudo terminal
i gksu terminal
nic się nie dzieje. a po uruchomieniu sudo terminal
pojawia się błąd sudo: terminal: command not found
.
gnome-terminal
root
αғsнιη
źródło
źródło
gnome-terminal
. Więc spróbujsudo gnome-terminal
.sudo -i
?sudo
Nie należy używać @Guru do uruchamiania takich programów graficznych. Jeśligksu
/gksudo
nie jest (lub może nie być) zainstalowany,sudo -H ...
(lubsudo -i ...
) można użyć do uruchomienia aplikacji graficznej...
jako root.Odpowiedzi:
Domyślnym emulatorem terminala w Ubuntu jest terminal GNOME . Znajduje się pod
/usr/bin/gnome-terminal
i można go uruchomić za pomocągnome-terminal
polecenia.Czego naprawdę chcesz
To, czego prawdopodobnie potrzebujesz, to powłoka działająca jako root, tak jakby została utworzona z loginu root (na przykład ze wszystkimi zmiennymi środowiskowymi ustawionymi dla roota, a nie dla użytkownika).
Zakładając, że tego właśnie chcesz, jak sugeruje steeldriver , po prostu uruchom:
Będziesz miał powłokę root, w której wprowadzane polecenia będą uruchamiane jako root (bez konieczności ich poprzedzania
sudo
).Ale jeśli naprawdę chcesz uruchomić graficzną aplikację emulującą terminal jako root, czytaj dalej. Przedstawiam dwa sposoby: za pomocą
gksu
/gksdo
i za pomocąsudo
polecenia.Z
gksu
/gksudo
Ponieważ masz zainstalowany pakiet gksu , możesz uruchomić
gnome-terminal
jako root z jednym z:(Ponieważ
gksu
w Ubuntu jest domyślnie ustawiony tryb sudo, powinny one być równoważne).Działa
gnome-terminal
jako root bez kontrolującego terminala użytkownika innego niż root:Praktycznie każde środowisko pulpitu zapewnia możliwość uruchomienia polecenia bez konieczności otwierania terminala (co wtedy, jeśli jest zamknięte, zwykle powoduje zakończenie polecenia).
Zwykle osiąga się to za pomocą Alt+ F2. Pojawi się pole tekstowe z etykietą Uruchom polecenie (lub podobne) i możesz wprowadzić polecenie.
Na przykład wygląda tak w Unity:
I tak w MATE (GNOME Flashback / Fallback, Xfce, LXDE są podobne):
Zauważ, że działa to z
gksu
igksudo
ponieważ używają graficznego okna dialogowego uwierzytelniania. Jeśli naciśniesz Alt+ F2i uruchomiszsudo ...
, nie będziesz mógł wejść w interakcję z monitem o hasło.Z
sudo
Jeśli nie masz pakietu gksu i nie chcesz go instalować, możesz użyć:
-H
Flaga jest ważna, ponieważ ustawiaHOME
zmienną środowiskową do/root
zamiast katalogu głównym swojego własnego użytkownika. Należy nie używaćsudo gnome-terminal
, ponieważ może złamać konfigurację gnome-terminal należącej do użytkownika innego niż root. Aby uzyskać więcej informacji na ten temat, zobacz:(
sudo -i gnome-terminal
jest również w porządku.)Pozbycie się kontrolującego terminala użytkownika innego niż root:
Jeśli (1) otworzysz terminal graficzny, (2) uruchomisz coś
sudo -H gnome-terminal
w nim, aby utworzyć nowy graficzny terminal główny i (3) zamkniesz oryginalny nie graficzny root ... wtedy główny terminal graficzny również zostanie zamknięty .Wynika to z faktu, że główny terminal graficzny jest wysyłany SIGHUP, gdy terminal będący jego właścicielem zostanie opuszczony.
Aby temu zapobiec, możesz zamiast tego uruchomić graficzny terminal główny za pomocą:
Ale zadziała to tylko wtedy, gdy
sudo
nie będzie musiał monitować o hasło. Jeśli tak, nie pojawi się monit o hasło.Jednym ze sposobów obejścia tego jest użycie:
sudo -v
istnieje tylko w tym celu. Jak wyjaśniono wman sudo
, „aktualizuje [] pamięć podręczną użytkownika, uwierzytelniając go w razie potrzeby.”Zauważ, że to nadal nie zadziała, jeśli zostanie uruchomione bezpośrednio z pola Alt+ F2„polecenie uruchomienia” środowiska pulpitu , ponieważ nadal potrzebujesz terminala do wprowadzenia hasła
sudo -v
.Lub możesz to zrobić w sposób, który można nazwać tradycyjnym, zawieszając zadanie po jego uruchomieniu:
sudo -H gnome-terminal
z oryginalnego graficznego terminala użytkownika innego niż root.sudo
. Uruchomi się terminal graficzny.exit
. Graficzne zadanie terminala głównego zostanie zarówno automatycznie zawieszone, jak i odrzucone przez terminal użytkownika innego niż root.W skrócie:
Załóżmy jednak, że chcesz nadal używać oryginalnego terminala innego niż root. Następnie możesz uruchomić , gdzie jest numer zadania graficznego terminala głównego, aby wznowić zadanie w tle. Możesz uruchomić, aby znaleźć, ale prawdopodobnie nie będziesz musiał - liczba ta była wyświetlana tak, jak po naciśnięciu + . Na przykład:
bg N
N
jobs
N
[N]
CtrlZźródło
xterm
. ile terminali istnieje w Ubuntu?Krótka odpowiedź:
otwiera terminal jako root:
Nie trzeba wyjaśniać, że można tego użyć do otwarcia dowolnego terminala jako root; takie jak Vala (
gksudo vala-terminal
), Xterm (gksudo xterm
), Termit (gksudo termit
), UXTerm (gksudo uxterm
), Konsole (gksudo konsole
) i tak dalej.źródło
sudo x-terminal-emulator
?gksu x-terminal-emulator
,gksudo x-terminal-emulator
,kdesudo x-terminal-emulator
(jeśli środowiskiem graficznym jest KDE),sudo -H x-terminal-emulator
lubsudo -i x-terminal-emulator
zamiast tego, aby uniknąć tego problemu . Podobnie,sudo gedit
nie powinien być używany do uruchamianiagedit
jako root.Jak już wspomniano, pytasz, jak uruchomić Terminal jako root, ale bardziej prawdopodobne jest, że faktycznie chcesz uruchomić graficzną aplikację Terminal jako zwykły użytkownik i uruchomić w niej powłokę root, w której jesteś zalogowany jako root. W ten sposób graficzna aplikacja terminalowa nie otrzymuje uprawnień roota. Poprzednie odpowiedzi nie wydają się zawierać jasnych wierszy poleceń, więc oto, czego używam.
Z Xterm
xterm -bg black -fg red -e sudo -i
„-E sudo -i” mówi xtermowi, aby przełączył się na rootowanie w sesji, a kolory mają na celu uczynienie bardzo oczywistym, że jest to powłoka root.
Z terminalem gnomów
gnome-terminal -- sudo -i
Osobiście wiążę skróty klawiszowe Gnome, aby łatwo uruchamiać terminale
Przejdź do ustawień klawiatury, dodaj niestandardowy skrót za pomocą skrótu Super + X i polecenie „xterm -bg czarny -fg biały -sb -sl 5000”, a następnie zrootuj xterm za pomocą skrótu Super + Z i polecenia „xterm -bg czarny -fg czerwony - sb -sl 5000 -e sudo -i '.
W przeszłości wolałem xterm od Gnome Terminal, ponieważ czcionka jest mała i prosta, ale przychodzę do Terminalu, teraz uruchamiam duże ekrany o wysokiej DPI. Kodowanie kolorami terminali jest bardzo dobrym pomysłem, gdy zaczniesz uruchamiać różne profile z niebezpiecznymi konsekwencjami, aby uniknąć wypadków (np. Lokalny root, komputer zdalnego klienta, root klienta zdalnego).
źródło
Jest na to inny sposób, przetestowany i działający na Ubuntu 16.04 LTS:
Najpierw zainstaluj panel gnome:
Następnie zainstaluj gksu:
Po zakończeniu instalacji uruchom:
Spowoduje to utworzenie skrótu na pulpicie. Powinieneś mieć możliwość nazwania go. Nazywałem mój „X-Term”, ale możesz nazywać swoje prawie tak, jak chcesz. Wpisz
/usr/bin/gksu
* w ścieżce „Command”.Po uruchomieniu nowego skrótu na pulpicie pojawi się monit o uruchomienie aplikacji. Wpisz:
xterm
.Zostaniesz teraz poproszony o podanie hasła; po wejściu będziesz miał dostęp do działającego terminala głównego. Pamiętaj, aby używać tylko wtedy, gdy jest to absolutnie konieczne i zamykać, gdy skończysz.
* zakładając, że zainstalowałeś Ubuntu z ustawieniami domyślnymi i nie zmieniłeś znacząco żadnego z systemów plików od czasu instalacji.
źródło
Używam stretch Debian 9
Przejdź do skrótów klawiaturowych, dodaj takie polecenie:
`gksu / usr / bin / x-terminal-emulator '
Podałem
Super + T
jako skrót.Teraz za każdym razem, gdy chcesz otworzyć terminal jako root, po prostu wpisz skrót
Mam nadzieję, że może to komuś pomóc w przyszłości
źródło
Możesz uruchomić interaktywną powłokę za pomocą:
Aby uzyskać więcej informacji:
i przeczytaj
-s --shell
sekcję.źródło