GNU/Linux >> Znalost Linux >  >> Linux

Spuštění tmux pomocí gnome-terminálu

Zde je návod, jak lze nastavit spuštění tmux pomocí gnome-terminálu :

  1. Spusťte gnome-terminál
  2. Nabídka> Upravit> Předvolby profilu> Název a příkaz (karta)
  3. Zaškrtněte možnost Spustit vlastní příkaz namísto mého prostředí
  4. Vyplňte Vlastní příkaz pomocí tmux

Tyto instrukce pro mě fungují na Ubuntu 11.04. Ekvivalent by měl fungovat pro gnome-terminál pro jakoukoli variantu Linuxu.


Spuštění čehokoli z .zshenv je rozhodně špatný přístup. Tento soubor je spuštěn každou instancí zsh , a to i při spuštění skriptu. Použijte .zshrc pro věci, které by se měly provádět v interaktivních shellech, a .profile (nebo .zprofile , pokud jste jako přihlašovací shell nastavili zsh) pro věci, které by měly být provedeny při přihlášení.

Pokud chcete tmux v každém terminálu, spusťte tmux přímo pod terminálem, např. gnome-terminal -e tmux (změňte spouštěč GUI tak, aby předal tyto argumenty). Argumenty můžete předávat i s -e (i když buďte opatrní s citacemi), např. gnome-termminal -e 'tmux -s ~/.alternate.tmux.conf' .

Pokud chcete také spustit tmux, když se přihlásíte přes ssh, budete ho muset spustit ze svého ~/.profile . Proveďte to pouze v případě, že nadřazený proces přihlašovacího shellu je sshd :

parent_process_name=$(ps -o comm= -p $PPID`)
case ${parent_process_name##*/} in
  sshd) type tmux >/dev/null 2>/dev/null && exec tmux;;
esac

Dalším přístupem ke spuštění tmux přes ssh by bylo získání názvu relace z prostředí. Tímto způsobem se můžete připojit k existující relaci. Nejjednodušší způsob je napsat malý skript na straně serveru, např. ~/bin/tmux-login-session :

#!/bin/sh
if tmux has-session -t "$1"; then
  exec tmux attach-session -t "$1"
else
  . ~/.profile
  exec tmux new-session -s "$1"
fi

Poté použijte příkaz ssh, jako je tento:

ssh -t hostname.example.com bin/tmux-login-session SESSION_NAME

Provedením následujících příkazů na terminálu získáte tmux spustit pokaždé, když spustíte gnome-terminal :

gconftool --type string --set /apps/gnome-terminal/profiles/Default/custom_command "tmux"
gconftool --type bool --set /apps/gnome-terminal/profiles/Default/use_custom_command "true"

Tato sada příkazů dělá z gnome-terminálu spouštění tmux při startu terminálu.

  • To bude mít za následek ukončení gnome-terminálu, když ukončíte tmux.
  • V žádném případě nebude rušit ssh ani přihlášení, protože se jedná o nastavení terminálu gnome.
  • Můžete také použít všechny zkratky gnome-terminálu, které máte připevněné na ploše, a spustit jej z příkazového řádku se spuštěným nástrojem tmux, takže pro toto chování nebudete muset vytvářet vlastní zástupce.

Linux
  1. Jak začít používat Tmux jako profesionál za 5 minut

  2. Používáte Notify-Send s Cronem?

  3. Kopírování a vkládání v terminálu Gnome?

  1. Jaké DNS servery používám?

  2. Používání proměnných prostředí v souborech Tmux.conf?

  3. Použití protokolů serveru

  1. Ladění Linuxu pomocí ProcDump

  2. Použití UFW jako IP Blacklist

  3. Použití mod_cluster v Apache