Préparation LPI. Exam 101. 103.5 Gestion des processus



Documents pareils
Le système GNU/Linux IUP NTIC /11/05

Introduction aux Systèmes et aux Réseaux

2011 Hakim Benameurlaine 1

Formation Technicien Supérieur de Support en Informatique T2SI. Le module LINUX. Session J04 Version 01

Séance n o 5 : Alternatives, gestion des utilisateurs et des processus

Système et réseaux (SR1) Gestion des utilisateurs

Happy birthday ZSet High performance computing dans ZSet

Cours Programmation Système

Préparation LPI. Exam Securité. Document sous licence Creative commons «by nc sa» nc sa/2.

Programmation système en C/C++

Premiers pas en Linux

Aide-Mémoire unix. 9 février 2009

Qu'est-ce qu'un processus: Définitions

Systèmes d exploitation Gestion de processus

22/06/2015. Linux Initiation. Formation Le Corguillé 1.07

Premiers pas. Shell? Les processus vu comme des filtres. commandes

LEs processus coopèrent souvent pour traiter un même problème. Ces

DOCKER MEETUP. Christophe Labouisse

Manuel de System Monitor

«Astrophysique et instrumentations associées» Cours UNIX Benoît Semelin

Les processus 2/54. Qu est-ce qu un processus? 3(6)/54. Se souvenir 1(1)/54. Le système de fichiers (exemple du disque dur)

Chapitre 2. Cluster de calcul (Torque / Maui) Grid and Cloud Computing


Shell Bash Niveau débutant

Polycopié Cours Système d Exploitation I. Programme : Filière SMI S3

Installation du serveur WEB Apache ( MySQL, PHP) sous Debian 7.

Contents. 1 Premiers pas en Linux. 1.2 Généralités. 1.1 Bref historique Linux

Comment tester la vitesse d un réseau Ethernet

Chapitre IX : Virtualisation

Les différentes méthodes pour se connecter

Installation et configuration de Vulture Lundi 2 février 2009

Client windows Nagios Event Log

Programmation système

INSTALLATION ET CONFIGURATION D'UN SERVEUR WEB SUR MAC OS X

Atelier : Virtualisation avec Xen

Entraide-Info. Entraide pour les informaticiens LINUX FEDORA CORE 4 : ADMINISTRATION DU SYSTEME OLIVIER D.

Commandes Linux. Gestion des fichiers et des répertoires. Gestion des droits. Gestion des imprimantes. Formation Use-IT

Bacula R - The Network Backup Solution

B2i. LE B2i Brevet Informatique et Internet. Niveau : tous. 1 S'approprier un environnement informatique de travail. b2ico1.odt.

Python Les fondamentaux du langage

Couche application. La couche application est la plus élevée du modèle de référence.

TP1 - Prise en main de l environnement Unix.

Cloner un disque dur

L'accélération 3D sous Linux

Impression sous Linux

L informatique en BCPST

Tutorial et Guide TeamViewer

Séance 0 : Linux + Octave : le compromis idéal

TP 1 Prise en main de l environnement Unix

Pharmed. gestion de pharmacie hospitalière. Installation / déploiement

Introduction au Système d Exploitation Unix/Linux

SSH. Romain Vimont. 7 juin Ubuntu-Party

sshgate Patrick Guiran Chef de projet support

JES Report Broker. Campus Technologies. SAE de CHALEMBERT 1 Rue Blaise PASCAL JAUNAY-CLAN info@campustec.

Bienvenue sur Lab-Windows Il n'y a de vents favorables que pour ceux qui ont un cap

Guide pratique de CSPM, l'outil de suivi des performances du système Version française du Complete System Performance Monitor HOWTO

Programmation système I Les entrées/sorties

Affectation standard Affectation modifiée (exemple)

Sauvegardes par Internet avec Rsync

Création d'un site dynamique en PHP avec Dreamweaver et MySQL

Supervision - ESX/ESXi. Document FAQ. Supervision - ESX/ESXi. Page: 1 / 9 Dernière mise à jour: 16/04/14 17:45

Année Cours Unix-Shell. par. Karam ALLALI. Ecole Spéciale d Informatique

Réseaux IUP2 / 2005 DNS Système de Noms de Domaine

La Comptabilité UNIX System V Acctcom

Les processus. Système L3, /39

Introduction aux Systèmes et aux Réseaux

TP7. DHCP. 1 Comportement en présence d un serveur unique

