Lorsqu’un processus s’exécute sous Linux et nécessite un temps prolongé, il arrive souvent que l’on ait besoin de l’interrompre sans pour autant le terminer. Que ce soit parce que vous devez quitter une session de travail ou pour d’autres raisons, il existe un outil très utile : Reptyr. Cet utilitaire permet de transférer un processus d’un terminal à un autre, ce qui peut considérablement faciliter la gestion de vos tâches.
Comprendre Reptyr
Reptyr est un outil en ligne de commande conçu pour prendre un processus en cours d’exécution et le rediriger vers un autre terminal. Autrement dit, cet outil vous permet de « répéter » un processus d’un terminal à un autre. Le terme « Reptyr » évoque également le concept de pseudoterminal (PTY), qui relie deux processus de manière à ce que tout échange d’information dans l’un soit reflété dans l’autre. Cela devient particulièrement pratique lorsque vous travaillez à distance via SSH ou lorsque vous souhaitez gérer plusieurs sessions.
Pourquoi choisir Reptyr ?
Reptyr se distingue de ses concurrents, tels que Screenify ou Retty, en assurant une migration plus fluide des processus sans rencontrer de bugs majeurs. La plupart de ces outils laissent le terminal de contrôle inchangé même après le transfert, ce qui peut entraîner des problèmes si vous essayez d’envoyer des commandes, comme des interruptions ou des ajustements de taille de la fenêtre. Avec Reptyr, le terminal de contrôle est correctement ajusté pour refléter le nouveau terminal, ce qui vous permet d’exécuter vos commandes comme si vous n’aviez jamais changé d’écran.
Utilisation de Reptyr
Pour utiliser Reptyr efficacement, il est essentiel de suivre une série d’étapes précises. Voici comment effectuer le déplacement d’un processus vers un nouvel écran de manière méthodique :
Déplacement de processus vers un autre écran Shell [Linux]
- Suspendre le processus : Commencez par suspendre le processus en 使用ant la commande
Ctrl + Z
. Cela met temporairement le processus en pause. - Envoyer le processus en arrière-plan : Pour poursuivre le processus en mode d’exécution sans qu’il soit attaché au terminal actuel, utilisez
bg
pour le remettre en arrière-plan. - Détacher le processus : Employez la commande
disown
pour libérer le processus de sa relation avec le shell actuel, empêchant ainsi sa terminaison lors d’une déconnexion. - Lancer GNU Screen : Assurez-vous d’avoir GNU Screen installé. Ouvrez une nouvelle session de Screen en tapant
screen
. - Récupérer le processus : Pour transférer le processus, utilisez Reptyr suivi du PID du processus. S’il n’est pas immédiatement connu, vous pouvez l’obtenir avec la commande
pgrep nom_du_processus
. Ainsi, la commande complète ressemblera àreptyr $(pgrep nom_du_processus)
.
Une fois ces étapes effectuées, vous pouvez fermer votre terminal ou vous déconnecter en toute confiance, sachant que votre processus continue de tourner sans interruption.
Questions fréquentes
1. Quelles distributions Linux supportent Reptyr ?
Reptyr est largement disponible sur de nombreuses distributions, notamment Ubuntu et ses dérivés, ainsi que sur d’autres systèmes basés sur Debian. Vous pouvez également le compiler à partir du code source pour d’autres distributions.
2. Quels sont les prérequis pour utiliser Reptyr ?
Avant d’utiliser Reptyr, assurez-vous d’avoir installé le paquet via votre gestionnaire de paquets. De plus, vous devez avoir les permissions appropriées sur le processus que vous souhaitez transférer.
3. Reptyr peut-il être utilisé pour transférer des processus vers des sessions SSH ?
Oui, Reptyr est parfaitement adapté pour transférer des processus d’un terminal local vers une session SSH. Cela facilite le travail à distance, permettant de reprendre des tâches interrompues à partir de n’importe où.