master 1 ère année sécurité des systèmes informatique 1 gestion des processus le noyau gère...
TRANSCRIPT
Master 1 ère année Sécurité des Systèmes
Informatique
1
Gestion des processus
Le noyau gère les processus en cours d’exécutionCréation et arrêtGestion de la mémoireOrdonnancement du temps du micro-
processeur
Master 1 ère année Sécurité des Systèmes
Informatique
2
Outils de gestion des processus
Quelques outils qui permettent de contrôler les processus ps kill top pstree pgrep lsof fuser
Master 1 ère année Sécurité des Systèmes
Informatique
3
Outils de gestion des processus
ps – afficher l’état des processus en cours d’exécutionStyle POSIX
ps aux
Style BSD (Berkeley Software Distribution) ps -ef
Master 1 ère année Sécurité des Systèmes
Informatique
4
ps aux
Table de tous les processus en coursUSER - propriétairePID - numéro%CPU - pourcentage de CPU consommé%MEM - pourcentage de mémoire consomméRSS - Nombre de kilo-octets se trouvant en
mémoire. START – date de lancement
Master 1 ère année Sécurité des Systèmes
Informatique
5
exemple ps
USER : nom du propriétaire PID : numéro du processus %CPU : pourcentage de temps CPU occupée %MEM : pourcentage de mémoire occupée SIZE ou VSZ : Virtual image size; size of text+data+stack RSS : Resident set size; taille du programme en mémoire TTY : terminal contrôlant le processus, ? s'il n'y en a pas STAT : état ou statut START : date de départ
Master 1 ère année Sécurité des Systèmes
Informatique
6
L’option w permet un affichage longCette option est très utile pour les
processus JAVAChaque w ajoute une ligne d’affichage
ps auxww
Master 1 ère année Sécurité des Systèmes
Informatique
7
Envoi d’un signal à un processus (le nom est mal choisi)
Exemples kill -15 <PID> signal envoyé par défaut si aucun numéro
ou nom de signal n'est précisé kill –9 <PID> signal KILL kill –1 <PID> signal HUP (Hang Up), demande de
relire le fichier de configuration, très utilisé dans la fonction reload des services
kill –0 <PID> obtient l’état du processus sans l’interrompre
kill [ -<NUMSIG> | -<NOMSIG> ] <PID>
Master 1 ère année Sécurité des Systèmes
Informatique
8
Un aspect intéressant de cette commande est la possibilité de détruire un groupe de processus. Par exemple, pour détruire tous les processus vous appartenant, sauf le shell courant, il suffit de donner les commandes suivantes: d’un signal à un processus
kill -TERM -1 Tente de détruire tous vos processus
kill -KILL -1 Force la destruction de tous vos processus
kill -<SIGNAL> -1
Master 1 ère année Sécurité des Systèmes
Informatique
9
Un aspect intéressant de cette commande est la possibilité de détruire un groupe de processus. Par exemple, pour détruire tous les processus vous appartenant, sauf le shell courant, il suffit de donner les commandes suivantes: d’un signal à un processus
kill -TERM -1 Tente de détruire tous vos processus
kill -KILL -1 Force la destruction de tous vos processus
kill -<SIGNAL> -1
Master 1 ère année Sécurité des Systèmes
Informatique
10
Autre commande très utilisée par l’administrateur kill -9 %1
Séquence de commande
xterm & (équivalent à « xterm, <Ctrl Z>, bg »)
kill -9 %1
kill -<SIGNAL> %<NUM>
Master 1 ère année Sécurité des Systèmes
Informatique
11
Permet d’afficher la table des processus par ordre d’activité
De nombreuses options de tri d’affichage
Exemples top –d 10 rafraîchissement toutes les 10 s top –u francois processus de francois top –n 2 top se termine après deux affichages
top – (Table Of Process)
Master 1 ère année Sécurité des Systèmes
Informatique
12
pstree
Master 1 ère année Sécurité des Systèmes
Informatique
13
List Open FilesLa commande lsof appelée sans
paramètre retourne tous les fichiers actuellement ouverts
Pour afficher la liste de tous les fichiers ouverts par le processus dont le PID est 1339 lsof -p 1339
lsof
Master 1 ère année Sécurité des Systèmes
Informatique
14
Vous pouvez utiliser fuser pour déterminer les processus ou les utilisateurs qui accèdent actuellement à certains fichiers.
Par exemple, pour déterminer la liste des processus qui accèdent au contenu de /media/cdrom fuser –v /media/cdrom
Utilisateur qui accède aux fichiers : fuser
Master 1 ère année Sécurité des Systèmes
Informatique
15
Le système de fichiers /proc
Pas de contenu réel (tout est en mémoire)Accès à des structures internes du noyauPermet de changer certains paramètres
noyauOn y trouve
Un sous-répertoire pour chacun des processus actifs Des fichiers d'informations générales Des répertoires contenant des informations ciblées Un accès aux paramètres modifiables dans /proc/sys
Master 1 ère année Sécurité des Systèmes
Informatique
16
Fichiers d'informations générales de /proc
cmdline ligne de commande pour lancer le noyaucpuinfo informations sur le(s) processeur(s)devices périphériques disponiblesfilesystems liste des systèmes de fichiers reconnusInterrupts interruptions et périphériques correspondantsloadavg charge moyennelocks verrous actifsmeminfo utilisation globale de la mémoiremodules liste des modules en cours d'utilisationmounts liste des SF en cours d'utilisationswaps liste des partitions utilisées pour le swapversion identification du noyau en cours d'utilisation
Master 1 ère année Sécurité des Systèmes
Informatique
17
Les répertoires correspondant à des
processus# ls -l /proc/2441cmdline cwd environ exe fd/ maps mem mounts root stat
statm status
Eléments intéressantscmdline ligne de commande utiliséecwd lien vers un répertoire de travailenviron variables d'environnementexe lien vers le fichier exécutable fd fichiers ouverts par le processusstatus état actuel du processus
Master 1 ère année Sécurité des Systèmes
Informatique
18
Autres répertoires de /proc
bus informations sur les buside informations sur les périphériques idenet configuration réseaugeometry informations sur la géométrie des
disquesirq paramétrage des irqscsi informations sur les bus scsi
Master 1 ère année Sécurité des Systèmes
Informatique
19
Paramètres du noyau
Le répertoire /proc/sys fs/ paramètre du système de fichiers. file-max
détermine le nombre maximum de fichiers ouverts simultanément.
kernel/ fonctionnement général du noyau (ctrl-alt-del, hostname, osname, ...)
vm/ fonctionnement de la gestion de la mémoire virtuelle(ndirty, min-percent, freepages,...)
net/ configuration réseau (ipv4/ip_forward, ...)dev/ paramétrage des périphériques (autoeject,...)
Master 1 ère année Sécurité des Systèmes
Informatique
20
Modification dynamique des
paramètres du noyau
Exemple, le fichier /proc/sys/net/ipv4/ip_forward, contient la valeur 0 ou 1. 0 indique que le noyau ne redirige pas les paquets réseau1 indique que le noyau redirige les paquets. La
machine se comporte comme un routeur.sysctl -w net.ipv4.ip_forward=1echo 1 > /proc/sys/net/ipv4/ip_forward
Master 1 ère année Sécurité des Systèmes
Informatique
21
Modification des paramètres du noyau au
démarrageLe fichier /etc/sysctl.conf
# Kernel sysctl configuration file for Red Hat Linux
#
# For binary values, 0 is disabled, 1 is enabled. See sysctl(8) and
# sysctl.conf(5) for more details.
# Controls IP packet forwarding
net.ipv4.ip_forward = 0
# Controls source route verification
net.ipv4.conf.default.rp_filter = 1
# Do not accept source routing
net.ipv4.conf.default.accept_source_route = 0