Maison >Opération et maintenance >exploitation et maintenance Linux >Une introduction détaillée à la méthode de configuration permettant de maintenir le processus en cours d'exécution après la déconnexion du client SSH sous Linux
Dans le système du serveur cloud ECS Linux, généralement lorsque nous exécutons certaines tâches qui prennent beaucoup de temps à s'exécuter, nous devons attendre la fin de l'exécution avant de déconnecter la connexion SSH ou de fermer le logiciel client , sinon cela pourrait provoquer une interruption d'exécution. Cet article présente plusieurs méthodes pour garantir que le programme continue de s'exécuter après que l'utilisateur se déconnecte se connecte.
Grâce au terminal de gestion, vous vous connecterez au port de session locale (console) du serveur. Les programmes exécutés dans ce terminal ne seront pas affectés par le. sortie de l'utilisateur connecté SSH. La méthode de fonctionnement spécifique est la suivante :
1. Connectez-vous au serveur via le terminal de gestion.
2. Exécutez le programme ou le script requis.
3. La prochaine fois que vous aurez besoin de vérifier le statut d'exécution de la tâche, connectez-vous simplement à nouveau au terminal de gestion pour vérifier.
Le rôle de nohup est, comme son nom l'indique, d'empêcher les commandes suivantes de répondre au signal SIGHUP. En d'autres termes, après avoir exécuté nohup via la connexion à distance, le programme s'exécutera toujours normalement même après la déconnexion. Normalement, la commande nohup sera suivie d'un caractère & à la fin, indiquant que la commande sera exécutée en arrière-plan, afin que la commande puisse être exécutée en continu en arrière-plan.
Exemple d'opération :
1. La commande d'exécution normale est bash hello.sh, et le résultat de l'exécution est un petit programme qui génère une ligne par seconde. :
2. Ajoutez nohup et & au début et à la fin de la commande pour devenir nohup bash hello.sh & Vous pouvez voir que nohup. affiche une ligne d'informations, puis appuyez sur la touche Entrée pour revenir à la ligne de commande du shell. À ce stade, la commande a été exécutée en arrière-plan et nohup redirige la sortie de la commande vers le fichier nohup.out dans le fichier nohup.out. répertoire courant. Notez également que nohup affichera le PID du programme correspondant. Le PID peut être utilisé pour tuer le processus lorsque celui-ci doit être interrompu.
3. Grâce à tail -f nohup.out vous pouvez visualiser en continu la sortie de nohup.out pour obtenir l'effet de surveillance du programme.
4. Vous pouvez également utiliser la redirection dans la commande pour modifier la sortie du programme avec le nom de fichier souhaité, tel que nohup bash hello.sh > ;hello .log &, la sortie du programme sera écrite dans le fichier hello.log.
5. Si le programme ne se ferme pas automatiquement, vous devez utiliser la commande kill pour terminer le processus. Par exemple, vous pouvez utiliser la commande kill -TRM
Restrictions d'utilisation :
nohup est généralement utilisé pour exécuter des programmes ou des scripts automatisés sans intervention et ne peut pas effectuer d'opérations avec interaction.écran d'installation miam
sudo apt-get install screen
screen -S name # name可以设置为ssh、ftp,用于标注该 screen 窗口用途 # 示例:screen -S ftp2. Répertoriez le processus d'écran et entrez l'écran requis
screen -ls ##列出 screen 进程列表comme indiqué ci-dessous
screen -r -d Reprenez simplement la session.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!