web-dev-qa-db-ja.com

Ctrl-Alt-tは通常のターミナルではなくルートターミナルを開きます

ターミネーターをインストールし、 このソリューション でデフォルトのターミナルにしましたが、今は Ctrl-Alt-T ルートターミナルとしてターミネータを開きます。ターミネーターを通常のターミナルとして開くにはどうすればよいですか?

enter image description here

5
adamconkey

どうなりますか?

TL; DR#1:基本的に、x-terminal-emulatorを生成し、Unityはショートカットファイルにx-terminal-emulatorを含むものを検索します。

  1. あなたが押す Ctrl+Alt+Tx-terminal-emulatorが生成されます。 Debian代替システムでは、x-terminal-emulatorは、使用する端末エミュレータアプリへのシンボリックリンクです。
  2. Unityのメカニズムは、/usr/share/applicationsの「ショートカット」ファイルのリストを検索します。 gksu.desktop行を持っているExec=gksu /usr/bin/x-terminal-emulatorファイルを見つけて、行Name=Root Terminalを取り出します。そのRoot TerminalがUnityのパネルに表示されます

なぜgnome-terminalでも同じことが起こらないのですか?

TL; DR#2:gnome-terminalは実際にはラッパースクリプトによって生成され、デフォルトのショートカットがリンクされます。

Sudo update-alternatives --config x-terminal-emulatorを実行すると、選択肢が表示されますが、/usr/bin/gnome-terminalはありません。むしろ、/usr/bin/gnome-terminal.wrapperを最初にセットアップするPerlスクリプトであるgnome-terminalがあります!そのスクリプトを読むと、最後に次の行があります:

exec('gnome-terminal',@args);

exec呼び出しは、別のアプリとして/usr/bin/gnome-terminalを生成します。 Unityは再度/usr/share/applications/ディレクトリを検索し、gnome-terminal.desktop行を持つName=Terminalファイルを見つけ、ランチャーに表示します。

何ができますか?

TL; DR#3:キーボードショートカットの再割り当て、カスタムラッパーの使用、またはカスタム.desktopファイルの作成。 .desktopの方法をお勧めします。

最も簡単な方法は、ショートカットを再割り当てすることです。そのためにgsettingsを使用します

 gsettings set org.gnome.desktop.default-applications.terminal exec 'sakura'

しかし、それでもUnityのダッシュで癖を解決することはできません。私が推奨する解決策は、次の内容のカスタム.desktopファイル/usr/share/applications/x-terminal-emulator.desktopを作成することです

[Desktop Entry]
Name=MY CUSTOM TERMINAL
Encoding=UTF-8
Exec=/usr/bin/x-terminal-emulator
Icon=gksu-root-terminal
StartupNotify=true
Terminal=false
Type=Application
Categories=GTK;Utility;TerminalEmulator;

そうすれば、何も変更する必要はありませんが、UnityはランチャーにMY CUSTOM NAMEを表示します。

3番目の方法として、冒険心がある場合は、次のようなラッパースクリプトを作成します。

   #!/bin/sh
   exec /path/to/terminal-emulator ${1+"$@"}

次に、代替システムのオプションの1つとして追加できます。

Sudo update-alternatives   --install /path/to/wrapper name /path/to/wrapper priority 

補足:優先度は10などの整数です。

詳細情報

7

次のリンクを試しました: https://bugs.launchpad.net/terminator/+bug/144758

そして、次のコマンドを実行すると、うまくいきました:

gsettings set org.gnome.desktop.default-applications.terminal exec 'terminator'

幸運を!!

4
nakulkumar