Starten Sie unter Linux Befehle am Terminal, landen diese in der History, also im Gedächtnis der Shell. Für die Bash landen die Befehle in der im eigenen Home-Verzeichnis versteckten Datei .bash_histroy, für Zsh unter .zsh_history.
Möchten Sie diese Befehle auf einem anderen Rechner nutzen, also in deren History, müssten Sie die entsprechenden Dateien auf den jeweils anderen Rechner kopieren, sind dies mehrere Rechner, ist dies schon mit Aufwand verbunden – dies lässt sich mit der richtigen Software natürlich umgehen. In diesem Fall mit BashHub.
Inhaltsverzeichnis
Was ist BashHub?
Erst einmal, haben Sie auf jedem Linux-Rechner einen Client installiert – dieser liest Ihre Befehle mit und sendet diese an BashHub. BashHub ist wiederum ein Web-Dienst, auf diesem werden unter Ihrem Account Ihre Befehle gespeichert – Passwörter natürlich nicht – solche speichert auch die genutzte Shell nicht. Über Ihren Account auf BashHub werden Ihre Befehle dann wieder auf Ihre unterschiedlichen Rechner verteilt. Sie müssen sich also auf einem Rechner gestartete Befehl nicht merken, da sie auf dem anderen Rechner nur noch gesucht und gestartet werden müssen.
Der Nachteil von BashHub
Der Client von BashHub ist freie Software – jedoch nicht der Server, auf dem Ihre Befehle gespeichert und an Ihre weiteren Rechner verteilt werden. Dies ist natürlich gerade bei Firmen ein Nachteil, aber auch bei privaten Benutzern, die auf Ihre Daten achten. Der Entwickler von BashHub gibt den Quellcode nicht frei – dies muss natürlich nicht bedeuten, dass er unbedingt sehen will, was Sie tun. Ein bitterer Nachgeschmack ist es jedoch trotzdem.
Den Nachteil von BashHub umgehen
Ein weiterer Entwickler hat wiederum eine freie Variante des Servers von BashHub geschrieben, diesen können Sie ganz einfach über Docker installieren – hierzu mehr unter GitHub und so die Kontrolle über Ihre Befehle am eigenen Server behalten.
BashHub Client installieren
Zur Installation des Clients nutzen Sie das vorbereitete Shell-Script – dieses lässt sich für das proprietäre BashHub, wie auch für den freien Server nutzen. Bevor es an die Installation des Clients geht, installieren Sie über die Paket-Verwaltung pip und das Paket „curl“ – siehe Python-Repository. Folgender Befehl als normaler Benutzer auf dem Terminal lädt das Script herunter und installiert den Client:
curl -OL https://bashhub.com/setup && $SHELL setup
Das Script wird heruntergeladen und der Installer geladen, bestätigen Sie mit Eingabe:
Jetzt legen Sie einen Benutzernamen fest, ein Passwort und geben Ihre E-Mail-Adresse an, für den Rechner legen Sie einen Namen fest, anschließend starten Sie das Terminal neu, oder laden die Konfiguration neu:
Inzwischen erhalten Sie eine E-Mail von BashHub, hier können Sie sich mit Ihrem Account Ihre Daten ansehen:
Nun, die Installation legt in der Konfigurationsdatei der Shell eine neue Variable fest:
if [ -f ~/.bashhub/bashhub.zsh ]; then
source ~/.bashhub/bashhub.zsh
fi
Die Installation der Software selbst, liegt wie in der Variable beschrieben unter .bashhub. Der Reiz ab BashHub ist natürlich die Nutzung über mehrere Rechner hinweg – die Installation ist dieselbe, wie auf dem ersten Rechner. Hier beantworten Sie die Nachfrage:
Are you a new user (Y/n)
natürlich nicht mit Y
, sondern mit n
– geben anschließend Ihre bei der Erstinstallation vergebenen Daten an.
BashHub nutzen
Auf dem Terminal arbeiten Sie jetzt wie gewohnt, Sie geben die Befehle ein, die Sie brauchen. Jetzt können Sie alle gestarteten Befehle mit folgendem Befehl anzeigen lassen:
bh
Wichtig natürlich – haben Sie einen eigenen root-Account, müssen Sie den Client natürlich auch für diesen installieren.
Irgendwann wird die Liste natürlich lange, mit Strg+b oder dem Befehl:
bh -i
starten Sie den interaktiven Modus, hier können Sie nach Befehlen suchen:
Mit den Pfeiltasten markieren Sie den gewünschten und bestätigen mit Eingabe, der Befehl landet in der Shell, wird jedoch nicht ausgeführt, damit Sie ihn, wenn gewünscht, noch ändern können. Mit q wechseln Sie ohne Aktion zurück auf die Shell.
Befinden Sie sich gerade in einem bestimmten Verzeichnis, können Sie sich mit bh -d anzeigen lassen, welche Befehle Sie in diesem Verzeichnis gestartet haben. Mit bh -i -d wiederum im interaktiven Modus.
Markieren Sie im interaktiven Modus einen Befehl und drücken die Leertaste, sehen Sie, wann und wo Sie diesen Befehl ausgeführt haben und weitere Infos:
Zur Info – alles andere als der Exit-Status 0 ist ein Fehler. Möchten Sie einen Befehl nicht speichern, hängen Sie diesem folgenden String an:
#ignore
Ein sehr einfaches Beispiel:
ls #ignore
Möchten Sie BashHub eine Zeit lang nicht nutzen – am aktuellen Gerät:
bashhub off
Um BashHub auf allen Geräten zu deaktivieren:
bashhub off --global
Die Reaktivierung:
bashhub on
Der eigene BashHub-Server
Möchten Sie einen eigenen BashHub-Server nutzen, müssen Sie die Installation des Clients wie oben vornehmen – anschließend öffnen Sie die Konfiguration der Shell und fügen folgende neue Zeile ein:
export BH_URL=http://localhost:8080
Wobei Sie die URL und den Port natürlich an Ihre BashHub-Server-Installation anpassen.
BashHub deinstallieren
Zur Deinstallation entfernen Sie die durch die Installation angelegte Konfiguration aus der Konfiguration der Shell und löschen das erstellte Verzeichnis.
Noch keine Reaktion