Tmux/de
From OpenSimulator
*** Diese Seite handelt von Drittanbieter Software *** Auch wenn diese Software mit OpenSimulator in Verbindung steht, kann hier keine Hilfe für diese Software angeboten werden. Bei Fragen und Problemen wende dich bitte an die Hersteller der Software oder an deren Community. Bitte wende dich nicht an das OpenSimulator Team mit fragen zu diesen Programmen. |
Tmux ist ein Terminal-Multiplexer:
Er ermöglicht das Erstellen, Zugreifen und Steuern mehrerer Terminals (oder Fenster), die jeweils ein separates Programm ausführen, von einem einzigen Bildschirm aus.
Tmux kann von einem Bildschirm abgetrennt werden und im Hintergrund weiterlaufen, um später wieder verbunden zu werden.
Viele Leute verwenden GNU Screen, um OpenSimulator auszuführen, aber Tmux bietet einige gute Werkzeuge zur Verbesserung der Aufgabe.
Tmux funktioniert größtenteils wie Screen, mit dem Unterschied, dass die Standard-Tastenkombination zum Ausführen von Befehlen ctrl+b anstelle von ctrl+a ist.
Ein schneller Crashkurs ist hier verfügbar.
Contents |
Installation
Debian
sudo aptitude install tmux
Wenn Sie lieber ctrl+a anstelle von ctrl+b verwenden und einige nützliche Tastenkombinationen erhalten möchten, können Sie eine Datei ~/.tmux.conf verwenden und Folgendes hinzufügen:
# remap prefix to Control + a set -g prefix C-a unbind C-b bind C-a send-prefix
# force a reload of the config file unbind r bind r source-file ~/.tmux.conf
# quick pane cycling unbind ^A bind ^A select-pane -t :.+
Sitzungen ausführen
Sie können Sitzungen mit folgender Syntax starten:
tmux new -s mein_sitzungsname
Um die Sitzung zu trennen, können Sie die Tastenkombination ctrl+b d verwenden.
Dann können Sie den Schalter "-t" (Ziel) verwenden, um eine Sitzung für einen Befehl anzusprechen.
tmux attach -t mein_sitzungsname
Fenster und Paneele
Fenster
Tmux hat die Fähigkeit, "Tabs" für die Anzeige zu verwenden. Tabs werden "Fenster" genannt. Sie können ein "Fenster" mit der Tastenkombination ctrl+b c erstellen. Wechseln Sie dann zwischen den Fenstern mit ctrl+b [0-9].
Paneele
Tmux hat die Fähigkeit, ein Fenster in mehrere "Paneele" zu teilen. Um es vertikal zu teilen, verwenden Sie die Tastenkombination ctrl+b ". Um es horizontal zu teilen, verwenden Sie die Tastenkombination ctrl+b %. Um den Cursor zwischen den Paneelen zu bewegen, verwenden Sie die Tastenkombination ctrl+b und die Pfeiltasten. Wenn Sie die 3 Tasten gleichzeitig verwenden, können Sie das aktuelle Paneel ändern.
Sitzungen teilen
Hier ist der interessante Teil, um Tmux mit OpenSimulator zu verwenden. Die Sitzung wird über einen "Socket" geteilt, und die Benutzer, die die Sitzung teilen, müssen die Berechtigung haben, in diesen Socket zu schreiben.
Den Ort vorbereiten
Wir werden eine Gruppe erstellen und alle Benutzer, die die Sitzung teilen, in dieser Gruppe hinzufügen. Wir werden einen Ordner im /tmp-Ordner erstellen, um den Socket zu hosten. Wir werden der Gruppe die Schreibberechtigung auf den Socket-Ordner geben.
groupadd tmux-share addgroup tmux-share meinbenutzer addgroup tmux-share meinanderebenutzer mkdir /tmp/tmux-share chgrp tmux-share /tmp/tmux-share chmod -R 2775 /tmp/tmux-share
Die Sitzung erstellen
tmux -S /tmp/tmux-share/1 new-session -s meine_sitzung
Der Sitzung beitreten
tmux -S /tmp/tmux-share/1 attach -t meine_sitzung
Befehle an die Sitzung senden
Dies kann nützlich sein, um Befehle an die Sitzungen mit einem Batch-Skript oder etwas anderem zu senden. Um dies zu tun, können Sie eine Syntax wie diese verwenden:
tmux send-keys -t meine_sitzung:1 "ls" C-m
Wenn Sie also Befehle über den Socket senden möchten:
tmux -S /tmp/tmux-share/1 send-keys -t meine_sitzung:1 "ls" C-m
Ausgabe protokollieren
Um zu verhindern, dass Sie zu viel Zeit mit der Suche nach der Antwort verlieren, hier ist eine funktionierende (zumindest) Version eines Befehls, um die Ausgabe zu protokollieren.
tmux -S /tmp/tmux-share/test new -s test1 tmux -S /tmp/tmux-share/test pipe-pane -o -t test1 'cat >> tmux.log'