##Bitte hier den eigenen Benutzernamen und das geplante Fertigstellungsdatum eintragen [[Vorlage(Baustelle, 28.02.2010, uname)]] [[Vorlage(Getestet, natty, maverick, Lucid)]] {{{#!vorlage Wissen [:Pakete_installieren: Installation von Programmen] [:Terminal: Ein Terminal öffnen] [:Editor: Einen Editor öffnen] }}} [[Inhaltsverzeichnis(2)]] [http://tmux.sourceforge.net/ tmux] {en} ist ein sog. Terminal-Multiplexer (vergleichbar mit [:Screen:screen]) und ermöglicht den Zugang zu einer beliebigen Anzahl von Terminals (oder Fenstern) und damit zu beliebig gestarteten Programmen. Das Programm wird wie `screen` durch ein einzelnes Terminal[2] gesteuert, man kann sich aus Sitzungen ausklinken (detach) und diese zu einem späteren Zeitpunkt wieder aufnehmen (attach). Ein Anwendungsbeispiel: Wenn man sich über [:SSH:] auf einem Server anmeldet und die Sitzung wird unterbrochen, z.B. durch abmelden, dann werden alle gestarteten Programme umgehend beendet (siehe auch [:Signale:] -SIGHUP dazu). Um dies zu verhindern startet die div. Programme auf dem Server unter `tmux`, anschließend klinkt man sich aus (detach), die Programme laufen im Hintergrund weiter. Zu einem späteren Zeitpunkt nimmt man die Sitzung wieder auf (attach) um z.B. die Ergebisse zu kontrollieren oder weitere Programme zu starten. Einige Merkmale von tmux: * Leichtgewichtig, da eine Client-Server Struktur. * Farbliche Darstellung mittels ncurses. * Horizontales/vertikales splitten des Bildschirms. * Statusleiste mit Informationen zu Sitzungen, Fenstern, Programmnamen, Hostname und Datum/Uhrzeit. * Copy&Paste zwischen den verschiedenen Anwendungen. * Verwaltung mehrere "paste buffer". * Benennen und finden von Sitzungen. * Steuern mittels Tastenkombinationen und/oder Befehlen/Aliase * Tastaturbelegung von Emacs (standard) oder Vim auswählbar. * Gut dokumentierte Befehlsschnittstelle (manpage). * Anpassbar über die '''tmux.conf''' oder zur Laufzeit. * Über Skripte steurbar. = Installation = `tmux` ist seit Karmic Kola in den Paketquellen enthalten und kann mit {{{#!vorlage Paketinstallation tmux }}} installiert[1] werden. = Bedienung = `tmux` wird über ein normales Terminal[2] gestartet: {{{#!vorlage Befehl tmux -words [-28lquv ] [-c -file ... -shell-command ] [-f -file ... -file ] [-L -file ... -socket-name ] [-S -file ... -socket-path ] [command [flags ] ] }}} Sollte kein Server gestartet sein, so wird dieser automatisch mitgestartet. `tmux` kennt eine Reihe von Aufrufoptionen die in der [:man:Manpage] sehr gut beschrieben sind. Für den normalen Start einer neuen `tmux`-Sitzung reicht der Aufruf {{{#!vorlage Befehl tmux }}} aus, siehe dazu auch die [#Beispiele Beispiele]. = Kurztasten = `tmux` kann fast ausschließlich über Kurztasten (Shortcuts) bedient werden. Die Kommandosequenz wird standardmäßig mit [[Vorlage (Tasten Strg+B)]] eingeleitet und die folgende Eingabe wird als weiteres Kürzel interpretiert. {{{#!vorlage Tabelle <-2 tablestyle="width: 90%;" rowclass="titel"> Einige ausgewählte Tastaturkürzel (Shortcuts) +++ Tastaturkürzel Bedeutung +++ [[Vorlage (Tasten Strg+B)]] Senden des Kurztasten-prefix +++ [[Vorlage (Tasten Strg+B)]] '''?''' Anzeige aller aktiven Shortcuts (keybindings). +++ [[Vorlage (Tasten Strg+B)]] '''d''' (detach) Ausklinken/aushängen der akt. Sitzung (Client) und in den Hintergund verschieben, +++ [[Vorlage (Tasten Strg+B)]] '''s''' (switch) Wechseln zwischen verschiedenen Sitzungen (Client). +++ [[Vorlage (Tasten Strg+B)]] '''c''' (create) Erzeugen eines neuen Fensters (Shell), +++ [[Vorlage (Tasten Strg+B)]] '''&''' Beenden der aktuellen Fensters, muss mit `y` bestätigt werden. +++ [[Vorlage (Tasten Strg+B)]] ''',''' Umbenennen des aktuellen Fenstertitels +++ [[Vorlage (Tasten Strg+B)]] '''l''' (last) Wechseln zum letzten aktiven Fenster (ist durch - markiert) +++ [[Vorlage (Tasten Strg+B)]] '''p''' (previous) Wechsel zum vorherigen Fenster (z.B. von 3 nach 2). +++ [[Vorlage (Tasten Strg+B)]] '''n''' (next) Wechsel zum nächsten Fenster. +++ [[Vorlage (Tasten Strg+B)]] `nr.` Wechsel zur Fenster-Nr., nr.=der numerische Bezeichner des Fen