GNU/Linux >> LINUX-Kenntnisse >  >> Linux

Verwenden von Irssi in einer Linux-tmux-Sitzung

Wenn Sie bereits etwas mit tmux und Irssi vertraut sind, können Sie sich einfach auf die grundlegenden Schritte im Abschnitt TL;DR unten beziehen. Weitere Einzelheiten und Optionen finden Sie in den ausführlicheren Konfigurationsschritten weiter unten auf der Seite.

Terminal-Multiplexer (tmux)

Aus dem tmux Manpage: tmux ist ein Terminal-Multiplexer:Er ermöglicht die Erstellung, den Zugriff und die Steuerung einer Reihe von Terminals von einem einzigen Bildschirm aus. tmux kann von einem Bildschirm getrennt werden und im Hintergrund weiterlaufen, um später wieder angeschlossen zu werden. tmux ist eine Alternative zum Bildschirmbefehl.

Irsi

Irssi ist ein terminalbasierter Internet Relay Chat (IRC)-Client für *nix-Systeme. Von der Irssi-Manpage: Irssi ist ein modularer Internet-Relay-Chat-Client. Es ist sehr erweiterbar und sehr sicher. Als Termcap-basierter Vollbild-Client mit vielen Funktionen ist Irssi einfach durch Skripte und Module erweiterbar.

[Das könnte Ihnen auch gefallen: Wortmodifikatoren mit Bash-Verlauf in Linux verwenden]

TL;DR

Ich verwende Irssi für meinen IRC-Client und führe es innerhalb eines tmux aus Sitzung. Stellen Sie dazu eine SSH-Verbindung mit Ihrem Kerberos-Namen zu Ihrem Shell-Server oder Jump-Server her: jump_server . Speichern Sie diese Konfigurationsdatei:tmux config file (.tmux.conf) in ~/ , starten Sie tmux , speichern Sie die Irssi-Konfigurationsdatei (config) in Ihrem ~/.irssi/ Ordner, legen Sie Ihren Namen und IRC-Nick in den Einstellungen fest Abschnitt am Ende der Konfigurationsdatei und starten Sie dann irssi . Sobald Sie sich in Irssi befinden, führen Sie Folgendes aus:

[(status)] /connect <irc_server>

Um anderen Kanälen beizutreten:

/join #whatever

So ändern Sie Ihren Spitznamen:

/nick newname

So senden Sie jemandem eine private Nachricht:

/query otherperson

Um zu ändern, welches Zimmer/welche Abfrage angezeigt wird:

Alt + links oder Pfeiltaste rechts

Oder

Alt + 2, 3, 4, 5

Und das wird zu diesem Bildschirm springen. Ich kenne das #sbr-sysmgmt ist in #2, also Alt + 2 bringt mich in dieses Zimmer. So listen Sie die Personen in einem Kanal auf:

/who #sbr-sysmgmt

Oder

/names

Und das listet alle Personen im aktuellen Raum auf.

Um tmux zu beenden aber IRC laufen lassen:

Strg + a , lassen Sie Strg los , d

Geben Sie Folgendes ein, um Ihre SSH + tmux-Sitzung fortzusetzen:

/usr/bin/ssh -t <jump_server> tmux attach

Am Ende dieses Dokuments habe ich ein Startskript, das Sie verwenden können.

Ausführlichere Dokumentation

Ich verwende Irssi aus mehreren Gründen für den Client. Hauptsächlich bevorzuge ich es, weil es in einer Konsole und nicht als eigenständige Anwendung ausgeführt wird. Aus diesem Grund kann ich es in einer SSH-Sitzung ausführen, wenn auf dem Remote-Server Irssi installiert ist. Um es dauerhafter zu machen, führe ich dann Irssi innerhalb eines tmux aus Sitzung. Das heißt, ich kann mich mit dem VPN verbinden und dann einen Befehl ausführen:/usr/bin/ssh -t <jump_server> tmux attach , das mich über SSH mit dem Remote-Server verbindet und automatisch meinen tmux anhängt Sitzung, auf der Irssi ausgeführt wird.

tmux konfigurieren

Um dies von Grund auf neu einzurichten, verbinden Sie sich per SSH mit dem jump_server Server. Verwenden Sie danach curl , wget , oder was auch immer, um die tmux.conf zu erhalten Datei (es sei denn, Sie haben bereits eine tmux.conf ) aus meiner tmux-Konfigurationsdatei und speichere sie als deine .tmux.conf . Hier sind zusätzliche Informationen von der Manpage für tmux :

-f Datei Geben Sie eine alternative Konfigurationsdatei an. Standardmäßig lädt tmux die Systemkonfigurationsdatei aus /etc/tmux.conf, falls vorhanden, und sucht dann nach einer Benutzerkonfigurationsdatei unter ~/.tmux.conf.

Jetzt haben Sie ~/.tmux.conf , können Sie den tmux starten Programm. Dies ist im Grunde dasselbe wie screen wenn Sie sich damit auskennen. Wenn nicht, tmux können Sie einen Befehl starten, die Sitzung trennen (was normalerweise Ihren laufenden Befehl beenden würde), Ihre SSH-Sitzung neu starten und wieder an die Sitzung anhängen, in der Ihr Befehl noch ausgeführt wird. Starten Sie dazu tmux mit diesem Befehl:

$ tmux

Beginnen Sie dann, Google zu pingen:

$ ping google.com

