Blog ENI : Toute la veille numérique !
-25€ dès 75€ sur les livres en ligne, vidéos... avec le code FUSEE25. J'en profite !
Accès illimité 24h/24 à tous nos livres & vidéos ! 
Découvrez la Bibliothèque Numérique ENI. Cliquez ici
  1. Livres et vidéos
  2. Linux
  3. Corrigé 6
Extrait - Linux Entraînez-vous sur les commandes de base : Exercices et corrigés (5e édition)
Extraits du livre
Linux Entraînez-vous sur les commandes de base : Exercices et corrigés (5e édition) Revenir à la page d'achat du livre

Corrigé 6

Prérequis

1.

Tout processus est identifié par un numéro unique, le PID (Process IDentifier) ; le noyau utilise une table des processus pour la gestion des tâches. Le PID 1 est donné au premier processus du système : init, ou systemd sur les systèmes GNU/Linux plus récents.

2.

a.

Vrai. Tout processus a obligatoirement un père, sauf le premier processus du système. 

b.

Faux. Un processus peut avoir zéro, un ou plusieurs processus fils.

c.

Faux. Les processus lancés automatiquement comme services au démarrage du système sont appelés "démons" sous Linux.

3.

Le signal 1 (SIGHUP) est automatiquement envoyé au processus si l’utilisateur se déconnecte du terminal ayant permis de lancer le programme ; par défaut, le processus se termine.

Le signal 2 (SIGINT) correspond à l’interruption depuis le clavier avec la combinaison de touches [Ctrl]-C. Le comportement par défaut est la terminaison du processus.

Le signal 9 (SIGKILL) est un des rares signaux qui ne peuvent être ni interceptés, ni ignorés par un processus. Tout processus recevant ce signal se termine immédiatement sans procéder à une quelconque opération de nettoyage.

Le signal 15 (SIGTERM) est le signal envoyé par défaut par la commande kill. Par défaut, le processus...

Corrigé 6.1 Visualisation des processus

1.

Appuyez sur les touches [Ctrl]-[Alt]-[F3], puis :

localhost login: tux 
Password: <le mot de passe n'apparaît pas> 
[tux]$ 

2.

[tux]$ ps --help  
  
Usage:  
 ps [options]  
   
 Try 'ps --help <simple|list|output|threads|misc|all>'  
  or 'ps --help <s|l|o|t|m|a>'  
 for additional help text.  
   
For more details see ps(1). 

Puis, pour obtenir la liste des options de base de la commande :

[tux]$ ps --help simple  
 
Usage:  
 ps [options]  
  
Basic options:  
 -A, -e               all processes  
 -a                   all with tty, except session leaders  
  a                   all with tty, including other users  
 -d                   all except session leaders  
 -N, --deselect       negate selection  
  r                   only running processes  
  T                   all processes on this terminal  
  x                   processes without controlling ttys  
   
For more details see ps(1). 

Et la liste des options de sélection des processus affichés par la commande :

[tux]$ ps --help list  
   
Usage:  
 ps [options]  ...

Corrigé 6.2 Signaux et commande kill

1.

[tux]$ kill -l 
1) SIGHUP        2) SIGINT        3) SIGQUIT       4) SIGILL 
5) SIGTRAP       6) SIGABRT       7) SIGBUS        8) SIGFPE 
9) SIGKILL      10) SIGUSR1      11) SIGSEGV      12) SIGUSR2 
13) SIGPIPE      14) SIGALRM      15) SIGTERM      17) SIGCHLD 
18) SIGCONT      19) SIGSTOP      20) SIGTSTP      21) SIGTTIN 
22) SIGTTOU      23) SIGURG       24) SIGXCPU      25) SIGXFSZ 
26) SIGVTALRM    27) SIGPROF      28) SIGWINCH     29) SIGIO 
30) SIGPWR       31) SIGSYS       34) SIGRTMIN     35) SIGRTMIN+1 
36) SIGRTMIN+2   37) SIGRTMIN+3   38) SIGRTMIN+4   39) SIGRTMIN+5 
40) SIGRTMIN+6   41) SIGRTMIN+7   42) SIGRTMIN+8   43) SIGRTMIN+9 
44) SIGRTMIN+10  45) SIGRTMIN+11  46) SIGRTMIN+12  47) SIGRTMIN+13 
48) SIGRTMIN+14  49) SIGRTMIN+15  50) SIGRTMAX-14  51) SIGRTMAX-13 
52) SIGRTMAX-12  53) SIGRTMAX-11  54) SIGRTMAX-10  55) SIGRTMAX-9 
56) SIGRTMAX-8   57) SIGRTMAX-7   58) SIGRTMAX-6   59) SIGRTMAX-5 ...

Corrigé 6.3 Commande top

1.

top - 12:14:52 up  5:44,  2 users,  load average: 0,00, 0,00, 0,00 
Tasks: 352 total,   1 running, 351 sleeping,   0 stopped,   0 zombie 
%Cpu(s):  0,7 us,  0,5 sy,  0,0 ni, 98,5 id,  0,0 wa,  0,2 hi,  0,1 si,  0,0 st 
MiB Mem :   3918,6 total,   1591,8 free,   1421,6 used,    905,2 buff/cache 
MiB Swap:   3072,0 total,   3072,0 free,      0,0 used.   2232,7 avail Mem 
 
  PID USER        RES    SHR S  %CPU  %MEM     TIME+ COMMAND                   
 5540 tux      183024  92528 S   3,0   4,6   1:46.83 gnome-shell               
 6271 tux       43996  30768 S   1,3   1,1   0:21.88 gnome-terminal-           
10705 tux        5032   3988 R   0,7   0,1   0:00.20 top                       
    1 root      13872   9016 S   0,3   0,3   0:04.69 systemd                   
   17 root          0      0 S   0,3   0,0   0:00.13 ksoftirqd/1               
 2374 root      29592...

Corrigé 6.4 Manipulation des processus

1.

[tux]$ sleep 1111 & 
[1] 2757 

Le chiffre entre crochets indique le numéro de travail (job) lancé à partir du shell courant, le numéro suivant est son PID.

2.

[tux]$ sleep 2222 & 
[2] 2786 
[tux]$ sleep 3333 & 
[3] 2788 

3.

La séquence de touches permettant de suspendre un processus en avant-plan est [Ctrl]-Z.

[tux]$ sleep 4444 
 
[4]+  Stopped                 sleep 4444 

4.

[tux]$ jobs 
[1]   Running                 sleep 1111 & 
[2]   Running                 sleep 2222 & 
[3]-  Running                 sleep 3333 & 
[4]+  Stopped                 sleep 4444 

5.

Le signe + indique le dernier processus manipulé et le signe - le précédent.

6.

[tux]$ bg %4 
[4]+ sleep 4444 & 

Note

Il est aussi possible de ne taper que la commande bg sans préciser le numéro de travail ; le processus correspondant à la commande sleep 4444 étant le dernier manipulé, ce sera celui considéré par défaut.

7.

[tux]$ man sleep 

Puis avec la touche G pour aller à la fin de la page du manuel électronique :

       Chaque argument est composé  d'un  nombre  suivi  éventuellement d'une 
      unité.  L'unité par défaut est la seconde. Les unités reconnues sont : 
 
      s      secondes 
 
      m      minutes 
 
      h      heures 
 
      d      jours 
 
  OPTIONS 
      --help Afficher un message d'aide sur la sortie standard et se terminer 
         ...

Corrigé 6.5 Pour aller plus loin

1.

Par exemple, avec l’outil graphique gnome-system-monitor :

Images/5-CO06-01.png
Images/5-CO06-02.png