UbuntuのデフォルトのターミナルエミュレータはGNOMEターミナルです。に/usr/bin/gnome-terminal
あり、gnome-terminal
コマンドで実行できます。
本当に欲しいもの
おそらく必要なのは、rootログインから生成されたかのように、rootとして実行されているシェルです(たとえば、ユーザーではなくrootにすべての環境変数が設定されている場合)。
それがあなたが望むものだと仮定すると、steeldriverが示唆したように、単に実行してください:
sudo -i
入力したコマンドがルートとして実行されるルートシェルがあります(コマンドの前にを付ける必要はありませんsudo
)。
ただし、グラフィカルターミナルエミュレータアプリケーションをルートとして本当に実行する場合は、先に進んでください。gksu
/を使用する方法gksdo
と、sudo
コマンドを使用する方法の2つを紹介します。
あなたが持っているので、gksuのがインストールされたパッケージを、あなたが実行することができますgnome-terminal
いずれかでのルートとして:
gksu gnome-terminal
gksudo gnome-terminal
(gksu
デフォルトではUbuntuでsudo-modeに設定されているため、これらは同等である必要があります。)
gnome-terminal
制御非ルート端末なしでルートとして実行する:
事実上、すべてのデスクトップ環境は、端末を開くことなくコマンドを実行する機能を提供します(端末を閉じると、通常はコマンドが終了します)。
通常、これはAlt+で実現しF2ます。[ コマンドの実行](または同様の)というラベルの付いたテキストボックスが表示され、コマンドを入力できます。
たとえば、Unityでは次のようになります。
そして、MATEのこのように(GNOME Flashback / Fallback、Xfce、LXDEも同様です):
注ことで、この作品gksu
とgksudo
理由は、彼らがグラフィカルな認証ダイアログを使用します。Alt+ を押しF2て実行sudo ...
すると、パスワードプロンプトを操作できなくなります。
と sudo
gksuパッケージがなく、インストールしたくない場合は、以下を使用できます。
sudo -H gnome-terminal
この-H
フラグは、HOME
環境変数を/root
自分のユーザーのホームディレクトリの代わりに設定するため重要です。非rootユーザーに属するgnome-terminal構成を壊す可能性があるため、使用しないでくださいsudo gnome-terminal
。詳細については、以下を参照してください。
(sudo -i gnome-terminal
大丈夫です。)
制御する非ルート端末を取り除く:
あなたの場合は(1)は、グラフィカルターミナルを開く(2)のような、ラン何かsudo -H gnome-terminal
、その中に新しいグラフィカルルート端末を作成するために、および(3)同様に、ルートグラフィカルターミナルが終了します...元の非ルートグラフィカルターミナルを終了しました。
これは、それを所有する端末が終了すると、ルートグラフィカル端末がSIGHUPに送信されるためです。
これを防ぐために、代わりにグラフィカルルートターミナルを起動できると思うかもしれません。
sudo -H gnome-terminal &
しかし、これはsudo
パスワードを要求する必要がない場合にのみ機能します。その場合、パスワードプロンプトは表示されません。
これを回避する 1つの方法は、以下を使用することです。
sudo -v
sudo -H gnome-terminal
sudo -v
この目的のためだけに存在します。で説明したようにman sudo
、「ユーザーのキャッシュされた資格情報を更新し、必要に応じてユーザーを認証します」。
注これは、デスクトップ環境のから直接実行する場合ではない仕事はまだということAlt+ F2あなたはまだのためのパスワードを入力し、端末を必要とするので、「runコマンド」ボックスsudo -v
。
または、開始後にジョブを一時停止することにより、従来の方法と呼ばれる方法でそれを行うことができます。
sudo -H gnome-terminal
元の非ルートグラフィカルターミナルから実行します。
- プロンプトに従ってパスワードを入力します
sudo
。グラフィカル端末が起動します。
- 非ルート端末で、Ctrl+ Zを押してルート端末を一時停止します。ルート端末が中断されている間は、使用できません。そのインターフェースはユーザーのアクションに応答しません。
- で制御非ルート端末を終了し
exit
ます。グラフィカルルートターミナルジョブは、非ルートターミナルによって自動的にサスペンド解除および否認されます。
要するに:
sudo -H gnome-terminal
^Z
exit
しかし、元の非ルート端末も使い続けたいとします。次に、を実行します。これは、グラフィカルルートターミナルのジョブ番号で、バックグラウンドでジョブを再開します。実行して検索することはできますが、おそらく実行する必要はありません。その数字は+ を押したときのように表示されていました。例えば: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
。だから試してみてくださいsudo gnome-terminal
。