Während der ping geht, trennen Sie die Verbindung zu Ihrem tmux Sitzung. Drücken Sie dazu Strg + a , lassen Sie die Steuerung los -Taste und drücken Sie dann d . Sie sollten wieder auf dem SSH-Hauptbildschirm sein. Fühlen Sie sich frei, die SSH-Sitzung zu trennen und dann erneut zu verbinden. Um Ihren tmux zu sehen Sitzungen führen Sie den folgenden Befehl aus:

$ tmux ls

Sie sollten Ihre eine Sitzung aufgelistet sehen. Geben Sie zum Wiederanhängen Folgendes ein:

$ tmux attach

Sie sollten wieder bei Ihrem ping sein Befehl, der noch läuft. Sie können mehrere tmux haben Sitzungen, also um sie an eine bestimmte anzuhängen, listen Sie sie zuerst auf und geben Sie dann an, welche Sitzung angehängt werden soll:

[pgervase@jump_server ~]$ tmux ls
0: 1 windows (created Mon Jan 20 08:06:24 2020) [211x51] (attached)
3: 1 windows (created Fri May  8 11:38:38 2020) [154x39]
[jump_server] [11:39:06 AM]
[pgervase@jump_server ~]$ tmux attach 3

Für meine Zwecke habe ich normalerweise nur einen tmux Sitzung auf diesem Server, sodass ich nur tmux attach weitergeben kann zu meinem SSH-Befehl und habe keine Probleme mit der Verbindung zu meiner Irssi-Sitzung.

Irssi konfigurieren

An dieser Stelle verfügen Sie über ein einführendes Wissen zur Verwendung von tmux . Es ist ziemlich einfach für grundlegende Anwendungsfälle, und glücklicherweise interessiert mich nur diese grundlegende Verwendung. Nun zur Irssi-Konfiguration. Speichern Sie die Irssi-Konfigurationsdatei in Ihrem ~/.irssi/ Ordner, legen Sie Ihren Namen und IRC-Nick in den Einstellungen fest Abschnitt am Ende der Konfigurationsdatei und starten Sie dann irssi . Sobald Sie sich in Irssi befinden, verbinden Sie sich mit dem Red Hat IRC-Server:

[(status)] /connect <irc_server>

Hey, hey, du benutzt IRC!

Um anderen Kanälen beizutreten:

/join #whatever

So ändern Sie Ihren Spitznamen:

/nick newname

So senden Sie jemandem eine private Nachricht:

/query otherperson

Um zu ändern, welches Zimmer/welche Abfrage angezeigt wird, wählen Sie:

Alt + links oder Pfeiltaste rechts

Oder

Alt + 2, 3, 4, 5

Und das wird zu diesem Bildschirm springen. Ich weiß, dass # sbr-sysmgmt ist in #2, also Alt + 2 bringt mich in diesen Raum.

So listen Sie Personen in einem Kanal auf:

/who #sbr-sysmgmt

Oder

/names

Und das listet alle Personen im aktuellen Raum auf.

tmux verlassen aber lassen Sie IRC laufen, wählen Sie:

Strg + a , lassen Sie Strg los , und wählen Sie d aus

Führen Sie Folgendes aus, um Ihre SSH + tmux-Sitzung fortzusetzen:

/usr/bin/ssh -t <jump_server> tmux attach

[ Holen Sie sich dieses kostenlose E-Book:Verwalten Ihrer Kubernetes-Cluster für Dummies. ]

Abschluss

Hier ist das Startskript, das ich jeden Morgen verwende, das mich mit meinem VPN (VPN1 oder VPN2) verbindet und einen kinit ausführt , und verbindet mich dann mit dem SSH-Server:

#!/bin/bash

#### First things first, wait for network connection
echo "step 1: ping google"
until ping -c 1 8.8.8.8 > /dev/null; do sleep 2; done

echo "step 2: stop any old vpn"
/usr/bin/nmcli connection down "VPN1"
/usr/bin/nmcli connection down "VPN2"
echo "step 3: token --- get your token for the vpn"
echo "step 4: start new vpn1 vpn"
/usr/bin/nmcli --ask connection up "VPN1"
#/usr/bin/nmcli --ask connection up "VPN2"

/usr/bin/sleep 5
echo "step 5: kinit"
until /usr/bin/kinit; do
  echo "something didn't work, so shutting down vpn..."
  /usr/bin/nmcli connection down "VPN1"
  echo ""
  echo "redo step 3: token"
  /usr/bin/echo ""
  echo "starting new vpn2 vpn..."
  /usr/bin/nmcli --ask connection up "VPN2"
  #/usr/bin/nmcli --ask connection up "VPN1"
  /usr/bin/sleep 5
  echo "kinit..."
  date
  #/usr/bin/kinit
  date
done
echo "ssh for irc"
/usr/bin/ssh -t <jump_server> tmux attach

Dort haben Sie eine einfache Möglichkeit, die Irssi-Sessions über tmux zu verwalten. Nehmen Sie sich nur ein paar Minuten Zeit, um den Prozess zu lernen, damit Sie etwas effizienter und bequemer werden.


Linux
  1. Teilen von Linux-Terminalsitzungen mit Tmux und Screen

  2. So verwenden Sie Tmux wie ein Profi in 5 Minuten

  3. Tmux-Socket-API?

  4. Kali Linux auf Android mit Linux Deploy

  5. Starten von tmux mit dem Gnome-Terminal

Installieren Sie MongoDB mit Vagrant unter Linux

Tipps zur Verwendung von tmux

So installieren und verwenden Sie Tmux (Terminal Multiplexer) unter Linux

Linux in Windows mit VirtualBox installieren [Schritt-für-Schritt-Anleitung]

So installieren Sie tmux unter Linux

Verwenden des Watch-Befehls unter Linux