GNU/Linux >> Tutoriels Linux >  >> Linux

Utiliser Irssi dans une session Linux tmux

Si vous êtes déjà un peu familiarisé avec tmux et Irssi, n'hésitez pas à vous référer aux étapes de base de la section TL; DR ci-dessous. Pour plus de détails et d'options, consultez les étapes de configuration plus approfondies plus bas sur la page.

Multiplexeur de terminaux (tmux)

Depuis le tmux page de manuel : tmux est un multiplexeur de terminaux :il permet de créer, d'accéder et de contrôler plusieurs terminaux depuis un seul écran. tmux peut être détaché d'un écran et continuer à fonctionner en arrière-plan, puis être rattaché plus tard. tmux est une alternative à la commande screen.

Irssi

Irssi est un client Internet Relay Chat (IRC) basé sur un terminal pour les systèmes *nix. À partir de la page de manuel d'Irssi : Irssi est un client modulaire de relais Internet Chat. Il est hautement extensible et très sécurisé. Étant un client plein écran basé sur termcap avec de nombreuses fonctionnalités, Irssi est facilement extensible via des scripts et des modules.

[ Vous pourriez également aimer : Utiliser des modificateurs de mots avec l'historique de Bash sous Linux ]

TL;DR

J'utilise Irssi pour mon client IRC et je l'exécute dans un tmux session. Pour configurer cela, connectez-vous en SSH avec votre nom Kerberos à votre serveur shell ou serveur de saut : jump_server . Enregistrez ce fichier de configuration :fichier de configuration tmux (.tmux.conf) dans ~/ , lancez tmux , enregistrez le fichier de configuration Irssi (config) dans votre ~/.irssi/ dossier, définissez votre nom et votre pseudo IRC dans les Paramètres section en bas du fichier de configuration, puis démarrez irssi . Une fois dans Irssi, lancez :

[(status)] /connect <irc_server>

Pour rejoindre d'autres chaînes :

/join #whatever

Pour changer de pseudo :

/nick newname

Pour envoyer un message privé à quelqu'un :

/query otherperson

Pour modifier la salle/requête affichée :

Alt + gauche outouche fléchée vers la droite

Ou

Alt + 2, 3, 4, 5

Et cela sautera à cet écran. Je sais que #sbr-sysmgmt est en #2, donc Alt + 2 m'emmènera dans cette pièce. Pour répertorier les personnes d'un canal :

/who #sbr-sysmgmt

Ou

/names

Et cela répertoriera toutes les personnes présentes dans la salle actuelle.

Pour quitter tmux mais laissez IRC fonctionner :

Ctrl + a , relâchez le contrôle , d

Pour reprendre votre session SSH + tmux, saisissez :

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

J'ai un script de démarrage à la fin de ce document que vous pouvez utiliser.

Documentation plus approfondie

J'utilise Irssi pour le client pour plusieurs raisons. Principalement, je le préfère parce qu'il est exécuté dans une console plutôt que comme une application autonome. Pour cette raison, je peux l'exécuter dans une session SSH si Irssi est installé sur le serveur distant. Pour le rendre plus permanent, j'exécute ensuite Irssi à l'intérieur d'un tmux session. Cela signifie que je peux me connecter au VPN puis exécuter une commande :/usr/bin/ssh -t <jump_server> tmux attach , qui me connecte via SSH au serveur distant et attache automatiquement mon tmux session, qui a Irssi en cours d'exécution.

Configurer tmux

Pour configurer cela à partir de zéro, SSH au jump_server serveur. Après cela, utilisez curl , wget , ou quoi que ce soit pour obtenir le tmux.conf fichier (sauf si vous avez déjà un fichier tmux.conf ) à partir de mon fichier de configuration tmux et enregistrez-le sous votre .tmux.conf . Voici des informations supplémentaires de la page de manuel pour tmux :

-f fichier Spécifiez un autre fichier de configuration. Par défaut, tmux charge le fichier de configuration système à partir de /etc/tmux.conf, s'il est présent, puis recherche un fichier de configuration utilisateur dans ~/.tmux.conf.

Maintenant que vous avez ~/.tmux.conf , vous pouvez démarrer le tmux programme. C'est fondamentalement la même chose que screen si vous le connaissez. Sinon, tmux vous permet de démarrer une commande, de vous déconnecter de la session (ce qui normalement tuerait votre commande en cours d'exécution), de redémarrer votre session SSH et de vous rattacher à la session où votre commande est toujours en cours d'exécution. Pour voir cela, lancez tmux avec cette commande :

