Emulator terminal default pada Ubuntu adalah Terminal GNOME . Itu terletak di /usr/bin/gnome-terminal
dan dapat dijalankan dengan gnome-terminal
perintah.
Apa yang benar-benar Anda inginkan
Apa yang mungkin Anda inginkan adalah shell yang berjalan sebagai root, seolah-olah itu dihasilkan dari login root (misalnya, dengan semua variabel lingkungan ditetapkan untuk root daripada untuk pengguna Anda).
Dengan asumsi itulah yang Anda inginkan, seperti yang disarankan steeldriver , jalankan:
sudo -i
Anda akan memiliki shell root di mana perintah yang Anda masukkan akan dijalankan sebagai root (tanpa harus mendahului mereka sudo
).
Tetapi jika Anda benar-benar ingin menjalankan aplikasi emulator terminal grafis sebagai root, baca terus. Saya menyajikan dua cara: dengan gksu
/ gksdo
, dan dengan sudo
perintah.
Karena Anda telah menginstal paket gksu , Anda dapat menjalankan gnome-terminal
sebagai root dengan salah satu dari:
gksu gnome-terminal
gksudo gnome-terminal
(Karena gksu
diatur ke mode-sudo di Ubuntu secara default, ini harus setara.)
Berjalan gnome-terminal
sebagai root tanpa terminal pengendali non-root:
Hampir setiap lingkungan desktop menyediakan fasilitas untuk menjalankan perintah tanpa harus membuka terminal (yang kemudian, jika ditutup, biasanya menyebabkan perintah akan dihentikan).
Ini biasanya dicapai dengan Alt+ F2. Kotak teks berlabel Perintah jalankan (atau serupa) akan muncul dan Anda dapat memasukkan perintah Anda.
Misalnya, seperti ini di Unity:
Dan seperti ini di MATE (GNOME Flashback / Fallback, Xfce, LXDE serupa):
Perhatikan bahwa ini berfungsi dengan gksu
dan gksudo
karena mereka menggunakan dialog otentikasi grafis. Jika Anda menekan Alt+ F2dan menjalankan sudo ...
, maka Anda tidak akan dapat berinteraksi dengan prompt kata sandi.
Dengan sudo
Jika Anda tidak memiliki paket gksu dan Anda tidak ingin menginstalnya, Anda dapat menggunakan:
sudo -H gnome-terminal
The -H
flag penting karena menetapkan HOME
variabel lingkungan untuk /root
bukannya direktori home pengguna Anda sendiri. Anda tidak boleh menggunakannya sudo gnome-terminal
karena dapat merusak konfigurasi gnome-terminal milik pengguna non-root. Untuk informasi lebih lanjut tentang ini, lihat:
( sudo -i gnome-terminal
juga baik-baik saja.)
Menyingkirkan terminal pengendali non-root:
Jika Anda (1) membuka terminal grafis, (2) menjalankan sesuatu seperti sudo -H gnome-terminal
di dalamnya, untuk membuat terminal root grafis baru, dan (3) keluar dari terminal grafis non-root asli ... maka terminal root grafis juga berhenti. .
Ini karena terminal root grafis dikirim SIGHUP ketika terminal yang memilikinya itu keluar.
Untuk mencegah hal ini, Anda mungkin berpikir Anda bisa meluncurkan terminal root grafis dengan:
sudo -H gnome-terminal &
Tetapi ini hanya akan berfungsi jika sudo
tidak harus meminta kata sandi. Jika ya, Anda tidak akan melihat prompt kata sandi.
Salah satu cara untuk mengatasi ini adalah dengan menggunakan:
sudo -v
sudo -H gnome-terminal
sudo -v
ada hanya untuk tujuan ini. Sebagaimana dijelaskan dalam man sudo
, itu "memperbarui kredensial cache pengguna, mengotentikasi pengguna jika perlu."
Perhatikan bahwa ini masih tidak akan berfungsi jika dijalankan langsung dari kotak Alt+ F2"jalankan perintah" lingkungan desktop Anda , karena Anda masih memerlukan terminal untuk memasukkan kata sandi Anda sudo -v
.
Atau Anda dapat melakukannya dengan cara yang mungkin disebut dengan cara tradisional, dengan menangguhkan pekerjaan setelah dimulai:
- Jalankan
sudo -H gnome-terminal
dari terminal grafis non-root yang asli.
- Masukkan kata sandi Anda seperti yang diminta oleh
sudo
. Terminal grafis akan mulai.
- Masih di terminal non-root , tekan Ctrl+ Zuntuk menangguhkan terminal root. Saat terminal root ditangguhkan, Anda tidak dapat menggunakannya; antarmuka tidak akan menanggapi tindakan Anda.
- Tutup terminal pengendali non-root dengan
exit
. Pekerjaan terminal root grafis akan ditangguhkan dan tidak diakui oleh terminal non-root, secara otomatis.
Pendeknya:
sudo -H gnome-terminal
^Z
exit
Tapi misalkan Anda ingin tetap menggunakan terminal asli, juga non-root. Lalu Anda bisa menjalankan , di mana nomor pekerjaan terminal root grafis, untuk melanjutkan pekerjaan di latar belakang. Anda dapat menjalankan untuk menemukan tetapi Anda mungkin tidak perlu - nomor itu ditampilkan seperti ketika Anda menekan + . Sebagai contoh:bg N
N
jobs
N
[N]
CtrlZ
ek@Ilex:~$ sudo -H gnome-terminal
[sudo] password for ek:
^Z
[1]+ Stopped sudo -H gnome-terminal
ek@Ilex:~$
gnome-terminal
. Jadi cobasudo gnome-terminal
.