8 votes

partager des sessions tmux locales et distantes

Il semble y avoir de nombreuses questions connexes, mais j'aimerais trouver une solution de contournement spécifique.

Donc, j'étais un utilisateur avide d'iTerm2 (sans intérêt) et j'ai commencé à utiliser tmux à distance parce que Je veux éviter les timeouts SSH c'est-à-dire mon principal Le souci est que, si une apocalypse nucléaire devait détruire mon ordinateur portable, je pourrais reprendre le serveur distant là où je l'ai laissé.

Maintenant, je l'utilise aussi localement. Existe-t-il un moyen de proprement mélanger les deux choses ? Je ne vois que deux options.

  • tmux sur le réseau local et sur la machine distante (c'est ma machine actuelle). Les sessions sont complètement indépendantes, si ma session locale se plante, la session distante survivra, etc. Malheureusement, il ne peut y avoir aucune interaction, et je dois donc oublier la préservation de l'historique des copier-coller (corrigez-moi si je me trompe) et d'autres choses similaires.
  • ssh depuis le tmux local et attachez-vous à un tmux distant. De cette façon, j'aurai une session tmux distante à l'intérieur d'une fenêtre tmux locale, ce qui semble extrêmement encombrant à utiliser sur une base quotidienne.

Le problème, c'est que je veux le beurre et l'argent du beurre. Je veux garder mon travail sur la connexion ssh (et faire du multitâche tant qu'elle est active), mais je veux aussi partager mon travail entre tous mes volets tmux, qu'ils soient locaux ou distants. Est-ce possible ?

1voto

Timmy Browne Points 610

Est-ce que partager Windows aiderait ?

tmux new-session -s shared "tmux new-window -n CoolName"
tmux link-window -s <src-window> -t <dst-window>
tmux link-window -s shared:CoolName -t $index#  (target is optional)

0voto

Simon D Points 5631

Il y a quelques idées à https://medium.freecodecamp.org/tmux-in-practice-local-and-nested-remote-tmux-sessions-4f7ba5db8795 pour savoir comment faire cela dans tmux. En gros, utilisez une clé pour basculer l'accès au tmux interne.

La configuration qui a fonctionné pour moi est celle qui se trouve à l'adresse suivante http://stahlke.org/dan/tmux-nested/ :

unbind C-b
set -g prefix C-a

set -g status-bg colour40
setw -g window-status-current-bg colour40

bind -n C-t new-window -a
bind -n S-left  prev
bind -n S-right next
bind -n S-C-left  swap-window -t -1
bind -n S-C-right swap-window -t +1

bind -n M-F11 set -qg status-bg colour25
bind -n M-F12 set -qg status-bg colour40
bind -n S-up \
    send-keys M-F12 \; \
    set -qg status-bg colour25 \; \
    unbind -n S-left \; \
    unbind -n S-right \; \
    unbind -n S-C-left \; \
    unbind -n S-C-right \; \
    unbind -n C-t \; \
    set -qg prefix C-b
bind -n S-down \
    send-keys M-F11 \; \
    set -qg status-bg colour40 \; \
    bind -n S-left  prev \; \
    bind -n S-right next \; \
    bind -n S-C-left swap-window -t -1 \; \
    bind -n S-C-right swap-window -t +1 \; \
    bind -n C-t new-window -a -c "#{pane_current_path}" \; \
    set -qg prefix C-a

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X