$ tmux

Ensuite, commencez à envoyer un ping à Google :

$ ping google.com

Pendant que le ping va, déconnectez-vous de votre tmux session. Pour ce faire, appuyez sur Ctrl + a , relâchez le contrôle touche , puis appuyez sur d . Vous devriez être de retour à l'écran principal de SSH. N'hésitez pas à vous déconnecter de la session SSH puis à vous reconnecter. Pour voir votre tmux sessions, exécutez la commande suivante :

$ tmux ls

Vous devriez voir votre session unique répertoriée. Pour le rattacher, tapez :

$ tmux attach

Vous devriez être de retour à votre ping commande, qui est toujours en cours d'exécution. Vous pouvez avoir plusieurs tmux sessions, donc pour attacher à une session spécifique, listez-les d'abord, puis spécifiez quelle session attacher :

[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

Pour mes besoins, je n'ai généralement qu'un seul tmux session sur ce serveur afin que je puisse passer juste tmux attach à ma commande SSH et je n'ai aucun problème de connexion à ma session Irssi.

Configurer Irssi

À ce stade, vous avez une connaissance préliminaire de l'utilisation de tmux . C'est assez simple pour les cas d'utilisation de base, et heureusement, tout ce qui m'importe, c'est cette utilisation de base. Maintenant, pour la configuration Irssi. Enregistrez le fichier de configuration Irssi dans votre ~/.irssi/ dossier, définissez votre nom et votre pseudo IRC dans les Paramètres section en bas du fichier de configuration, puis démarrez irssi . Une fois dans Irssi, connectez-vous au serveur IRC Red Hat :

[(status)] /connect <irc_server>

Hé, hé, vous utilisez IRC !

Pour rejoindre d'autres chaînes :

/join #whatever

Pour changer de pseudo :

/nick newname

Pour envoyer un message privé à quelqu'un :

/query otherperson

Pour modifier la salle/requête affichée, sélectionnez :

Alt + gauche outouche fléchée vers la droite

Ou

Alt + 2, 3, 4, 5

Et cela sautera à cet écran. Je sais que # sbr-sysmgmt est en #2, donc Alt + 2 va m'emmener dans cette pièce.

Pour répertorier les personnes d'un canal :

/who #sbr-sysmgmt

Ou

/names

Et cela répertoriera toutes les personnes présentes dans la salle actuelle.

Pour quitter tmux mais laissez IRC en cours d'exécution, sélectionnez :

Ctrl + a , relâchez le contrôle , et sélectionnez d

Pour reprendre votre session SSH + tmux, exécutez :

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

[ Obtenez cet ebook gratuit :Gérer vos clusters Kubernetes pour les nuls. ]

Récapitulez

Voici le script de démarrage que j'utilise chaque matin qui me connecte à mon VPN (VPN1 ou VPN2), fait un kinit , puis me connecte au serveur SSH :

#!/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

Vous avez là un moyen simple de gérer les sessions Irssi via tmux. Prenez quelques minutes pour apprendre le processus, afin de gagner en efficacité et en commodité.


Linux
  1. Déboguer Linux avec ProcDump

  2. Partage de sessions de terminal Linux avec Tmux et Screen

  3. API de socket Tmux ?

  4. Utilisation de la commande ripgrep (rg) sous Linux

  5. 50 didacticiels d'administration système UNIX / Linux

Installer MongoDB à l'aide de Vagrant sous Linux

Conseils d'utilisation de tmux

Comment installer et utiliser Tmux (multiplexeur de terminaux) sous Linux

Installer Linux dans Windows à l'aide de VirtualBox [Guide étape par étape]

Comment installer tmux sous Linux

Utilisation de la commande Watch sous Linux