Comment faire exécuter un processus terminal en arrière-plan

Processus de terminal en arrière-plan

Situation probable: vous aimez avoir des installations propres. Vous récupérez les données manuellement et vous installez toujours le même logiciel après l'installation du système d'exploitation. Vous avez une longue commande pour installer tous les packages APT les uns après les autres. Vous entrez la commande. Vous attendez que cela se termine. Votre équipe n'est pas la plus puissante du monde et elle en souffre. Y a-t-il une solution à cela? Eh bien, le fait est que nous pouvons exécuter un processus terminal en arrière-plan et dans cet article, nous allons vous montrer comment.

La situation ci-dessus est quelque chose qui m'est arrivé lors de l'utilisation d'Ubuntu. J'ai installé beaucoup de logiciels et j'en ai désinstallé un autre pour le laisser comme je l'ai aimé, mais ce n'est pas nécessaire pour moi dans Kubuntu car il contient presque tout ce dont j'ai besoin. Quoi qu'il en soit, il y a un moyen d'éviter d'ouvrir une fenêtre de terminal ce qui peut perturber ou nous pouvons arrêter et arrêter le processus par accident. C'est quelque chose qui ne peut pas nous arriver si nous l'exécutons en arrière-plan.

bg prend un processus du terminal à l'arrière-plan

En Cet article Nous expliquons pourquoi nous ne pouvons pas copier et coller avec les raccourcis d'une vie dans le terminal. Ces raccourcis sont utilisés pour effectuer d'autres actions, telles que Ctrl + C pour arrêter un processus. Dans de nombreux autres programmes, Ctrl + Z Il est utilisé pour annuler la dernière modification, mais il ne fonctionne pas non plus dans le terminal. Ce qu'il fait dans le terminal, c'est mettre en pause un processus et l'ajouter aux "travaux". L'exemple le plus rapide dans lequel nous pouvons voir comment cela fonctionne est de mettre à jour les packages APT (sudo apt update) et d'appuyer sur Ctrl + Z. Nous verrons que le terminal dit "[1] + Stopped", ce qui signifie que nous avons arrêté le processus numéro 1 et l'avons ajouté à la liste des jobs pour ce terminal; si nous sortons, les emplois vont avec lui. Pour les redémarrer, nous utiliserons fg pour le garder au premier plan ou bg pour qu'il reste en arrière-plan. Dans les deux cas, nous continuerons à voir le processus dans le terminal et il s'arrêtera si nous fermons la fenêtre.

Une fois qu'un processus terminal, ou plusieurs, a été mis en pause, nous pouvons voir ce que nous avons en attente en utilisant le comando emplois que nous avons mentionné ci-dessus. S'il y a plus d'un processus arrêté, nous ajouterons le nombre à fg o bg pour en reprendre un en particulier. L'option bg (background = background) ne nous permet pas d'arrêter à nouveau le processus. Si nous voulons que le processus s'exécute directement en arrière-plan, nous ajouterons "&" sans les guillemets.

emplois

renier permet de continuer le travail à la sortie du terminal

Si nous voulons qu'un processus terminal se poursuive en arrière-plan après la fermeture de la fenêtre, nous utiliserons la commande renier. Pour ce faire, les étapes à suivre seraient les suivantes:

  1. Nous commençons un processus.
  2. On l'arrête avec Ctrl + Z.
  3. Nous écrivons emplois pour voir le numéro de processus.
  4. Nous écrivons la commande suivante, où le nombre derrière le pourcentage coïncide avec le processus que nous voulons exécuter en arrière-plan après avoir quitté le terminal:
disown -h %1
  1. Nous redémarrons le processus avec la commande suivante (en utilisant 1 si c'est le processus que nous voulons redémarrer):
bg 1
  1. Si nous le souhaitons, nous fermons le terminal.

La meilleure façon de vérifier que cela fonctionne est de décompresser un fichier volumineux. Dans la capture d'écran précédente, vous pouvez voir comment j'ai décompressé un fichier 7z du terminal. Selon la taille du fichier, cela peut prendre plusieurs minutes. Si vous faites ce que nous avons expliqué ci-dessus, vous pouvez aller sur le chemin où nous vous avons dit de le décompresser (par défaut / HOME), faire un clic droit, accéder à ses propriétés et vérifier que la taille augmente petit à petit. Si ce n'est pas le cas, nous fermons la fenêtre des propriétés et y accédons à nouveau. Le problème? Il n'y a aucun moyen de savoir précisément quand un processus est terminé. Dans le cas de la décompression d'un fichier, il est supposé complet lorsqu'il n'augmente plus en taille. Dans tous les cas, nous pouvons vérifier qu'il continue de fonctionner après la fermeture du terminal.

Je ne voudrais pas terminer cet article sans dire quelque chose: bien que Tout ce qui est expliqué ici est sûr, je vous recommande de vérifier d'abord que tout fonctionne correctement dans votre système d'exploitation avec quelque chose qui n'est pas très important. Par exemple, télécharger un fichier 7z et le décompresser. Si vous voyez que tout fonctionne comme nous l'avons expliqué dans cet article, continuez avec tout le reste. Sera-t-il utile de pouvoir exécuter des processus terminaux en arrière-plan?


Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont marqués avec *

*

*

  1. Responsable des données: Miguel Ángel Gatón
  2. Finalité des données: Contrôle du SPAM, gestion des commentaires.
  3. Légitimation: votre consentement
  4. Communication des données: Les données ne seront pas communiquées à des tiers sauf obligation légale.
  5. Stockage des données: base de données hébergée par Occentus Networks (EU)
  6. Droits: à tout moment, vous pouvez limiter, récupérer et supprimer vos informations.