INFO-F-404 : Techniques avancées de systèmes d exploitation

Linux embarqué Retour d expérience et temps réel. Denis Coupvent-Desgraviers

Synchronisation Mysql (Replication)

TP réseaux 4 : Installation et configuration d'un serveur Web Apache

Passerelle VPN : OpenVPN Debian GNU/Linux

- TP Programmation Android - NFA024 Conservatoire National des Arts et Métiers

W4 BPM WORKSPACE. MANUEL DE SUPERVISION FONCTIONNELLE Référence: W4WK_SUPERVISION_020_FR

Manuel de référence des commandes SMS Advisor Advanced

UBUNTU Administration d'un système Linux (4ième édition)

Alcatel-Lucent 500 DECT Handset. Localisation and notification management Guide de Configuration

X-Lite guide de configuration et d utilisation

Open Source Job Scheduler. Installation(s)

Installation et paramétrage. Accès aux modèles, autotextes et clip- art partagés

Vade mecum installation et configuration d une machine virtuelle V5.1.0

JetClouding Installation

Administration Linux - FTP

Mesurer les performances (CPU) sous Linux

Protocoles DHCP et DNS

Olivier Mondet

INFO-F-309 Administration des Systèmes. TP7: NFS et NIS. Sébastien Collette Résumé

Installation de VirtualPOPC-1 sur Ubuntu Server LTS 64bits

Introduction...3. Objectif...3. Manipulations...3. La Sauvegarde...4. Les différents types...4. Planification...4. Les outils...5

Analyse du réseau local

UBUNTU. Administration d un système Linux. 4 ième édition. Nouvelle édition. Luc DEMARET Sébastien ROHAUT

1 Mesure de la performance d un système temps réel : la gigue

L installation a quelque peu changée depuis les derniers tutos, voici une actualisation.

Performances et optimisations

Analyse de performance, monitoring

SAS Integration Technologies sur OS/390 et z/os : Object Spawner SAS 9.0 et IOM Server SAS 8.2

Liste des ports. 1 sur 6

Transcription:

Préparation LPI Exam 101 103.5 Gestion des processus 1

103.5 Domaines de connaissances Poids : 4 Exécuter des travaux en avant et arrière plan Signifier à un programme de continuer après une déconnexion Superviser les processus actifs Sélectionner et trier les processus à l'affichage Envoyer des signaux aux processus UPMC FP Préparation LPI - v1.1 2

Avant plan (foreground) 103.5 Contrôle des commandes Lorsque qu'un commande est lancée, le shell ne rend pas la main et attend qu'elle se termine Pour interrompre la commande en cours avant sa fin normale : «Ctrl C» Arrière plan (background) Pour lancer une commande te récupérer la main imméditament, il faut la lancer en tâche de fond (background) en terminant la ligne de commande avec le caractère «&» «$ commande &» UPMC FP Préparation LPI - v1.1 3

Passage d'avant en arrière plan 103.5 Contrôle des commandes Pour passe en background une commande lancée en avantplan 1 figer la commande en cours avec «Ctrl Z» 2 demander à la commande de passer en arrière plan avec la commande «bg» Attention : à l'utilisation de «Ctrl Z». Les commandes ne sont pas tuées mais uniquement figées et donc continuent à occuper des ressources mémoire [aoi@test]$ find / name Hostidfile.txt print find: /lost+found: Permission non accordée [1]+ Stopped find / name Hostidfile.txt print [aoi@test]$ bg [1]+ find / name Hostidfile.txt print & UPMC FP Préparation LPI - v1.1 4

Passage d'arrière en avant plan 103.5 Contrôle des commandes Pour passer en foreground une commande lancée en arrièreplan 1 demander à la commande de passer en avant plan avec la commande «fg» [aoi@test]$ find / name Hostidfile.txt print find: /lost+found: Permission non accordée [1]+ Stopped find / name Hostidfile.txt print [aoi@test]$ bg [1]+ find / name Hostidfile.txt print & [aoi@test]$ fg find / name Hostidfile.txt print find: /boot/lost+found: Permission non accordée find: /etc/skel/tmp: Permission non accordée... UPMC FP Préparation LPI - v1.1 5

103.5 Contrôle des commandes UPMC FP Préparation LPI - v1.1 6

Liste des processus en arrière plan Pour connaître la liste : «jobs» 103.5 Contrôle des commandes Les jobs sont numérotés (il peut y avoir plusieurs commandes lancées simultanément en arrière plan). Ce numéro peut être repris dans les commandes «fg», «bg» et «kill» UPMC FP Préparation LPI - v1.1 7

