Ubuntu 12.04 „Precise Pangolin“
Ubuntu 10.04 „Lucid Lynx“
byobu
ist ein Erweiterungs-Script bzw. Anwendungstool, aufbauend auf dem Shell-Fenstermanager Screen. Es dient der vereinfachten Bedienung von Screen und zeigt darüber hinaus nützliche System-Informationen und Statusmeldungen innerhalb von zwei Zeilen am unteren Rand der Bildschirm-Sitzung(en). Dort können außerdem verschiedene Shell-Sitzungen, vergleichbar Browser-Tabs, in Registerkarten verwaltet werden.
byobu ist in einer Standard-Installation bis Ubuntu 10.04 enthalten. Ab Ubuntu 10.10 muss es erst installiert [1] werden:
byobu
mit apturl
Paketliste zum Kopieren:
sudo apt-get install byobu
sudo aptitude install byobu
Bei den folgenden Paketen handelt sich um Entwickler-Versionen! Die Versionen sind ggf. nicht stabil und unterliegen häufiger Aktualisierungen, die mitunter auch neue Funktionen beinhalten.
Adresszeile zum Hinzufügen des PPAs:
ppa:byobu/ppa
Zusätzliche Fremdquellen können das System gefährden.
Ein PPA unterstützt nicht zwangsläufig alle Ubuntu-Versionen. Weitere Informationen bietet die PPA-Beschreibung vom Benutzer/Team byobu.
Damit Pakete aus dem PPA genutzt werden können, müssen die Paketquellen neu eingelesen werden.
![]() |
byobu-shell |
Das Programm kann über die Eingabe von:
byobu
im Terminal gestartet werden.
Darüber hinaus ist unter Ubuntu 10.04 der Anwendungs-Starter in "System -> Einstellungen -> Hauptmenü -> Zubehör" hinterlegt - muss jedoch zuerst aktiviert werden. Danach ist byobu unter "Anwendungen -> Zubehör" im Startmenü gelistet. Bei häufiger Nutzung ist eine Platzierung des Starters im Panel oder auf dem Desktop per Drag'n'Drop aus dem Startmenü [3] zu empfehlen.
Grundsätzlich kann byobu als Standard-Shell statt des „herkömmlichen“ Terminals verwendet werden, da es außer den zusätzlichen Eigenschaften und Funktionen, die Screen bereit stellt, ein vollwertiges Terminal ist. Funktion und Bedienung sind somit auf Shell-Ebene mit der des herkömmlichen Terminals identisch.
Ein bedeutender Vorteil zum konventionellen Terminal ist der, dass ein in byobu (=Screen) gestarteter und darin aktiver Prozess von der Shell „entkoppelt“ bzw. unabhängig ist. Ruft man beispielsweise in einem herkömmlichen Terminal den 3D-Beschleunigungs-Test:
glxgears
auf, so erscheint ein Fenster, in dem sich drei Zahnräder drehen und die Anzahl der Bilder pro Sekunde („frames per second“) wird im Terminal angezeigt. Wird nun das Terminal geschlossen, so wird auch glxgears beendet. Nicht so bei byobu. Die Zahnräder drehen sich weiter, weil auch die Anwendung weiter aktiv ist. Dies kann man nach erneutem Starten von byobu zudem daran erkennen, dass auch die Bilder pro Sekunde während deaktiviertem byobu weiterhin ausgegeben wurden.
Screen bietet die Möglichkeit verschiedene virtuelle Konsolensitzungen innerhalb eines einzigen Fensters zu erzeugen und zu verwalten. Anders als dort durch -mehr oder weniger umständliche- Tastatur-Shortcuts bietet byobu hier ein komfortables und übersichtliches Sitzungs-Management in der oberen der beiden Informations-Zeilen in einem Panel am unteren Rand des Bildschirms. Über die Funktionstasten werden z.B. neue Sitzungen geöffnet, durch geöffnete Sitzungen (Tabs) gewechselt, die Verbindung zur aktuellen Sitzung gelöst (detach) oder das Menü aufgerufen (s.u.).
byobu unterstützt die Darstellung einer umfangreichen Reihe von System- und Statusinformationen in der unteren der beiden Zeilen des Fenster-Panels. Die Einblendung der gewünschten Informationen ist über das Menü F9 ("Statusmeldungen ändern") durch Aktivierung bzw. Deaktivierung der einzelnen Statusmeldungen frei konfigurierbar (s.u.).
Funktionstasten & Aktion (Keybindings) | |||
Funktionstaste | Aktion | ||
F2 | Neue Sitzung öffnen (Neuer Tab) | ||
F3 | Zur vorherigen Sitzung wechseln (Tab links) | ||
F4 | Zur nächsten Sitzung wechseln (Tab rechts) | ||
F5 | Panel neu laden / Informationen aktualisieren | ||
F6 | Von Sitzung lösen (detach) = byobu schließen (Sitzungen & Prozesse bleiben aktiv und sind nach Neustart wieder verfügbar) | ||
F7 | Enter copy/scrollback mode *? | ||
F8 | Sitzung (Tab) umbenennen | ||
F9 | Menü | ||
F12 | Lock Terminal (Nur im reinen Shellmodus relevant, da in der GUI durch schließen des Fensters & Neustart zu umgehen) | ||
Strg + C | Prozess beenden | ||
Strg + D | Sitzung beenden & Tab schließen |
Statusmeldungen und Bedeutung | |||
Benachrichtigung | Bedeutung (Ort im Panel) | Farbe (Text / Hintergrund) | |
apport | Bei Programmabsturz erstellt apport einen Bericht ("crash report") und erwartet, dass der User entscheidet, ob dieser Bericht versendet wird oder nicht (="pending crash report"). Diese Information erinnert den User hieran. | orange /schwarz | |
arch | Systemarchitektur der installierten Distribution. Gleichbedeutend dem Befehl arch . Wird hier die Information über die Architektur der Paketverwaltung bevorzugt, ist hierfür in der Datei /usr/lib/byobu/arch [3] der Eintrag uname -m in dpkg --print-architecture zu ändern. (unten/links) | standard / standard | |
battery | Akku-Ladestatus; |-| Entladen, |+| Laden, |=| Voll Geladen - Beim Entladen und Laden wird der Ladezustand in % dargestellt - Zur weiteren Hervorhebung ändert sich die Hintergrundfarbe je nach Zustand: Grün, Gelb, Rot (unten/rechts) | (siehe "Bedeutung") | |
cpu_count | Anzahl der Prozessor-Kerne gefolgt von einem "x" (unten/rechts) | standard / standard | |
cpu_freq | Prozzessor-Takt in GHz (unten/rechts) | weiß / hellblau | |
custom | Benutzerdefinierte, ausführbare Skripte oder Anwendungen aus Verzeichnis ~/.byobu/bin (muss selber angelegt werden) einbinden. Syntax der Skript-Bezeichnung: n_name , wobei n die Aktualisierungs-Frequenz der Statusanzeige in Sekunden angibt; n sollte nicht weniger als 5 Sekunden betragen (z.B. 05_foo, 06_bar, etc.). Bitte beachten: CPU-intensive Skripte können Einfluss auf die gesamte System-Performance haben! | standard / standard bzw. Benutzdefiniert | |
date | Datum. Format: Jahr-Monat-Tag (unten/rechts) | standard / standard | |
disk | Festplattenplatz im Verzeichnis / ; Format: Gesamt verfügbar, Belegt in %. Das Standardverzeichnis kann geändert werden. Hierfür in der Datei ~/.byobu/statusrc durch MONITORED_DISK=/wasauchimmer wunschgemäß anpassen [3] (unten/weit-rechts) | weiß / lila | |
ec2_cost | Berechnung laufender Kosten des Webservice Amazon EC2 ![]() | grün / schwarz | |
fan_speed | Prozessor- oder System-Lüfter-Geschwindigkeit, wie/wenn vom lm-Sensor übermittelt (unten/rechts) | schwarz / grau | |
hostname | Hostname des Systems (oben/rechts) | weiß / schwarz | |
ip_adress | IP-Adresse des Systems in Dezimalpunktschreibweise (oben/rechts) | schwarz / grau | |
load_average | Ø in der letzten Minute vom System geladen in MB (unten/rechts) | schwarz / gelb | |
logo | Kryptische Annäherung an das aktuelle Betriebssystem-Logo. Anpassbar in ~/.byobu/logo oder überschreiben durch setzen von LOGO=*wunschsmilie* in ~/.byobu/statusrc [3] (unten/links) | nach Einstellung | |
System-Mail für den aktuellen User; Anzeige: "M" (Nicht verwechseln mit email!) (unten/links) | schwarz / grau | ||
mem_available | Verfügbarer Arbeitsspeicher ("RAM") in MB bzw. GB (unten/rechts) | weiß / grün | |
mem_used | Benutzter Arbeitsspeicher in % vom verfügbaren Arbeitsspeicher (unten/rechts) | weiß / grün | |
network | Upload-/ Download-Bandbreite in kB/s der letzten 3 Sekunden ('^' = 'up' und 'v' = 'down' (unten/rechts) | weiß / violett | |
processes | Gesamtzahl der laufenden Prozesse auf dem System gefolgt von einem '&' als Hinweis auf 'Background-Prozesse' (unten/rechts) | weiß / ocker | |
reboot_required | Neustart erforderlich nach System-Update; Anzeige: "R". Zusätzlich wird <F5> angezeigt, wenn nur das Profil aktualisiert werden muss um Änderungen sichtbar zu machen (unten/links) | weiß / blau | |
release | Distribution und Version des laufenden Systems, wie von 'lsb release' übermittelt. Override möglich durch setzten von DISTRO=wasauchimmer in ~/.byobu/statusrc [3] (unten/links) | schwarz (fett) / grau) | |
services | Service. Der Benutzer kann hier eine Dienst-Überwachung anzeigen lassen. Hierzu ist die SERVICE-Variable in ~/.byobu/status anzupassen. [3] (unten/mitte) | cyan / weiß | |
time | Systemzeit in Std:Min:Sek (unten/rechts) | standard / standard | |
time_utc | Systemzeit nach "Coordinated Universal Time" (UTC, auch GMT) in Std:Min (unten/rechts) | schwarz / hellgrau | |
updates_available | Anzahl der verfügbaren Updates gefolgt von einem '!' - bei Sicherheits-Updates gefolgt von '!!' (unten/mitte) | weiß / rot | |
uptime | Laufzeit des Systems seit dem letzten Boot in _h_m (Std min) (unten/links) | blau / grau | |
users | Anzahl der Remote-Benutzer die via SSHD im System angemeldet sind. Leer, wenn 0 Benutzer (unten/rechts) | rot / grau | |
whoami | Name des Benutzers der Bildschirmsitzung (oben/rechts) | weiß / schwarz | |
wifi_quality | WLAN-Qualität. Anzeige der Bitrate in 'Mbps' gefolgt von der Signalstärke in % (unten/links) | grau / petrol |
Man kann Byobu auch das alte SSH-Screen-Verhalten beibringen:
Mit den folgenden Erweiterung am Ende der Datei .profile oder der system-weiten /etc/profile wird automatisch zu einer screen-Session verbunden, wenn die Verbindung per ssh erfolgt. Bestehende Verbindungen zu der Session werden ggf. gelöst.
Man sollte byobu nicht in die Datei .bashrc eintragen, da es sonst in jedem Terminal ausgeführt wird. Das würde also auch für Dinge wie scp oder Byobus eigene "virtuelle Terminals" gelten.
if [[ "$TERM" != "screen-bce" && "$SSH_CONNECTION" != "" ]]; then /usr/bin/byobu-screen -S sshscreen -d -R && exit fi
Wird der Screen beendet oder detached, wird auch die ssh-Verbindung getrennt, also ist so auch nur eine ssh-Verbindung möglich. Das kann verhindert werden, wenn man && exit
weglässt.
Muss /usr/bin/byobu-screen durch /usr/bin/byobu ersetzt werden.