L’une des forces de Linux est son orientation vers la mise en réseau, qui est largement due à son héritage Unix. Il y a une raison pour laquelle Linux est un système d’exploitation de choix pour les serveurs.
Le principal moyen d'accéder à distance aux serveurs Linux est via SSH ou Secure Shell. Bien qu'il soit utile et sécurisé, il a été conçu à une époque avant que les connexions Wi-Fi et cellulaires ne deviennent monnaie courante.
Si vous déplacez votre ordinateur vers un autre réseau Wi-Fi ou le mettez en veille, vous pourriez vous retrouver déconnecté avec un écran de terminal apparemment gelé.
Pourquoi Mosh + Tmux?
Heureusement, il existe quelques outils qui rendront l'informatique à distance avec SSH plus facile à utiliser et plus fiable. Vous pouvez les utiliser sur tout, d'un terminal physique dans un centre de données à un serveur domestique, sur un serveur cloud, même sur une autre machine de bureau exécutant Unix ou un système d'exploitation BSD.
Mosh est un outil au-dessus de SSH qui le rend conscient de l'évolution des connexions réseau, et
tmux est un "multiplexeur de terminal" qui vous permet de conserver une session shell sur différentes connexions et même de les partager.Lire la suite: Qu'est-ce que SSH et que représente-t-il?
Premiers pas avec Mosh
Mosh est un projet open source qui fait fonctionner SSH sur des connexions itinérantes et intermittentes, car de nombreuses connexions sans fil sont les deux.
Vous pouvez passer votre ordinateur d'un réseau câblé à un réseau câblé, à un autre réseau sans fil, et votre connexion restera active. Vous pouvez également mettre votre ordinateur portable en veille lorsqu'il est connecté et une fois le réseau reconnecté, vous pourrez taper dans la fenêtre du terminal.
En rapport: Gérez les connexions SSH à distance avec ces commandes Linux
Si vous perdez votre connexion réseau, Mosh vous dira qu’il n’a pas entendu parler du serveur distant. Si le serveur fait écho lentement aux caractères, il soulignera ce que vous tapez jusqu'à ce que le dernier écran revienne.
Il y a plus de détails techniques dans un article rédigé par les auteurs, mais l'installer en tant qu'utilisateur est assez simple. Mosh est largement disponible dans la plupart des gestionnaires de paquets des distributions Linux. Il est également disponible en tant qu'application Google Chrome.
Installez Mosh sur Linux
Par exemple, pour installer dans Ubuntu:
sudo apt installer mosh
Bien entendu, le serveur devra également avoir le serveur Mosh installé. L'avantage de Mosh est que le composant serveur peut fonctionner en mode utilisateur, vous n'avez donc pas besoin d'être root pour l'installer.
Utilisation de Mosh
Lorsque vous souhaitez vous connecter à votre machine distante, tapez simplement:
nom d'utilisateur mosh @ serveur
De toute évidence, vous souhaiterez remplacer le "nom d'utilisateur" et le "serveur" par votre nom d'utilisateur et le nom de la machine à laquelle vous essayez de vous connecter.
Consultez la documentation si vous avez des besoins plus spécialisés, tels que la connexion à un autre port.
Si tout fonctionne correctement, vous aurez une session de terminal à distance, uniquement avec SSH. Vous pourrez émettre des commandes de la même manière, mais votre connexion sera plus fiable.
Premiers pas avec Tmux
Vous disposez d'une connexion de terminal à distance qui peut survivre aux modifications du réseau sans fil, mais qu'en est-il lorsque vous êtes enfin connecté?
Vous pouvez exécuter une tâche qui prend beaucoup de temps, comme l'installation d'un logiciel ou même une longue tâche de compilation. Que se passe-t-il si vous êtes déconnecté. Le travail s'arrêtera probablement lorsque le terminal le fera.
De plus, vous ne pouvez effectuer qu'une seule chose à la fois dans le terminal, même avec le contrôle des tâches. Si vous vouliez exécuter un éditeur plein écran, il occupera tout le terminal.
Tmux est une réponse à ces problèmes. Il s’agit d’un «multiplexeur de terminaux» qui vous permet d’exécuter plusieurs terminaux dans une même fenêtre. C’est comme un terminal à onglets sur un bureau Linux, mais beaucoup plus flexible.
Vous pouvez détacher une session et vous déconnecter, pour y revenir plus tard et reprendre là où vous vous étiez arrêté. Vous pouvez ouvrir plusieurs fenêtres de terminal. Vous pouvez éditer un programme dans une fenêtre dans un éditeur et le tester en ligne de commande dans une autre.
L'installation de tmux est également très simple. Comme Mosh, il est inclus dans de nombreux gestionnaires de paquets de distribution Linux. Dans Ubuntu, vous devez simplement taper:
sudo apt installer tmux
Évidemment, vous devrez l’installer sur votre machine distante pour l’utiliser là-bas, mais c’est très utile, localement également.
Une fois installé, vous lancez tmux en utilisant la commande:
tmux
Vous vous lancerez ensuite dans une fenêtre de terminal, similaire à celle que vous avez lancée localement. Vous verrez une barre d'état indiquant dans quelle fenêtre vous vous trouvez.
Tmux divise l'écran en "fenêtres" avec plusieurs "volets", montrant leurs propres terminaux. Vous pouvez réorganiser et redimensionner ces volets, avec des fenêtres illimitées avec leurs propres volets.
Étant donné que tmux est un programme basé sur un terminal, il est entièrement contrôlé à partir du clavier. La commande de préfixe par défaut pour exécuter des commandes dans tmux est Ctrl + B. Cela peut être modifié dans le fichier de configuration.
Le fichier de configuration utilisateur est le .tmux.conf dans votre répertoire personnel. La documentation contient plus de détails, mais le nombre de personnalisations que vous pouvez effectuer est considérable.
Tmux peut avoir une courbe d'apprentissage, mais avec d'autres programmes "difficiles" dans le monde Linux / Unix, beaucoup les utilisateurs trouvent que le temps consacré à l'apprentissage de ces programmes est bien dépensé dans ce qu'il leur permet fais.
L'une des options les plus puissantes est la possibilité de détacher votre session et de la rattacher plus tard. Pour ce faire, tapez Ctrl + D. Pour rattacher, tapez "tmux attach" dans le shell, et vous vous retrouverez à votre session.
Cela signifie que votre session restera active aussi longtemps que la machine le fera. Cette méthode est également populaire pour exécuter des applications de chat comme IRC, car les gens peuvent rester longtemps dans des salles de chat. Il est également possible de partager des sessions avec d’autres personnes, par exemple pour la programmation en binôme.
Combiner Mosh et Tmux
La vraie puissance d'une session à distance vient des combinaisons de Mosh et tmux.
Avec Mosh, vous pouvez vous connecter à votre machine distante de n'importe où sans vous soucier de la fiabilité de votre connexion. Si vous souhaitez exécuter quelque chose qui peut prendre du temps, vous pouvez dissocier votre session et y revenir plus tard.
La combinaison de Mosh et tmux vous permettra une fiabilité et une flexibilité maximales dans vos connexions à distance. Il y a beaucoup plus à explorer dans tmux seul qui libèrera la puissance de vos sessions de terminal.
Aide-mémoire sur les commandes essentielles de Tmux
- Linux
- Terminal
- Linux
- SSH
Abonnez-vous à notre newsletter
Rejoignez notre newsletter pour des conseils techniques, des critiques, des ebooks gratuits et des offres exclusives!
Un pas de plus…!
Veuillez confirmer votre adresse e-mail dans l'e-mail que nous venons de vous envoyer.