103.5 Contrôle des commandes Options de la commande jobs l : ajoute le PID p : affiche uniquement le pid r : affiche uniquement les processus en cours d'exécution s : affiche uniquement les processus arrêtés UPMC FP Préparation LPI - v1.1 8

Tuer un processus en arrière plan commande : «kill %num job» 103.5 Contrôle des commandes [aoi@test]$ find / name Hostidfile.txt print find: /lost+found: Permission non accordée [1]+ Stopped find / name Hostidfile.txt print [aoi@test]$ jobs [1]+ Stopped find / name Hostidfile.txt print [aoi@test]$ kill %1 [aoi@test]$ jobs [1]+ Complété find / name Hostidfile.txt print UPMC FP Préparation LPI - v1.1 9

103.5 Contrôle des commandes Les commandes «fg», «bg» et «kill» ne fonctionnent que sur les processus lancés par le shell courant. Pour intervenir sur tous les processus il faut utiliser une commande plus générale des gestion de processus (voir plus loin) : «ps» UPMC FP Préparation LPI - v1.1 10

103.5 nohup Commande nohup : permet de continuer l'exécution d'une commande après une déconnexion en la rendant insensible aux signaux nohup COMMAND [ARG]... Si stdin est un terminal, redirection implicite par /dev/null Equivalent à nohup COMMAND < /dev/null Si stdout est un terminal, redirection implicite vers nohup.out. Stderr est redirigée vers stdout. Sinon faire une redirection explicite : nohup COMMAND > monfic.log Attention : il faut explicitement mettre la commande en background si nécessaire UPMC FP Préparation LPI - v1.1 11

103.5 nohup A compléter mettre un ex de commande nohup sur mkfs long par exemple UPMC FP Préparation LPI - v1.1 12

103.5 ps Commandes ps : affiche l'état des processus en cours. Affichage de l'état au moment de l'exécution de la commande. Pour un affichage en continu, utiliser la commande top. ps récupère les informations affichées depuis le système de fichier /proc Liste des informations présentées UID : uid propriétaire PID : identifiant du processus PPID : pid du processus parent NI : valeur de nice (gentillesse) SZ : (size) empreinte mémoire du processus (code + données + pile) UPMC FP Préparation LPI - v1.1 13

103.5 ps Liste des informations présentées... STAT : état du processus R (runnable) : prêt à être exécuté S (sleeping) : endormi D : sommeil ininterruptible T (traced) : tracé ou suivi Z : processus zombie TTY : terminal associé CMD : commande liée au processus UPMC FP Préparation LPI - v1.1 14

103.5 ps Liste des options Attention : infos différentes entre page de manuel et la réalité des options. Faire un ps? Comportement des options différent selon que l'on emploie le tiret ou non A : tous les processus avec affichage simple (PI, TTY, TIME, CMD) a : tous les processus avec un terminal associé a : tous les processus avec un terminal associé pour tous les utilisateurs r : affiche seulement les processus en cours d'exécution UPMC FP Préparation LPI - v1.1 15

103.5 ps Liste des options (format de sortie)... l : format long f : format full F : format extra full u : affiche l'utilisateur propriétaire et l'heure de lancement e : affiche l'environnement d'exécution w ou w, ww ou ww : affichage sur plusieurs lignes f (forest) : affiche l'arbre généalogique des processus n : infos numériques (UID) UPMC FP Préparation LPI - v1.1 16

103.5 ps Liste des options (tri)... O[+ ]k1[,[+ ]k2[,...]] : Permet de trier les résultat en fonction de clés de tri (k1, k2,...) + et permettent de définir un ordre alphabétique ou un ordre inverse # ps ef O1, 2 sortx[+ ]key[,[+ ]key[,...]] : même fonction que l'option O mais key représente cette fois ci le nom de la colonne (ppid par exemple) Les clés de tri sont listées dans le man : p : pid P : ppid u : nom d'utilisateur U : UID UPMC FP Préparation LPI - v1.1 17

103.5 ps Attention! Ces deux commandes ne donnent pas le même résultat $ ps ef t UID PID PPID C STIME TTY STAT TIME CMD root 1 0 0 21:40? Ss 0:01 /sbin/init root 2 0 0 21:40? S< 0:00 [kthreadd] root 3 2 0 21:40? S< 0:00 [migration/0] root 4 2 0 21:40? S< 0:00 [ksoftirqd/0] $ ps e ft PID TTY STAT TIME COMMAND 2? S< 0:00 [kthreadd] 3? S< 0:00 \_ [migration/0] 4? S< 0:00 \_ [ksoftirqd/0] 5? S< 0:00 \_ [watchdog/0] 6? S< 0:00 \_ [events/0] UPMC FP Préparation LPI - v1.1 18

103.5 Contrôle des commandes $ ps O+p PID TTY STAT TIME COMMAND 3182 pts/0 Ss 0:00 bash 3234 pts/1 Ss+ 0:00 bash 3270 pts/0 S+ 0:00 man ps 3273 pts/0 S+ 0:00 sh c (cd "/usr/share/man/fr" && (echo ".pl 1100i"; / 3274 pts/0 S+ 0:00 sh c (cd "/usr/share/man/fr" && (echo ".pl 1100i"; / 3281 pts/0 S+ 0:00 /usr/bin/less is 3407 pts/2 Rs 0:00 bash 3549 pts/2 R+ 0:00 ps O+p $ ps O p PID TTY STAT TIME COMMAND 3553 pts/2 R+ 0:00 ps O p 3407 pts/2 Ss 0:00 bash 3281 pts/0 S+ 0:00 /usr/bin/less is 3274 pts/0 S+ 0:00 sh c (cd "/usr/share/man/fr" && (echo ".pl 1100i"; / 3273 pts/0 S+ 0:00 sh c (cd "/usr/share/man/fr" && (echo ".pl 1100i"; / 3270 pts/0 S+ 0:00 man ps 3234 pts/1 Ss+ 0:00 bash 3182 pts/0 Ss 0:00 bash UPMC FP Préparation LPI - v1.1 19

103.5 pstree Commande pstree : affiche les processus sous une forma arborescente. pstree [ a] [ c] [ h Hpid] [ l] [ n] [ p] [ u] [ Z] [ A G U] [pid utilisateur] Si le pid est omis, la racine de l'arbre est le processus init (pid=1) Si l'utilisateur est précisé, seuls les processus de cet utilisateurs seront affichés Options : l : afficher les lignes longues n : tri numérique des processus ayant le même ancêtre plutôt que par leur nom p : ajoute le PID à l'affichage u : affiche les transition d'uid si l'uid du père est différent de celui du fils UPMC FP Préparation LPI - v1.1 20

103.5 Contrôle des commandes $ pstree init NetworkManager dhclient {NetworkManager} acpid atd auditd audispd sedispatch {audispd} {auditd} avahi daemon avahi daemon bluetoothd bonobo activati {bonobo activati}... $ echo $$ 3234 $ pstree 3234 bash pstree UPMC FP Préparation LPI - v1.1 21

103.5 top Commande top : affiche en temps réel les processus en cours d'exécution ainsi qu'un résumé des ressources système top hv bchiss d delay n iterations p pid [, pid...] Beaucoup d'options qui modifient les infos affichées, les délais de rafraîchissement,... Champs affichés PID : identifiant du processus PPID : PID du processus parent USER : nom du propriétaire du processus PR : priorité de la tâche NI : valeur de gentillesse UPMC FP Préparation LPI - v1.1 22

103.5 top Champs affichés... VIRT : empreinte mémoire de la tâche (RES + SWAP) RES : empreinte mémoire de la tâche %CPU et %MEM : respectivement les pourcentage d'utilisation cpu et mémoire utilisés TIME ettime+ : temps d'exécution de la tâche COMMAND : nom de la tâche UPMC FP Préparation LPI - v1.1 23

103.5 top Mode interactif <Entrée> ou <Espace> : rafraîchissement de l'affichage <?> ou <h> : aideu u : saisie d'un nom d'utilisateur ou UID affichage des tâche posédées par cet utilisateur k : saisie d'un PID envoi du signal SIGTERM q : quitter top r : renice d'une tâche UPMC FP Préparation LPI - v1.1 24

103.5 top top 22:55:09 up 54 min, 2 users, load average: 0.00, 0.00, 0.00 Tasks: 188 total, 2 running, 140 sleeping, 0 stopped, 46 zombie Cpu(s): 1.6%us, 2.0%sy, 0.0%ni, 96.4%id, 0.0%wa, 0.0%hi, 0.0%si, 0.0%st Mem: 1277124k total, 722968k used, 554156k free, 33248k buffers Swap: 2441840k total, 0k used, 2441840k free, 358628k cached PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND 950 root 20 0 36264 12m 6784 S 1.7 1.0 0:48.01 Xorg 756 haldaemo 20 0 6120 3972 3304 S 0.7 0.3 0:01.32 hald 1756 franck 20 0 17964 5312 3936 S 0.3 0.4 0:00.25 gnome screensav 1880 franck 20 0 246m 110m 63m S 0.3 8.8 0:57.22 soffice.bin 1988 franck 20 0 38180 12m 9636 S 0.3 1.0 0:01.92 gnome terminal 2009 franck 20 0 2472 1208 884 R 0.3 0.1 0:18.30 top 1 root 20 0 2532 1528 1128 S 0.0 0.1 0:01.26 init 2 root 15 5 0 0 0 S 0.0 0.0 0:00.00 kthreadd 3 root RT 5 0 0 0 S 0.0 0.0 0:00.00 migration/0 4 root 15 5 0 0 0 S 0.0 0.0 0:00.02 ksoftirqd/0 5 root RT 5 0 0 0 S 0.0 0.0 0:00.00 watchdog/0 6 root 15 5 0 0 0 S 0.0 0.0 0:00.05 events/0 UPMC FP Préparation LPI - v1.1 25

103.5 uptime Commande uptime : affiche la durée de fonctionnement d'un serveur depuis son dernier redémarrage uptime Affiche la durée de fonctionnement, le nombre d'utilisateurs connectés, la charge du système des premières, 5 et 15 dernières minutes $ uptime 23:21:48 up 1:21, 2 users, load average: 0.00, 0.00, 0.00 UPMC FP Préparation LPI - v1.1 26

103.5 free Commande free : affiche la mémoire utilisée et disponible free [ b k m g] [ o] [ s delay ] [ t] [ V] Options b, k, m, g : affichage en octet, kilo, mega, gigaoctets s sec : rafraîchissement de l'affichage toutes les «sec» secondes $ free total used free shared buffers cached Mem: 1277124 733560 543564 0 34740 364456 /+ buffers/cache: 334364 942760 Swap: 2441840 0 2441840 UPMC FP Préparation LPI - v1.1 27

103.5 kill Commande kill : envoi d'un signal à un processus (SIGTERM par défaut) kill [ signal s signal ] pid kill [ L V, version kill l [ signal ] Options l : liste des signaux disponibles et traduit les noms de signaux en valeur numérique et inversement $ kill l 9 KILL $ kill l TERM 15 UPMC FP Préparation LPI - v1.1 28

103.5 kill Avec un numéro de PID précédé d'un moins : envoi d'un signal à un groupe de processus (voir colonne PGID de la commande ps) Si PID = 1 : signifie tous les processus sauf init et kill lui même UPMC FP Préparation LPI - v1.1 29

103.5 kill Correspondance des signaux SIGHUP <=> HUP <=> 1 : le plus souvent, relecture des fichiers de configuration SIGINT <=> INT <=> 2 : Interrupt Emis par Ctrl + C SIGQUIT <=> QUIT <=> 3 : Quit Emis par Ctrl + D SIGKILL <=> KILL <=> 9 : le processus quitte sans faire les procédures de «nettoyage» SIGTERM <=> TERM <=> 15 : le processus quitte après avoir fait les opérations de nettoyage UPMC FP Préparation LPI - v1.1 30

103.5 killall Commande killall : envoi d'un signal à un ensemble de processus (SIGTERM par défaut) sur la base de leur noms killall [ Z, context pattern] [ e, exact] [ g, process group][ i, interactive] [ q, quiet] [ r, regexp] [ s, signal signal][ u, user user] [ v, verbose] [ w, wait] [ I, ignore case][ V, version] [ ] name killall l killall V, version UPMC FP Préparation LPI - v1.1 31

103.5 killall Options... i : demande confirmation avant chaque envoi de signal r : sélection de processus sur la base d'expressions régulières s : spécification du signal au lieu de SIGTERM par défaut le nom du signal doit être composé de SIG + nom du signal Exemple : killall s SIGKILL httpd u : sélection des processus détenus par un utilisateur particulier UPMC FP Préparation LPI - v1.1 32

Quelques conseils LPI... Commande top : comment interagir pour envoyer un signal à un processus sans quitter top Connaître les correspondances des 3 formes des signaux les plus courantes (9; KILL, SIGKILL) UPMC FP Préparation LPI - v1.1 33