Différences
Ci-dessous, les différences entre deux révisions de la page.
Les deux révisions précédentesRévision précédenteProchaine révision | Révision précédente | ||
elearning:workbooks:centos:6:junior:l117 [2020/02/21 05:28] – admin | elearning:workbooks:centos:6:junior:l117 [2023/02/14 09:49] (Version actuelle) – admin | ||
---|---|---|---|
Ligne 1: | Ligne 1: | ||
~~PDF: | ~~PDF: | ||
+ | |||
+ | Version : **2022.01** | ||
Dernière mise-à-jour : ~~LASTMOD~~ | Dernière mise-à-jour : ~~LASTMOD~~ | ||
- | ======LRF301 | + | ======LCF211 |
- | =====Fichiers Spéciaux===== | + | =====Contenu du Module===== |
- | Dans l' | + | |
+ | | ||
+ | | ||
+ | | ||
+ | * Évaluation de la Formation | ||
- | <WRAP center round important> | + | =====Rappel du Programme de la Formation===== |
- | **Important** : Les périphériques qui nécessitent à ce que l' | + | |
- | </ | + | |
- | Consultez le contenu du répertoire /dev : | + | ====Jour #1 - 7 heures==== |
- | < | + | * **LCF200 |
- | [root@centos7 ~]# ls -l /dev | more | + | |
- | total 0 | + | * Matériel |
- | crw-------. | + | |
- | drwxr-xr-x. 2 root root 140 Oct 28 09:40 block | + | |
- | drwxr-xr-x. 2 root root 80 Oct 28 09:40 bsg | + | |
- | crw-------. 1 root root 10, 234 Oct 28 09:40 btrfs-control | + | |
- | drwxr-xr-x. 3 root root 60 Oct 28 09:40 bus | + | |
- | lrwxrwxrwx. 1 root root 3 Oct 28 09:40 cdrom -> sr0 | + | |
- | drwxr-xr-x. 2 root root 2800 Oct 28 09:41 char | + | |
- | crw-------. 1 root root 5, 1 Oct 28 09:40 console | + | |
- | lrwxrwxrwx. 1 root root 11 Oct 28 09:40 core -> / | + | |
- | drwxr-xr-x. 3 root root 80 Oct 28 09:40 cpu | + | |
- | crw-------. 1 root root | + | |
- | crw-------. 1 root root | + | |
- | drwxr-xr-x. 5 root root 100 Oct 28 09:40 disk | + | |
- | drwxr-xr-x. 2 root root 60 Oct 28 09:40 dri | + | |
- | lrwxrwxrwx. 1 root root 13 Oct 28 09:40 fd -> / | + | |
- | crw-rw-rw-. 1 root root 1, 7 Oct 28 09:40 full | + | |
- | crw-rw-rw-. 1 root root 10, 229 Oct 28 09:41 fuse | + | |
- | crw-------. 1 root root 10, 228 Oct 28 09:40 hpet | + | |
- | drwxr-xr-x. 3 root root 0 Oct 28 09:40 hugepages | + | |
- | prw-------. 1 root root 0 Oct 28 09:40 initctl | + | |
- | drwxr-xr-x. 3 root root 240 Oct 28 09:40 input | + | |
- | crw-r--r--. 1 root root 1, 11 Oct 28 09:40 kmsg | + | |
- | --More-- | + | |
- | </ | + | |
- | On peut noter dans la sortie de la commande que certains fichiers sont de type **bloc** (**b**), tandis que d'autre sont de type **caractère** (**c**). | + | * **LCF201 - Gestion des Utilisateurs** - 2 heures. |
+ | * Présentation | ||
+ | * / | ||
+ | * / | ||
+ | * / | ||
+ | * Interrogation des Bases de Données | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | * gpasswd | ||
+ | * Utilisateurs | ||
+ | * useradd | ||
+ | * userdel | ||
+ | * usermod | ||
+ | * passwd | ||
+ | * chage | ||
+ | * Configuration | ||
+ | * LAB #1 - Gérer les Utilisateurs et les Groupes | ||
+ | * LAB #2 - Forcer l'utilisation des mots de passe complexe avec PAM sous RHEL/CentOS 6 | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
- | < | + | * **LCF202 - Gestion des Paquets** - 2 heures. |
- | ... | + | * LAB #1 - Compiler à partir des sources |
- | brw-rw---- 1 root disk 8, 1 Nov 1 08:39 sda1 | + | * ./configure |
- | ... | + | * make |
- | crw-rw-rw- | + | * make check |
- | ... | + | * make install |
- | </code> | + | * La commande rpm |
+ | * Configuration | ||
+ | * LAB #2 - Utilisation | ||
+ | * La commande yum | ||
+ | * Configuration | ||
+ | * Dépôts | ||
+ | * Utilisation | ||
+ | * La Commande yumdownloader | ||
+ | * LAB #3 - Utiliser la commande yum | ||
+ | * Les Bibliothèques Partagées | ||
+ | * Présentation | ||
+ | * Introduction | ||
+ | * Stockage | ||
+ | * ld-linux.so.2 | ||
+ | * La Commande ldd | ||
+ | * Le fichier | ||
+ | * La Commande ldconfig | ||
- | La différence entre les deux repose sur le type de communication entre le système et le module. Dans le premier cas le système accède au périphérique par des coordonnées du bloc de données sur le support tandis que dans le deuxième cas la communication d' | + | * **LCF203 - Gestion des Droits** - 2 heures. |
+ | * Présentation | ||
+ | * Préparation | ||
+ | * Les Droits Unix Simples | ||
+ | * La Modification | ||
+ | * La Commande chmod | ||
+ | * Mode Symbolique | ||
+ | * Mode Octal | ||
+ | * La Commande umask | ||
+ | * Modifier | ||
+ | * La Commande chown | ||
+ | * La Commande chgrp | ||
+ | * Les Droits Unix Étendus | ||
+ | * SUID/SGID bit | ||
+ | * Inheritance Flag | ||
+ | * Sticky bit | ||
+ | * Les Droits Unix Avancés | ||
+ | * Les ACL | ||
+ | * Les Attributs Étendus | ||
- | Les deux informations clefs du fichier spécial sont situées à la place de la taille d'un fichier normal et se nomment le **majeur** et le **mineur** : | + | ====Jour #2 - 7 heures==== |
- | * le **majeur** identifie le pilote du périphérique | + | * **LCF204 - Gestion des Disques, des Systèmes de Fichiers et du Swap** - 5 heures. |
- | * le **mineur** identifie | + | * Périphériques de stockage |
+ | * Partitions | ||
+ | * Partitionnement | ||
+ | * LAB #1 - Partitionnement de votre Disque sous RHEL/CentOS 7 avec fdisk | ||
+ | * LAB #2 - Modifier les Drapeaux des Partitions avec fdisk | ||
+ | * Logical Volume Manager (LVM) | ||
+ | * LAB #3 - Volumes Logiques Linéaires | ||
+ | * Physical Volume (PV) | ||
+ | * Volume Group (VG) et Physical Extent (PE) | ||
+ | * Logical Volumes (LV) | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | * LAB #8 - Modifier les Attributs LVM | ||
+ | * LAB #9 - Volumes Logiques en Bandes | ||
+ | * LAB #10 - Gérer les Métadonnées | ||
+ | * Systèmes de Fichiers Journalisés | ||
+ | * Présentation | ||
+ | * Ext3 | ||
+ | * Gestion d' | ||
+ | * LAB #11 - Convertir un Système de Fichiers Ext3 en Ext2 | ||
+ | * LAB #12 - Convertir un Système de Fichiers Ext2 en Ext3 | ||
+ | * LAB #13 - Placer | ||
+ | * LAB #14 - Modifier la Fréquence de Vérification | ||
+ | * Ext4 | ||
+ | * LAB #15 - Créer un Système de Fichiers Ext4 | ||
+ | * LAB #16 - Ajouter | ||
+ | * LAB #17 - Convertir | ||
+ | * XFS | ||
+ | * LAB #18 - Créer un Système de Fichiers XFS | ||
+ | * LAB #19 - Ajouter une Étiquette au Système de Fichiers XFS | ||
+ | * Autres Systèmes de Fichiers | ||
+ | * ReiserFS | ||
+ | * JFS | ||
+ | * Btrfs | ||
+ | * Comparaison des Commandes par Système de Fichiers | ||
+ | * LAB #20 - Créer un Système de Fichiers ISO | ||
+ | * La Commande mkisofs | ||
+ | * Systèmes de Fichiers Chiffrés | ||
+ | * LAB #21 - Créer un Système de Fichiers Chiffré avec encryptfs sous RHEL/CentOS 6 | ||
+ | * LAB #22 - Créer un Système de Fichiers Chiffré avec LUKS sous RHEL/CentOS 7 | ||
+ | * Présentation | ||
+ | * Mise en Place | ||
+ | * Ajouter une deuxième Passphrase | ||
+ | * Supprimer une Passphrase | ||
+ | * Le Swap | ||
+ | * Taille du swap | ||
+ | * Partitions de swap | ||
+ | * La Commande swapon | ||
+ | * La Commande swapoff | ||
+ | * LAB #23 - Créer un Fichier de Swap | ||
- | =====Commandes===== | + | * **LCF205 - Gestion des Tâches** - 2 heures. |
+ | * cron | ||
+ | * Le Fichier / | ||
+ | * Les Champs Temporels | ||
+ | * Les crontabs Utilisateurs | ||
+ | * anacron | ||
+ | * at | ||
- | ====La Commande lspci==== | + | ====Jour #3 - 7 heures==== |
- | Cette commande vous renseigne sur les adaptateurs reliés aux bus PCI, AGP et PCI express : | + | * **LCF206 - Gestion de l' |
+ | * Types de Sauvegardes | ||
+ | * Sauvegarde complète | ||
+ | * Sauvegarde différentielle | ||
+ | * Sauvegarde incrémentale | ||
+ | * Sauvegarde décrémentale | ||
+ | * Outils Classiques de Sauvegarde | ||
+ | * Préparation | ||
+ | * La Commande tar | ||
+ | * Présentation | ||
+ | * LAB #1 - Travailler avec la Commande tar | ||
+ | * La Commande GPL tar et la Compression | ||
+ | * La Commande cpio | ||
+ | * Présentation | ||
+ | * LAB #2 - Travailler avec la Commande cpio | ||
+ | * La Commande dd | ||
+ | * Présentation | ||
+ | * LAB #3 - Travailler avec la Commande dd | ||
+ | * Les Commandes dump et restore | ||
+ | * Présentation | ||
+ | * Outils Avancés de Sauvegarde | ||
+ | * Outils de Sauvegarde Unidirectionnelle | ||
+ | * Outils de Sauvegarde Multidirectionnelle | ||
+ | * Outils de Sauvegarde des Partitions | ||
+ | * Compression | ||
+ | * La Commande gzip | ||
+ | * Présentation | ||
+ | * LAB #4 - Travaller avec la Commande gzip | ||
+ | * La Commande bzip2 | ||
+ | * Présentation | ||
+ | * LAB #5 - Travailler avec la Commande bzip2 | ||
+ | * La Commande xz | ||
+ | * Présentation | ||
+ | * LAB #6 - Travailler avec la Commande xz | ||
+ | * Autres Utilitaires | ||
- | < | + | * **LDF207 - Gestion des Processus** - 2 heures. |
- | [root@centos7 ~]# lspci | + | * Présentation |
- | 00:00.0 Host bridge: Intel Corporation 440FX - 82441FX PMC [Natoma] (rev 02) | + | * Les Types de Processus |
- | 00:01.0 ISA bridge: Intel Corporation 82371SB PIIX3 ISA [Natoma/ | + | * Les Commandes relatives aux Processus |
- | 00:01.1 IDE interface: Intel Corporation 82371AB/ | + | * La Commande ps |
- | 00:02.0 VGA compatible controller: InnoTek Systemberatung GmbH VirtualBox Graphics Adapter | + | * La Commande pgrep |
- | 00:03.0 Ethernet controller: Intel Corporation 82540EM Gigabit Ethernet Controller (rev 02) | + | * La Commande pstree |
- | 00:04.0 System peripheral: InnoTek Systemberatung GmbH VirtualBox Guest Service | + | * La Commande top |
- | 00:05.0 Multimedia audio controller: Intel Corporation 82801AA AC'97 Audio Controller (rev 01) | + | * Les Commandes fg, bg et jobs |
- | 00:06.0 USB controller: Apple Inc. KeyLargo/ | + | * La Commande wait |
- | 00:07.0 Bridge: Intel Corporation 82371AB/ | + | * La Commande nice |
- | 00:0b.0 USB controller: Intel Corporation 82801FB/ | + | * La Commande renice |
- | 00:0d.0 SATA controller: Intel Corporation 82801HM/HEM (ICH8M/ | + | * La Commande nohup |
- | </ | + | * La Commande kill |
+ | * La Commande pkill | ||
- | Pour obtenir | + | * **LCF208 - Gestion |
+ | * Présentation | ||
+ | * La Commande dmesg | ||
+ | * Surveillance Sécuritaire | ||
+ | * La Commande last | ||
+ | * La Commande lastlog | ||
+ | * La Commande lastb | ||
+ | * Le Fichier / | ||
+ | * Le fichier / | ||
+ | * Gestion des événements audit | ||
+ | * auditd | ||
+ | * auditctl | ||
+ | * audispd | ||
+ | * La consultation des événements audit | ||
+ | * La Commande aureport | ||
+ | * La Commande ausearch | ||
+ | * Le fichier / | ||
+ | * Applications | ||
+ | * rsyslog | ||
+ | * Priorités | ||
+ | * Sous-systèmes applicatifs | ||
+ | * / | ||
+ | * Modules | ||
+ | * Directives Globales | ||
+ | * Règles | ||
+ | * Sous-système applicatif.Priorité | ||
+ | * Sous-système applicatif!Priorité | ||
+ | * Sous-système applicatif=Priorité | ||
+ | * L'utilisation du caractère spécial * | ||
+ | * n Sous-systèmes avec la même priorité | ||
+ | * n Sélecteurs | ||
+ | * La Commande logger | ||
+ | * La Commande logrotate | ||
+ | * La Journalisation avec journald | ||
+ | * Consultation des Journaux | ||
+ | * Consultation des Journaux d'une Application Spécifique | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | * Consultation des Journaux avec des Mots Clefs | ||
- | < | + | ====Jour |
- | [root@centos7 ~]# lspci -v -s 00:03.0 | + | |
- | 00:03.0 Ethernet controller: Intel Corporation 82540EM Gigabit Ethernet Controller (rev 02) | + | |
- | Subsystem: Intel Corporation PRO/1000 MT Desktop Adapter | + | |
- | Flags: bus master, 66MHz, medium devsel, latency 64, IRQ 19 | + | |
- | Memory at f0000000 (32-bit, non-prefetchable) [size=128K] | + | |
- | I/O ports at d010 [size=8] | + | |
- | Capabilities: | + | |
- | Capabilities: | + | |
- | Kernel driver in use: e1000 | + | |
- | </ | + | |
- | ou : | + | * **LCF209 - Gestion des Impressions** - 2 heures. |
+ | * Cups | ||
+ | * Protocoles | ||
+ | * Paquets | ||
+ | * Daemon | ||
+ | * Le fichier / | ||
+ | * Filtres | ||
+ | * Backends | ||
+ | * Journaux | ||
+ | * Imprimantes | ||
+ | * Administration | ||
+ | * La Commande lpstat | ||
+ | * La Commande lpadmin | ||
+ | * Les Commandes accept et cupsenable | ||
+ | * Classe d' | ||
+ | * Le fichier / | ||
+ | * Le fichier / | ||
+ | * La Commande cancel | ||
+ | * La Commande lpmove | ||
+ | * L' | ||
- | < | + | * **LCF210 |
- | [root@centos7 ~]# lspci -vv -s 00:03.0 | + | * Présentation |
- | 00:03.0 Ethernet controller: Intel Corporation 82540EM Gigabit Ethernet Controller (rev 02) | + | * BIOS, EFI et OpenFirmware |
- | Subsystem: Intel Corporation PRO/1000 MT Desktop Adapter | + | * Systèmes à base du BIOS |
- | Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx- | + | * Charger de Démarrage |
- | Status: Cap+ 66MHz+ UDF- FastB2B- ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx- | + | * Systèmes à base de l' |
- | Latency: 64 (63750ns min) | + | * Autres Systèmes |
- | Interrupt: pin A routed to IRQ 19 | + | * Gestionnaire d' |
- | Region 0: Memory at f0000000 (32-bit, non-prefetchable) [size=128K] | + | * LILO |
- | Region | + | * La Commande LILO |
- | Capabilities: | + | * Codes Erreur de LILO |
- | Flags: PMEClk- DSI+ D1- D2- AuxCurrent=0mA PME(D0-, | + | * Grub Legacy sous RHEL/CentOS 6 |
- | Status: D0 NoSoftRst- PME-Enable- DSel=0 DScale=0 PME- | + | * Configurer GRUB Legacy |
- | Capabilities: | + | * La Section Globale |
- | Command: DPERE- ERO+ RBC=512 OST=1 | + | * Une Section spécifique à un OS |
- | Status: Dev=ff:1f.0 64bit- 133MHz- SCD- USC- DC=simple DMMRBC=2048 DMOST=1 DMCRS=8 RSCEM- 266MHz- 533MHz- | + | * Configurer l' |
- | Kernel driver in use: e1000 | + | * Modifier la Configuration de GRUB Legacy en Ligne de Commande |
- | </code> | + | * GRUB 2 sous RHEL/CentOS 7 |
+ | * Le fichier / | ||
+ | * Le fichier / | ||
+ | * Les fichiers du répertoire /etc/grub.d | ||
+ | * Configurer l' | ||
+ | * RHEL/CentOS < 7.2 | ||
+ | * RHEL/CentOS >= 7.2 | ||
+ | * Modifier la Configuration de GRUB 2 en Ligne de Commande | ||
+ | * Chargeurs de Démarrages Alternatifs | ||
+ | * Systemd-boot | ||
+ | * U-boot | ||
+ | * Le Projet Syslinux | ||
+ | * SYSLINUX | ||
+ | * EXTLINUX | ||
+ | * ISOLINUX | ||
+ | * PXELINUX | ||
+ | * Isodhpfx | ||
+ | * Initramfs sous RHEL/CentOS 6 | ||
+ | * Examiner l' | ||
+ | * Le script init | ||
+ | * La Commande dracut | ||
+ | * Initramfs sous RHEL/CentOS 7 | ||
+ | * Examiner l' | ||
+ | * Le script init | ||
+ | * Consulter le contenu d'un fichier dans initramfs | ||
+ | * La Commande dracut | ||
+ | * Processus de Démarrage du Noyau Linux | ||
+ | * Processus Init | ||
+ | * Démarrer RHEL/CentOS 5 avec SysVinit | ||
+ | * Niveaux d' | ||
+ | * Inittab | ||
+ | * Scripts de Démarrage | ||
+ | * rc.sysinit sous RHEL/CentOS 5 | ||
+ | * Répertoire init.d | ||
+ | * Linux Standard Base | ||
+ | * Codes Retour Standardisés | ||
+ | * Scripts | ||
+ | * Répertoires rcx.d | ||
+ | * rc.local | ||
+ | * La Commande chkconfig | ||
+ | * Démarrer RHEL/CentOS 6 avec Upstart | ||
+ | * Inittab | ||
+ | * Initialisation du Système | ||
+ | * Runlevels | ||
+ | | ||
+ | * mingetty | ||
+ | * Gestion des Services | ||
+ | * La Commande initctl | ||
+ | * Jobs | ||
+ | * Événements | ||
+ | * Etats | ||
+ | * Démarrer et Arrêter les Jobs | ||
+ | * La Commande status | ||
+ | * La Commande start | ||
+ | * La Commande stop | ||
+ | * La Commande restart | ||
+ | * Démarrer RHEL/CentOS 7 | ||
+ | * La Commande systemctl | ||
+ | * Fichiers de Configuration | ||
+ | * La Commande systemd-analyze | ||
+ | * Gestion des Services | ||
+ | * Arrêt Système du Système | ||
+ | * La Commande shutdown | ||
+ | * La Commande reboot | ||
+ | * La Commande halt | ||
+ | * La Commande poweroff | ||
- | ===Options | + | * **LCF211 - Validation |
+ | * Pour Aller Plus Loin | ||
+ | * Support de Cours | ||
+ | * L' | ||
+ | * Matériel | ||
+ | * Logiciels | ||
+ | * Machine Virtuelle | ||
+ | * Rappel du Programme de la Formation | ||
+ | * Jour #1 | ||
+ | * Jour #2 | ||
+ | * Jour #3 | ||
+ | * Jour #4 | ||
+ | * Remettre en Etat l' | ||
+ | * Validation des Acquis | ||
+ | * Évaluation de la Formation | ||
- | Les options | + | =====Évaluation |
- | < | + | Afin de valider votre formation, veuillez compléter l’Évaluation de la Formation qui vous sera adressée par email. |
- | [root@centos7 ~]# lspci --help | + | |
- | lspci: invalid option -- ' | + | |
- | Usage: lspci [< | + | |
- | Basic display modes: | + | ----- |
- | -mm Produce machine-readable output (single | + | |
- | -t Show bus tree | + | |
- | Display options: | + | Copyright © 2023 - Document non-contractuel. Le programme |
- | -v Be verbose (-vv for very verbose) | + | |
- | -k Show kernel drivers handling each device | + | |
- | -x Show hex-dump of the standard part of the config space | + | |
- | -xxx Show hex-dump of the whole config space (dangerous; root only) | + | |
- | -xxxx Show hex-dump of the 4096-byte extended config space (root only) | + | |
- | -b Bus-centric view (addresses and IRQ's as seen by the bus) | + | |
- | -D Always show domain numbers | + | |
- | + | ||
- | Resolving of device ID's to names: | + | |
- | -n Show numeric ID's | + | |
- | -nn Show both textual and numeric ID's (names & numbers) | + | |
- | -q Query the PCI ID database for unknown ID's via DNS | + | |
- | -qq As above, but re-query locally cached entries | + | |
- | -Q Query the PCI ID database for all ID's via DNS | + | |
- | + | ||
- | Selection of devices: | + | |
- | -s [[[[< | + | |
- | -d [< | + | |
- | + | ||
- | Other options: | + | |
- | -i < | + | |
- | -p < | + | |
- | -M Enable `bus mapping' | + | |
- | + | ||
- | PCI access options: | + | |
- | -A < | + | |
- | -O < | + | |
- | -G Enable PCI access debugging | + | |
- | -H < | + | |
- | -F < | + | |
- | </ | + | |
- | + | ||
- | ====La Commande lsusb==== | + | |
- | + | ||
- | Cette commande vous renseigne sur les adaptateurs reliés au bus usb : | + | |
- | + | ||
- | < | + | |
- | [root@centos7 ~]# lsusb | + | |
- | Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub | + | |
- | Bus 002 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub | + | |
- | + | ||
- | [root@centos7 ~]# lsusb -vt | + | |
- | /: Bus 02.Port 1: Dev 1, Class=root_hub, | + | |
- | /: Bus 01.Port 1: Dev 1, Class=root_hub, | + | |
- | </ | + | |
- | + | ||
- | ===Options de la commande=== | + | |
- | + | ||
- | Les options de cette commande sont : | + | |
- | + | ||
- | < | + | |
- | [root@centos7 ~]# lsusb --help | + | |
- | Usage: lsusb [options]... | + | |
- | List USB devices | + | |
- | -v, --verbose | + | |
- | Increase verbosity (show descriptors) | + | |
- | -s [[bus]: | + | |
- | Show only devices with specified device and/or | + | |
- | bus numbers (in decimal) | + | |
- | -d vendor: | + | |
- | Show only devices with the specified vendor and | + | |
- | product ID numbers (in hexadecimal) | + | |
- | -D device | + | |
- | Selects which device lsusb will examine | + | |
- | -t, --tree | + | |
- | Dump the physical USB device hierarchy as a tree | + | |
- | -V, --version | + | |
- | Show version of program | + | |
- | -h, --help | + | |
- | Show usage and help | + | |
- | </ | + | |
- | + | ||
- | ====La Commande dmidecode==== | + | |
- | + | ||
- | La commande **dmidecode** lit la table **DMI** (//Desktop Management Interface// | + | |
- | + | ||
- | * l' | + | |
- | * les extensions possibles. | + | |
- | + | ||
- | < | + | |
- | [root@centos7 ~]# dmidecode | + | |
- | # dmidecode 2.12 | + | |
- | SMBIOS 2.5 present. | + | |
- | 10 structures occupying 450 bytes. | + | |
- | Table at 0x000E1000. | + | |
- | + | ||
- | Handle 0x0000, DMI type 0, 20 bytes | + | |
- | BIOS Information | + | |
- | Vendor: innotek GmbH | + | |
- | Version: VirtualBox | + | |
- | Release Date: 12/ | + | |
- | Address: 0xE0000 | + | |
- | Runtime Size: 128 kB | + | |
- | ROM Size: 128 kB | + | |
- | Characteristics: | + | |
- | ISA is supported | + | |
- | PCI is supported | + | |
- | Boot from CD is supported | + | |
- | Selectable boot is supported | + | |
- | 8042 keyboard services are supported (int 9h) | + | |
- | CGA/mono video services are supported (int 10h) | + | |
- | ACPI is supported | + | |
- | + | ||
- | Handle 0x0001, DMI type 1, 27 bytes | + | |
- | System Information | + | |
- | Manufacturer: | + | |
- | Product Name: VirtualBox | + | |
- | Version: 1.2 | + | |
- | Serial Number: 0 | + | |
- | UUID: DDEE345C-66F8-4250-B5A2-85CEF2C1C54D | + | |
- | Wake-up Type: Power Switch | + | |
- | SKU Number: Not Specified | + | |
- | Family: Virtual Machine | + | |
- | + | ||
- | Handle 0x0008, DMI type 2, 15 bytes | + | |
- | Base Board Information | + | |
- | Manufacturer: | + | |
- | Product Name: VirtualBox | + | |
- | Version: 1.2 | + | |
- | Serial Number: 0 | + | |
- | Asset Tag: Not Specified | + | |
- | Features: | + | |
- | Board is a hosting board | + | |
- | Location In Chassis: Not Specified | + | |
- | Chassis Handle: 0x0003 | + | |
- | Type: Motherboard | + | |
- | Contained Object Handles: 0 | + | |
- | + | ||
- | Handle 0x0003, DMI type 3, 13 bytes | + | |
- | Chassis Information | + | |
- | Manufacturer: | + | |
- | Type: Other | + | |
- | Lock: Not Present | + | |
- | Version: Not Specified | + | |
- | Serial Number: Not Specified | + | |
- | Asset Tag: Not Specified | + | |
- | Boot-up State: Safe | + | |
- | Power Supply State: Safe | + | |
- | Thermal State: Safe | + | |
- | Security Status: None | + | |
- | + | ||
- | Handle 0x0007, DMI type 126, 42 bytes | + | |
- | Inactive | + | |
- | + | ||
- | Handle 0x0005, DMI type 126, 15 bytes | + | |
- | Inactive | + | |
- | + | ||
- | Handle 0x0006, DMI type 126, 28 bytes | + | |
- | Inactive | + | |
- | + | ||
- | Handle 0x0002, DMI type 11, 7 bytes | + | |
- | OEM Strings | + | |
- | String 1: vboxVer_4.3.28 | + | |
- | String 2: vboxRev_100309 | + | |
- | + | ||
- | Handle 0x0008, DMI type 128, 8 bytes | + | |
- | OEM-specific Type | + | |
- | Header and Data: | + | |
- | 80 08 08 00 01 15 21 00 | + | |
- | + | ||
- | Handle 0xFEFF, DMI type 127, 4 bytes | + | |
- | End Of Table | + | |
- | + | ||
- | </ | + | |
- | + | ||
- | ===Options de la commande=== | + | |
- | + | ||
- | Les options de cette commande sont : | + | |
- | + | ||
- | < | + | |
- | [root@centos7 ~]# dmidecode --help | + | |
- | Usage: dmidecode [OPTIONS] | + | |
- | Options are: | + | |
- | -d, --dev-mem FILE Read memory from device FILE (default: /dev/mem) | + | |
- | -h, --help | + | |
- | -q, --quiet | + | |
- | -s, --string KEYWORD | + | |
- | -t, --type TYPE Only display the entries of given type | + | |
- | -u, --dump | + | |
- | | + | |
- | | + | |
- | -V, --version | + | |
- | </ | + | |
- | + | ||
- | =====Répertoire / | + | |
- | + | ||
- | Le répertoire /proc contient des fichiers et des répertoires virtuels. Le contenu de ces fichiers est créé dynamiquement lors de la consultation. Seul root peut consulter la totalité des informations dans le répertoire /proc. | + | |
- | + | ||
- | < | + | |
- | [root@centos7 ~]# ls /proc | + | |
- | 1 217 260 | + | |
- | 10 | + | |
- | 11 | + | |
- | 12 | + | |
- | 1215 | + | |
- | 1217 | + | |
- | 1227 | + | |
- | 1228 | + | |
- | 1230 | + | |
- | 1264 | + | |
- | 13 | + | |
- | 1372 | + | |
- | 14 | + | |
- | 15 | + | |
- | 16 | + | |
- | 17 | + | |
- | 1732 | + | |
- | 1744 | + | |
- | 17788 2486 | + | |
- | 18 | + | |
- | 19 | + | |
- | 2 259 28 2998 434 | + | |
- | 20 | + | |
- | 20638 2597 | + | |
- | 21 | + | |
- | </ | + | |
- | + | ||
- | ====Répertoires==== | + | |
- | + | ||
- | ===ide/ | + | |
- | + | ||
- | Ce répertoire contient des répertoires dans lesquels se trouvent des informations sur la capacité, le type et la géométrie des disques. | + | |
- | + | ||
- | ===acpi=== | + | |
- | + | ||
- | Ce répertoire contient des informations sur la gestion de l' | + | |
- | + | ||
- | ===bus=== | + | |
- | + | ||
- | Ce répertoire contient un sous-répertoire par bus. | + | |
- | + | ||
- | ===net=== | + | |
- | + | ||
- | Ce répertoire contient des informations sur le réseau. | + | |
- | + | ||
- | ===sys=== | + | |
- | + | ||
- | Ce répertoire contient des paramètres du noyau. Certains des fichiers dans ce répertoire sont accessibles en écriture par root en temps réel. Par exemple pour éviter des attaques réseau **%%DoS%%** utilisant la commande **ping**, saisissez la commande suivante : | + | |
- | + | ||
- | # echo 1 > / | + | |
- | + | ||
- | Cette commande a pour résultat d' | + | |
- | + | ||
- | ===La commande sysctl=== | + | |
- | + | ||
- | Les fichiers dans le répertoire **/ | + | |
- | + | ||
- | La commande **sysctl** applique les règles consignés dans le fichier **/ | + | |
- | + | ||
- | Saisissez la commande : | + | |
- | + | ||
- | < | + | |
- | [root@centos7 ~]# cat / | + | |
- | # System default settings live in / | + | |
- | # To override those settings, enter new settings here, or in an / | + | |
- | # | + | |
- | # For more information, | + | |
- | + | ||
- | [root@centos7 ~]# cat / | + | |
- | # Kernel sysctl configuration file | + | |
- | # | + | |
- | # For binary values, 0 is disabled, 1 is enabled. | + | |
- | # sysctl.conf(5) for more details. | + | |
- | + | ||
- | # Disable netfilter on bridges. | + | |
- | net.bridge.bridge-nf-call-ip6tables = 0 | + | |
- | net.bridge.bridge-nf-call-iptables = 0 | + | |
- | net.bridge.bridge-nf-call-arptables = 0 | + | |
- | + | ||
- | # Controls the maximum shared segment size, in bytes | + | |
- | kernel.shmmax = 4294967295 | + | |
- | + | ||
- | # Controls the maximum number of shared memory segments, in pages | + | |
- | + | ||
- | [root@centos7 ~]# ls -l / | + | |
- | total 0 | + | |
- | lrwxrwxrwx. 1 root root 14 Jun 4 09:54 99-sysctl.conf -> ../ | + | |
- | + | ||
- | [root@centos7 ~]# cat / | + | |
- | # System default settings live in / | + | |
- | # To override those settings, enter new settings here, or in an / | + | |
- | # | + | |
- | # For more information, | + | |
- | </ | + | |
- | + | ||
- | ==Options de la commande== | + | |
- | + | ||
- | Les options de la commande **sysctl** sont : | + | |
- | + | ||
- | < | + | |
- | [root@centos7 ~]# sysctl --help | + | |
- | + | ||
- | Usage: | + | |
- | | + | |
- | + | ||
- | Options: | + | |
- | -a, --all display all variables | + | |
- | -A alias of -a | + | |
- | -X alias of -a | + | |
- | --deprecated | + | |
- | -b, --binary | + | |
- | -e, --ignore | + | |
- | -N, --names | + | |
- | -n, --values | + | |
- | -p, --load[=< | + | |
- | -f alias of -p | + | |
- | --system | + | |
- | -r, --pattern < | + | |
- | | + | |
- | -q, --quiet | + | |
- | -w, --write | + | |
- | -o does nothing | + | |
- | -x does nothing | + | |
- | -d alias of -h | + | |
- | + | ||
- | -h, --help | + | |
- | -V, --version | + | |
- | + | ||
- | For more details see sysctl(8). | + | |
- | </ | + | |
- | + | ||
- | <WRAP center round important> | + | |
- | **Important** : Consultez la page de la traduction du manuel de **sysctl** **[[http:// | + | |
- | </ | + | |
- | + | ||
- | ====Fichiers==== | + | |
- | + | ||
- | ===Processeur=== | + | |
- | + | ||
- | < | + | |
- | [root@centos7 ~]# cat / | + | |
- | processor : 0 | + | |
- | vendor_id : GenuineIntel | + | |
- | cpu family : 6 | + | |
- | model : 55 | + | |
- | model name : Intel(R) Celeron(R) CPU N2840 @ 2.16GHz | + | |
- | stepping : 8 | + | |
- | microcode : 0x19 | + | |
- | cpu MHz : 2167.721 | + | |
- | cache size : 6144 KB | + | |
- | physical id : 0 | + | |
- | siblings : 1 | + | |
- | core id : 0 | + | |
- | cpu cores : 1 | + | |
- | apicid : 0 | + | |
- | initial apicid : 0 | + | |
- | fpu : yes | + | |
- | fpu_exception : | + | |
- | cpuid level : 5 | + | |
- | wp : yes | + | |
- | flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 syscall nx rdtscp lm constant_tsc rep_good nopl pni monitor ssse3 lahf_lm | + | |
- | bogomips : 4335.44 | + | |
- | clflush size : 64 | + | |
- | cache_alignment : | + | |
- | address sizes : 36 bits physical, 48 bits virtual | + | |
- | power management: | + | |
- | </ | + | |
- | + | ||
- | ===Interruptions système=== | + | |
- | + | ||
- | < | + | |
- | [root@centos7 ~]# cat / | + | |
- | | + | |
- | 0: 189 | + | |
- | 1: | + | |
- | 8: 0 | + | |
- | 9: 1 | + | |
- | | + | |
- | | + | |
- | | + | |
- | | + | |
- | | + | |
- | | + | |
- | | + | |
- | NMI: 0 | + | |
- | LOC: 1630315 | + | |
- | SPU: 0 | + | |
- | PMI: 0 | + | |
- | IWI: 83206 IRQ work interrupts | + | |
- | RTR: 0 APIC ICR read retries | + | |
- | RES: 0 | + | |
- | CAL: 0 | + | |
- | TLB: 0 TLB shootdowns | + | |
- | TRM: 0 | + | |
- | THR: 0 | + | |
- | MCE: 0 | + | |
- | MCP: | + | |
- | ERR: 0 | + | |
- | MIS: 0 | + | |
- | </ | + | |
- | + | ||
- | <WRAP center round important> | + | |
- | **Important** : Un pilote de périphérique demande au processeur de fournir un service en utilisant un IRQ. Quand la demande est faite, le processeur interrompe ses activités et passe le contrôle au pilote identifié par l'IRQ. Techniquement l' | + | |
- | </ | + | |
- | + | ||
- | ===Canaux DMA=== | + | |
- | + | ||
- | < | + | |
- | [root@centos7 ~]# cat /proc/dma | + | |
- | 4: cascade | + | |
- | </ | + | |
- | + | ||
- | ===Plages d' | + | |
- | + | ||
- | < | + | |
- | [root@centos7 ~]# cat / | + | |
- | 0000-001f : dma1 | + | |
- | 0020-0021 : pic1 | + | |
- | 0040-0043 : timer0 | + | |
- | 0050-0053 : timer1 | + | |
- | 0060-0060 : keyboard | + | |
- | 0064-0064 : keyboard | + | |
- | 0070-0071 : rtc_cmos | + | |
- | 0070-0071 : rtc0 | + | |
- | 0080-008f : dma page reg | + | |
- | 00a0-00a1 : pic2 | + | |
- | 00c0-00df : dma2 | + | |
- | 00f0-00ff : fpu | + | |
- | 0170-0177 : 0000: | + | |
- | 0170-0177 : ata_piix | + | |
- | 01f0-01f7 : 0000: | + | |
- | 01f0-01f7 : ata_piix | + | |
- | 0376-0376 : 0000: | + | |
- | 0376-0376 : ata_piix | + | |
- | 03c0-03df : vga+ | + | |
- | 03f6-03f6 : 0000: | + | |
- | 03f6-03f6 : ata_piix | + | |
- | 0cf8-0cff : PCI conf1 | + | |
- | 4000-4003 : ACPI PM1a_EVT_BLK | + | |
- | --More-- | + | |
- | </ | + | |
- | + | ||
- | <WRAP center round alert 60%> | + | |
- | Si deux périphériques ont le même port, les **deux** périphériques seront inutilisables. | + | |
- | </ | + | |
- | + | ||
- | ===Périphériques=== | + | |
- | + | ||
- | < | + | |
- | [root@centos7 ~]# cat / | + | |
- | Character devices: | + | |
- | 1 mem | + | |
- | 4 /dev/vc/0 | + | |
- | 4 tty | + | |
- | 4 ttyS | + | |
- | 5 /dev/tty | + | |
- | 5 / | + | |
- | 5 /dev/ptmx | + | |
- | 6 lp | + | |
- | 7 vcs | + | |
- | 10 misc | + | |
- | 13 input | + | |
- | 14 sound | + | |
- | 29 fb | + | |
- | 99 ppdev | + | |
- | 116 alsa | + | |
- | 128 ptm | + | |
- | 136 pts | + | |
- | 162 raw | + | |
- | 180 usb | + | |
- | 188 ttyUSB | + | |
- | 189 usb_device | + | |
- | 202 cpu/msr | + | |
- | 203 cpu/cpuid | + | |
- | 226 drm | + | |
- | 250 hidraw | + | |
- | 251 usbmon | + | |
- | 252 bsg | + | |
- | 253 watchdog | + | |
- | 254 rtc | + | |
- | + | ||
- | Block devices: | + | |
- | 259 blkext | + | |
- | 8 sd | + | |
- | 9 md | + | |
- | 11 sr | + | |
- | 65 sd | + | |
- | 66 sd | + | |
- | 67 sd | + | |
- | 68 sd | + | |
- | 69 sd | + | |
- | 70 sd | + | |
- | 71 sd | + | |
- | 128 sd | + | |
- | 129 sd | + | |
- | 130 sd | + | |
- | 131 sd | + | |
- | 132 sd | + | |
- | 133 sd | + | |
- | 134 sd | + | |
- | 135 sd | + | |
- | 253 device-mapper | + | |
- | 254 mdp | + | |
- | </ | + | |
- | + | ||
- | ===Modules=== | + | |
- | + | ||
- | < | + | |
- | [root@centos7 ~]# cat / | + | |
- | tcp_lp 12663 0 - Live 0xffffffffa059d000 | + | |
- | lp 17759 0 - Live 0xffffffffa0593000 | + | |
- | nls_utf8 12557 1 - Live 0xffffffffa0527000 | + | |
- | isofs 39844 1 - Live 0xffffffffa0588000 | + | |
- | bnep 19704 2 - Live 0xffffffffa0516000 | + | |
- | bluetooth 372662 7 bnep, Live 0xffffffffa052c000 | + | |
- | rfkill 26536 3 bluetooth, Live 0xffffffffa051f000 | + | |
- | fuse 87741 3 - Live 0xffffffffa04ff000 | + | |
- | ip6t_rpfilter 12546 1 - Live 0xffffffffa04fa000 | + | |
- | ip6t_REJECT 12939 2 - Live 0xffffffffa04f5000 | + | |
- | ipt_REJECT 12541 2 - Live 0xffffffffa04f0000 | + | |
- | xt_conntrack 12760 7 - Live 0xffffffffa04e6000 | + | |
- | ebtable_nat 12807 0 - Live 0xffffffffa04e1000 | + | |
- | ebtable_broute 12731 0 - Live 0xffffffffa04eb000 | + | |
- | bridge 115385 1 ebtable_broute, | + | |
- | stp 12976 1 bridge, Live 0xffffffffa04be000 | + | |
- | llc 14552 2 bridge,stp, Live 0xffffffffa04b5000 | + | |
- | ebtable_filter 12827 0 - Live 0xffffffffa04b0000 | + | |
- | ebtables 30913 3 ebtable_nat, | + | |
- | 000 | + | |
- | ip6table_nat 12864 1 - Live 0xffffffffa049e000 | + | |
- | nf_conntrack_ipv6 18738 5 - Live 0xffffffffa0498000 | + | |
- | nf_defrag_ipv6 34651 1 nf_conntrack_ipv6, | + | |
- | --More-- | + | |
- | </ | + | |
- | + | ||
- | ===Statistiques de l' | + | |
- | + | ||
- | < | + | |
- | [root@centos7 ~]# cat / | + | |
- | 11 0 sr0 21 0 132 157 0 0 0 0 0 157 157 | + | |
- | | + | |
- | | + | |
- | | + | |
- | | + | |
- | </ | + | |
- | + | ||
- | ===Partitions=== | + | |
- | + | ||
- | < | + | |
- | [root@centos7 ~]# cat / | + | |
- | major minor # | + | |
- | + | ||
- | 11 0 56876 sr0 | + | |
- | | + | |
- | | + | |
- | | + | |
- | | + | |
- | </ | + | |
- | + | ||
- | ===Espaces de pagination=== | + | |
- | + | ||
- | < | + | |
- | [root@centos7 ~]# cat / | + | |
- | Filename Type Size Used Priority | + | |
- | / | + | |
- | </ | + | |
- | + | ||
- | ===Statistiques d' | + | |
- | + | ||
- | < | + | |
- | [root@centos7 ~]# cat / | + | |
- | 1.82 1.07 0.81 3/379 25349 | + | |
- | </ | + | |
- | + | ||
- | ===Statistiques d' | + | |
- | + | ||
- | < | + | |
- | [root@centos7 ~]# cat / | + | |
- | MemTotal: | + | |
- | MemFree: | + | |
- | MemAvailable: | + | |
- | Buffers: | + | |
- | Cached: | + | |
- | SwapCached: | + | |
- | Active: | + | |
- | Inactive: | + | |
- | Active(anon): | + | |
- | Inactive(anon): | + | |
- | Active(file): | + | |
- | Inactive(file): | + | |
- | Unevictable: | + | |
- | Mlocked: | + | |
- | SwapTotal: | + | |
- | SwapFree: | + | |
- | Dirty: | + | |
- | Writeback: | + | |
- | AnonPages: | + | |
- | Mapped: | + | |
- | Shmem: | + | |
- | Slab: 98304 kB | + | |
- | SReclaimable: | + | |
- | SUnreclaim: | + | |
- | KernelStack: | + | |
- | PageTables: | + | |
- | NFS_Unstable: | + | |
- | Bounce: | + | |
- | WritebackTmp: | + | |
- | CommitLimit: | + | |
- | Committed_AS: | + | |
- | VmallocTotal: | + | |
- | VmallocUsed: | + | |
- | VmallocChunk: | + | |
- | HardwareCorrupted: | + | |
- | AnonHugePages: | + | |
- | HugePages_Total: | + | |
- | HugePages_Free: | + | |
- | HugePages_Rsvd: | + | |
- | HugePages_Surp: | + | |
- | Hugepagesize: | + | |
- | DirectMap4k: | + | |
- | DirectMap2M: | + | |
- | </ | + | |
- | + | ||
- | ===Version du noyau=== | + | |
- | + | ||
- | < | + | |
- | [root@centos7 ~]# cat / | + | |
- | Linux version 3.10.0-229.4.2.el7.x86_64 (builder@kbuilder.dev.centos.org) (gcc version 4.8.2 20140120 (Red Hat 4.8.2-16) (GCC) ) #1 SMP Wed May 13 10:06:09 UTC 2015 | + | |
- | </ | + | |
- | + | ||
- | ==== Interprétation des informations dans /proc==== | + | |
- | + | ||
- | Les informations brutes stockées dans /proc peuvent être interprétées grâce à l' | + | |
- | + | ||
- | * free, | + | |
- | * uptime et w, | + | |
- | * iostat, | + | |
- | * vmstat, | + | |
- | * mpstat, | + | |
- | * sar. | + | |
- | + | ||
- | ===Commandes=== | + | |
- | + | ||
- | ==free== | + | |
- | + | ||
- | La commande **free** permet de donner l’état de la mémoire totale, libre, partagée, swap et bufferisée. Saisissez donc la commande suivante : | + | |
- | + | ||
- | < | + | |
- | [root@centos7 ~]# free -m | + | |
- | total used free shared | + | |
- | Mem: | + | |
- | Swap: 2999 | + | |
- | </ | + | |
- | + | ||
- | Dans le cas de cet exemple, nous pouvons constater que l’affichage montre : | + | |
- | + | ||
- | * 1749 Mo de mémoire physique totale, | + | |
- | * 859 Mo de mémoire physique utilisée et 76 Mo de mémoire physique libre, | + | |
- | * 2999 Mo de mémoire swap totale et 3 Mo de swap utilisé | + | |
- | + | ||
- | Les options de cette commande sont : | + | |
- | + | ||
- | < | + | |
- | [root@centos7 ~]# free --help | + | |
- | + | ||
- | Usage: | + | |
- | free [options] | + | |
- | + | ||
- | Options: | + | |
- | -b, --bytes | + | |
- | -k, --kilo | + | |
- | -m, --mega | + | |
- | -g, --giga | + | |
- | | + | |
- | -h, --human | + | |
- | | + | |
- | -l, --lohi | + | |
- | -t, --total | + | |
- | -s N, --seconds N | + | |
- | -c N, --count N | + | |
- | -w, --wide | + | |
- | + | ||
- | | + | |
- | -V, --version | + | |
- | + | ||
- | For more details see free(1). | + | |
- | </ | + | |
- | + | ||
- | ==uptime ou w== | + | |
- | + | ||
- | Chacune des ces commandes indique la charge moyenne du ou des processeurs depuis 1 minute, 5 minutes et 15 minutes : | + | |
- | + | ||
- | < | + | |
- | [root@centos7 ~]# uptime | + | |
- | | + | |
- | + | ||
- | [root@centos7 ~]# w | + | |
- | | + | |
- | USER | + | |
- | trainee | + | |
- | trainee | + | |
- | </ | + | |
- | + | ||
- | Les valeurs **load average** ou //charge moyenne// indiquent le nombre moyen de processus en cours de traitement ou en attente pour la période concernée. | + | |
- | + | ||
- | Par exemple si les valeurs sur un système muni d'un seul processeur étaient **3, | + | |
- | + | ||
- | * 2,48 processus en attente dans la dernière minute, | + | |
- | * 3,00 processus en attente dans les dernières 5 minutes, | + | |
- | * 2,85 processus en attente dans les dernières 15 minutes. | + | |
- | + | ||
- | Les options de ces commandes sont : | + | |
- | + | ||
- | < | + | |
- | [root@centos7 ~]# uptime --help | + | |
- | + | ||
- | Usage: | + | |
- | | + | |
- | + | ||
- | Options: | + | |
- | -p, --pretty | + | |
- | -h, --help | + | |
- | -s, --since | + | |
- | -V, --version | + | |
- | + | ||
- | For more details see uptime(1). | + | |
- | + | ||
- | [root@centos7 ~]# w --help | + | |
- | + | ||
- | Usage: | + | |
- | w [options] | + | |
- | + | ||
- | Options: | + | |
- | -h, --no-header | + | |
- | -u, --no-current | + | |
- | -s, --short | + | |
- | -f, --from | + | |
- | -o, --old-style | + | |
- | -i, --ip-addr | + | |
- | + | ||
- | | + | |
- | -V, --version | + | |
- | + | ||
- | For more details see w(1). | + | |
- | </ | + | |
- | + | ||
- | ==iostat== | + | |
- | + | ||
- | La commande **iostat** affiche des statistiques sur l' | + | |
- | + | ||
- | < | + | |
- | [root@centos7 ~]# iostat | + | |
- | Linux 3.10.0-229.4.2.el7.x86_64 (centos7.fenestros.loc) 11/02/2015 _x86_64_ (1 CPU) | + | |
- | + | ||
- | avg-cpu: | + | |
- | | + | |
- | + | ||
- | Device: | + | |
- | scd0 0.00 | + | |
- | sda | + | |
- | </ | + | |
- | + | ||
- | Au-dessous de la première ligne indiquant la version du noyau du système et son nom d' | + | |
- | + | ||
- | * Pourcentage de temps passé en mode utilisateur (exécutant des applications, | + | |
- | * Pourcentage de temps passé en mode utilisateur (pour les processus qui ont modifié | + | |
- | * Pourcentage de temps passé en mode noyau | + | |
- | * Pourcentage de temps passé en inactivité | + | |
- | + | ||
- | Notez la valeur de **%iowait**. Dans le cas où ce pourcentage est trop élévé, ceci indique que le processeur passe son temps à attendre les entrées et les sorties de disque. | + | |
- | + | ||
- | Pour surveiller la vitesse des entrées et des sorties du disque, vous pouvez utiliser la commande **hdparm**. | + | |
- | + | ||
- | Sous RHEL/CentOS 7, la commande **hdparm** n'est pas disponible par défaut. Installez donc le paquet **hdparm** : | + | |
- | + | ||
- | < | + | |
- | [root@centos7 ~]# yum install hdparm | + | |
- | </ | + | |
- | + | ||
- | < | + | |
- | [root@centos7 ~]# hdparm -t /dev/sda | + | |
- | + | ||
- | /dev/sda: | + | |
- | | + | |
- | </ | + | |
- | + | ||
- | Au-dessous du rapport d' | + | |
- | + | ||
- | * La spécification du périphérique, | + | |
- | * Le nombre de transferts (ou opérations d'E/S) par seconde. | + | |
- | * Le nombre de blocs de 512 octets lus par seconde. | + | |
- | * Le nombre de blocs de 512 octets écrits par seconde. | + | |
- | * Le nombre total de blocs de 512 octets lus par seconde. | + | |
- | * Le nombre total de blocs de 512 octets écrits par seconde. | + | |
- | + | ||
- | Les options de cette commande sont : | + | |
- | + | ||
- | < | + | |
- | [root@centos7 ~]# iostat --help | + | |
- | Usage: iostat [ options ] [ < | + | |
- | Options are: | + | |
- | [ -c ] [ -d ] [ -h ] [ -k | -m ] [ -N ] [ -t ] [ -V ] [ -x ] [ -y ] [ -z ] | + | |
- | [ -j { ID | LABEL | PATH | UUID | ... } ] | + | |
- | [ [ -T ] -g < | + | |
- | [ < | + | |
- | </ | + | |
- | + | ||
- | ==vmstat== | + | |
- | + | ||
- | La commande **vmstat** affiche des statistiques sur la mémoire, la pagination et la charge ponctuelle du processeur : | + | |
- | + | ||
- | < | + | |
- | [root@centos7 ~]# vmstat 1 10 | + | |
- | procs -----------memory---------- ---swap-- -----io---- -system-- ------cpu----- | + | |
- | | + | |
- | | + | |
- | | + | |
- | | + | |
- | | + | |
- | | + | |
- | | + | |
- | | + | |
- | | + | |
- | | + | |
- | | + | |
- | </ | + | |
- | + | ||
- | La première ligne subdivise le champ en six catégories à savoir : processus, mémoire, swap, E/S, système et CPU sur lesquelles elle donne des statistiques. La seconde ligne identifie de manière encore plus détaillée chacun des champs, permettant ainsi de parcourir simplement et rapidement l' | + | |
- | + | ||
- | Les champs relatifs aux processus sont les suivants : | + | |
- | + | ||
- | * r — Le nombre de processus exécutables attendant d' | + | |
- | * b — Le nombre de processus exécutables dans un état de veille qui ne peut être interrompu | + | |
- | + | ||
- | Les champs relatifs à la mémoire sont les suivants : | + | |
- | + | ||
- | * swpd — La quantité de mémoire virtuelle utilisée | + | |
- | * free — La quantité de mémoire libre | + | |
- | * buff — La quantité de mémoire utilisée par les tampons (ou buffers) | + | |
- | * cache — La quantité de mémoire utilisée comme cache de pages | + | |
- | + | ||
- | Les champs relatifs au swap sont les suivants : | + | |
- | + | ||
- | * si — La quantité de mémoire chargée depuis le disque | + | |
- | * so — La quantité de mémoire déchargée sur le disque | + | |
- | + | ||
- | Les champs relatifs aux Entrées/ | + | |
- | + | ||
- | * bi — Blocs envoyés vers un périphérique blocs | + | |
- | * bo— Blocs reçus d'un périphérique blocs | + | |
- | + | ||
- | Les champs relatifs au système sont les suivants : | + | |
- | + | ||
- | * in — Nombre d' | + | |
- | * cs — Nombre de changements de contexte par seconde | + | |
- | + | ||
- | Les champs relatifs au CPU sont les suivants : | + | |
- | + | ||
- | * us — Le pourcentage de temps pendant lequel le CPU exécute un code de niveau utilisateur | + | |
- | * sy — Le pourcentage de temps pendant lequel le CPU exécute un code de niveau système | + | |
- | * id — Le pourcentage de temps pendant lequel le CPU était inoccupé | + | |
- | * wa — Attente d' | + | |
- | + | ||
- | Les options de cette commande sont : | + | |
- | + | ||
- | < | + | |
- | [root@centos7 ~]# vmstat --help | + | |
- | + | ||
- | Usage: | + | |
- | | + | |
- | + | ||
- | Options: | + | |
- | -a, --active | + | |
- | -f, --forks | + | |
- | -m, --slabs | + | |
- | -n, --one-header | + | |
- | -s, --stats | + | |
- | -d, --disk | + | |
- | -D, --disk-sum | + | |
- | -p, --partition < | + | |
- | -S, --unit < | + | |
- | -w, --wide | + | |
- | -t, --timestamp | + | |
- | + | ||
- | -h, --help | + | |
- | -V, --version | + | |
- | + | ||
- | For more details see vmstat(8). | + | |
- | </ | + | |
- | + | ||
- | <WRAP center round important> | + | |
- | **Important** : Par défaut la commande vmstat affiche des informations depuis le démarrage du système. | + | |
- | </ | + | |
- | + | ||
- | ==mpstat== | + | |
- | + | ||
- | La commande **mpstat** affiche des statistiques détaillées sur le CPU : | + | |
- | + | ||
- | < | + | |
- | [root@centos7 ~]# mpstat | + | |
- | Linux 3.10.0-229.4.2.el7.x86_64 (centos7.fenestros.loc) 11/02/2015 _x86_64_ (1 CPU) | + | |
- | + | ||
- | 03:19:32 PM CPU %usr | + | |
- | 03:19:32 PM all 9.38 0.14 2.52 0.31 0.00 0.24 0.00 0.00 0.00 | + | |
- | </ | + | |
- | + | ||
- | Dans le cas où vous avez plusieurs processeurs ou coeurs, vous pouvez visualiser ces mêmes informations par unité de traitement : | + | |
- | + | ||
- | < | + | |
- | [root@centos7 ~]# mpstat -P ALL | + | |
- | Linux 3.10.0-229.4.2.el7.x86_64 (centos7.fenestros.loc) 11/02/2015 _x86_64_ (1 CPU) | + | |
- | + | ||
- | 03:20:06 PM CPU %usr | + | |
- | 03:20:06 PM all 9.42 0.14 2.53 0.31 0.00 0.24 0.00 0.00 0.00 | + | |
- | 03:20:06 PM 0 9.42 0.14 2.53 0.31 0.00 0.24 0.00 0.00 0.00 | + | |
- | </ | + | |
- | + | ||
- | Pour afficher 5 jeux de statistiques à des intervales de 2 secondes pour tous les unités de traitement, il convient d' | + | |
- | + | ||
- | < | + | |
- | [root@centos7 ~]# mpstat -P ALL 2 5 | + | |
- | Linux 3.10.0-229.4.2.el7.x86_64 (centos7.fenestros.loc) 11/02/2015 _x86_64_ (1 CPU) | + | |
- | + | ||
- | 03:20:43 PM CPU %usr | + | |
- | 03:20:45 PM all | + | |
- | 03:20:45 PM 0 | + | |
- | + | ||
- | 03:20:45 PM CPU %usr | + | |
- | 03:20:47 PM all | + | |
- | 03:20:47 PM 0 | + | |
- | + | ||
- | 03:20:47 PM CPU %usr | + | |
- | 03:20:49 PM all | + | |
- | 03:20:49 PM 0 | + | |
- | + | ||
- | 03:20:49 PM CPU %usr | + | |
- | 03:20:51 PM all | + | |
- | 03:20:51 PM 0 | + | |
- | + | ||
- | 03:20:51 PM CPU %usr | + | |
- | 03:20:53 PM all | + | |
- | 03:20:53 PM 0 | + | |
- | + | ||
- | Average: | + | |
- | Average: | + | |
- | Average: | + | |
- | </ | + | |
- | + | ||
- | Les options de cette commande sont : | + | |
- | + | ||
- | < | + | |
- | [root@centos7 ~]# mpstat --help | + | |
- | Usage: mpstat [ options ] [ < | + | |
- | Options are: | + | |
- | [ -A ] [ -u ] [ -V ] [ -I { SUM | CPU | SCPU | ALL } ] | + | |
- | [ -P { <cpu> [,...] | ON | ALL } ] | + | |
- | </ | + | |
- | + | ||
- | ==sar== | + | |
- | + | ||
- | La commande **sar** permet de surveiller toutes les ressources du système selon l' | + | |
- | + | ||
- | ^ Option ^ Description ^ | + | |
- | | -u | Pourcentage d' | + | |
- | | -q | Nombre de processus en attente | | + | |
- | | -r | Utilisation de la mémoire centrale | | + | |
- | | -w | Surveillance du swapping | | + | |
- | | -p | Surveillance de la pagination | | + | |
- | | -b | Utilisation des tampons | | + | |
- | | -d | Utilisation des disques | | + | |
- | + | ||
- | Sous RHEL/CentOS 7 la commande **/ | + | |
- | + | ||
- | < | + | |
- | [root@centos7 ~]# ls / | + | |
- | sa1 sa2 sadc | + | |
- | </ | + | |
- | + | ||
- | Le script **/ | + | |
- | + | ||
- | ^ Option ^ Description ^ | + | |
- | | -t | L' | + | |
- | | -n | Nombre de collectes | | + | |
- | + | ||
- | Le script **/ | + | |
- | + | ||
- | Pour pouvoir fonctionner correctement, | + | |
- | + | ||
- | Modifiez le fichier **/ | + | |
- | + | ||
- | < | + | |
- | [root@centos7 ~]# cat / | + | |
- | # Run system activity accounting tool every 10 minutes | + | |
- | # */10 * * * * root / | + | |
- | */2 * * * * root / | + | |
- | # 0 * * * * root / | + | |
- | # Generate a daily summary of process accounting at 23:53 | + | |
- | 53 23 * * * root / | + | |
- | </ | + | |
- | + | ||
- | Attendez deux minutes puis saisissez les commandes suivantes : | + | |
- | + | ||
- | < | + | |
- | [root@centos7 ~]# sar | + | |
- | Linux 3.10.0-229.4.2.el7.x86_64 (centos7.fenestros.loc) 11/02/2015 _x86_64_ (1 CPU) | + | |
- | + | ||
- | 02:20:02 PM | + | |
- | 02:30:01 PM | + | |
- | 02:40:01 PM | + | |
- | 02:50:01 PM | + | |
- | 03:00:01 PM | + | |
- | 03:10:01 PM | + | |
- | 03:20:01 PM | + | |
- | 03:28:02 PM | + | |
- | 03:30:01 PM | + | |
- | 03:32:01 PM | + | |
- | Average: | + | |
- | </ | + | |
- | + | ||
- | < | + | |
- | [root@centos7 ~]# sar -u 5 3 | + | |
- | Linux 3.10.0-229.4.2.el7.x86_64 (centos7.fenestros.loc) 11/02/2015 _x86_64_ (1 CPU) | + | |
- | + | ||
- | 03:34:01 PM | + | |
- | 03:34:06 PM | + | |
- | 03:34:11 PM | + | |
- | 03:34:16 PM | + | |
- | Average: | + | |
- | </ | + | |
- | + | ||
- | < | + | |
- | [root@centos7 ~]# sar -r 5 3 | + | |
- | Linux 3.10.0-229.4.2.el7.x86_64 (centos7.fenestros.loc) 11/02/2015 _x86_64_ (1 CPU) | + | |
- | + | ||
- | 03:34:48 PM kbmemfree kbmemused | + | |
- | 03:34:53 PM 137708 | + | |
- | 03:34:58 PM 130988 | + | |
- | 03:35:03 PM 131360 | + | |
- | Average: | + | |
- | </ | + | |
- | + | ||
- | < | + | |
- | [root@centos7 ~]# sar -w 5 3 | + | |
- | Linux 3.10.0-229.4.2.el7.x86_64 (centos7.fenestros.loc) 11/02/2015 _x86_64_ (1 CPU) | + | |
- | + | ||
- | 03:35:51 PM proc/ | + | |
- | 03:35:56 PM 0.00 608.04 | + | |
- | 03:36:01 PM 1.06 531.75 | + | |
- | 03:36:06 PM | + | |
- | Average: | + | |
- | </ | + | |
- | + | ||
- | < | + | |
- | [root@centos7 ~]# sar -b 5 3 | + | |
- | Linux 3.10.0-229.4.2.el7.x86_64 (centos7.fenestros.loc) 11/02/2015 _x86_64_ (1 CPU) | + | |
- | + | ||
- | 03:36:09 PM | + | |
- | 03:36:14 PM 0.00 0.00 0.00 0.00 0.00 | + | |
- | 03:36:19 PM 0.00 0.00 0.00 0.00 0.00 | + | |
- | 03:36:24 PM 2.32 0.00 2.32 0.00 | + | |
- | Average: | + | |
- | </ | + | |
- | + | ||
- | < | + | |
- | [root@centos7 ~]# sar -d 5 3 | + | |
- | Linux 3.10.0-229.4.2.el7.x86_64 (centos7.fenestros.loc) 11/02/2015 _x86_64_ (1 CPU) | + | |
- | + | ||
- | 03:36:46 PM | + | |
- | 03:36:51 PM | + | |
- | 03:36:51 PM dev8-0 | + | |
- | + | ||
- | 03:36:51 PM | + | |
- | 03:36:56 PM | + | |
- | 03:36:56 PM dev8-0 | + | |
- | + | ||
- | 03:36:56 PM | + | |
- | 03:37:01 PM | + | |
- | 03:37:01 PM dev8-0 | + | |
- | + | ||
- | Average: | + | |
- | Average: | + | |
- | Average: | + | |
- | </ | + | |
- | + | ||
- | < | + | |
- | [root@centos7 ~]# sar -p 5 3 | + | |
- | Linux 3.10.0-229.4.2.el7.x86_64 (centos7.fenestros.loc) 11/02/2015 _x86_64_ (1 CPU) | + | |
- | + | ||
- | 03:37:16 PM | + | |
- | 03:37:21 PM | + | |
- | 03:37:26 PM | + | |
- | 03:37:31 PM | + | |
- | Average: | + | |
- | </ | + | |
- | + | ||
- | < | + | |
- | [root@centos7 ~]# sar -v 5 3 | + | |
- | Linux 3.10.0-229.4.2.el7.x86_64 (centos7.fenestros.loc) 11/02/2015 _x86_64_ (1 CPU) | + | |
- | + | ||
- | 03:38:44 PM dentunusd | + | |
- | 03:38:49 PM 136266 | + | |
- | 03:38:54 PM 136266 | + | |
- | 03:38:59 PM 136266 | + | |
- | Average: | + | |
- | </ | + | |
- | + | ||
- | Les options de cette commande sont : | + | |
- | + | ||
- | < | + | |
- | [root@centos7 ~]# sar --help | + | |
- | Usage: sar [ options ] [ < | + | |
- | Options are: | + | |
- | [ -A ] [ -B ] [ -b ] [ -C ] [ -d ] [ -H ] [ -h ] [ -p ] [ -q ] [ -R ] | + | |
- | [ -r ] [ -S ] [ -t ] [ -u [ ALL ] ] [ -V ] [ -v ] [ -W ] [ -w ] [ -y ] | + | |
- | [ -I { <int> [,...] | SUM | ALL | XALL } ] [ -P { <cpu> [,...] | ALL } ] | + | |
- | [ -m { < | + | |
- | [ -j { ID | LABEL | PATH | UUID | ... } ] | + | |
- | [ -f [ < | + | |
- | [ -i < | + | |
- | </ | + | |
- | + | ||
- | ===Utilisation des commandes en production=== | + | |
- | + | ||
- | ==Identifier un système limité par le processeur== | + | |
- | + | ||
- | Dans ce cas utilisez les commandes suivantes : | + | |
- | + | ||
- | * uptime ou w | + | |
- | * vmstat | + | |
- | * mpstat -P ALL | + | |
- | * sar -u | + | |
- | * iostat -c | + | |
- | + | ||
- | ==Identifier un système ayant un problème de mémoire== | + | |
- | + | ||
- | Dans ce cas utilisez les commandes suivantes : | + | |
- | + | ||
- | * free | + | |
- | * sar -B | + | |
- | + | ||
- | + | ||
- | ==Identifier un système ayant un problème d' | + | |
- | + | ||
- | Utilisez la commande : | + | |
- | + | ||
- | * iostat -d -x | + | |
- | + | ||
- | + | ||
- | =====Modules usb===== | + | |
- | + | ||
- | L' | + | |
- | + | ||
- | ^ Version USB ^ Module ^ Nom Complet ^ | + | |
- | | 1.0\1.1 | + | |
- | | ::: | **OHCI** | //Open Controller Host Interface// | | + | |
- | | 2.0 | **EHCI** | //Enhanced Host Controller Interface// | | + | |
- | | 3.0 | **XHCI** | // | + | |
- | + | ||
- | Le tableau suivant liste les modules courrament chargés en fonction du périphérique utilisé : | + | |
- | + | ||
- | ^ Module ^ Type de Périphérique ^ | + | |
- | | **usb_storage** | + | |
- | | **usbhid** | + | |
- | | **snd-usb-audio** | + | |
- | | **usbvidéo** | + | |
- | | **irda-usb** | + | |
- | | **usbnet** | + | |
- | + | ||
- | Les modules peuvent être chargés par un des moyens suivants : | + | |
- | + | ||
- | * INITrd, | + | |
- | * Le processus init, | + | |
- | * kmod, d'une manière dynamique et transparente lors du branchement du périphérique, | + | |
- | * udev, | + | |
- | * manuellement. | + | |
- | + | ||
- | <WRAP center round todo> | + | |
- | **A faire** : Branchez une clef USB avant de continuer. Si vous utilisez %%VirtualBox%%, | + | |
- | </ | + | |
- | + | ||
- | =====udev===== | + | |
- | + | ||
- | Depuis le noyau Linux 2.6 Linux est capable de détecter des périphériques branchés à chaud. Cette technologie s' | + | |
- | + | ||
- | * Udev, | + | |
- | * HAL, | + | |
- | * Dbus. | + | |
- | + | ||
- | Les rôles de chaque composant sont les suivants : | + | |
- | + | ||
- | * Udev se charge de créer et supprimer d'une manière dynamique les nœuds dans le répertoire **/dev**, | + | |
- | * HAL obtient des informations à partir d'Udev et créé un fichier au format XML représentant le périphérique branché. Il informe ensuite Nautilus en utilisant le Dbus, | + | |
- | * Dbus joue le rôle d'un bus système qui est utilisé pour la communication inter-processus. | + | |
- | + | ||
- | Lors de démarrage de Linux, Udev joue un rôle important : | + | |
- | + | ||
- | * Au démarrage **tmpfs** est monté sur /dev, | + | |
- | * Udev copie les éventuels nœuds statiques de **/ | + | |
- | * le démon **udevd** collecte des données appelées **uevents** du noyau et cherche une règle correspondante dans le répertoire **/ | + | |
- | * Udev crée les nœuds et liens symboliques spécifiés dans la règle identifiée, | + | |
- | * Udev stocke les règles contenues dans **/ | + | |
- | * En cas de modification des ces règles, Udev met à jour la mémoire. | + | |
- | + | ||
- | Udev repose sur le filesystem **sysfs** monté sur /sys qui permet de rendre les périphériques visibles à Udev dans l'// | + | |
- | + | ||
- | Le fichier de configuration principal d'Udev est **/ | + | |
- | + | ||
- | < | + | |
- | [root@centos7 ~]# cat / | + | |
- | # see udev(7) for details | + | |
- | + | ||
- | # | + | |
- | </ | + | |
- | + | ||
- | Les fichiers de règles se trouvent dans **/ | + | |
- | + | ||
- | < | + | |
- | [root@centos7 ~]# ls / | + | |
- | 10-dm.rules | + | |
- | 11-dm-lvm.rules | + | |
- | 11-dm-mpath.rules | + | |
- | 13-dm-disk.rules | + | |
- | 40-libgphoto2.rules | + | |
- | 40-redhat.rules | + | |
- | 40-usb_modeswitch.rules | + | |
- | 42-usb-hid-pm.rules | + | |
- | 50-rbd.rules | + | |
- | 50-udev-default.rules | + | |
- | 56-hpmud.rules | + | |
- | 60-alias-kmsg.rules | + | |
- | 60-cdrom_id.rules | + | |
- | 60-fprint-autosuspend.rules | + | |
- | 60-keyboard.rules | + | |
- | 60-net.rules | + | |
- | 60-persistent-alsa.rules | + | |
- | 60-persistent-input.rules | + | |
- | 60-persistent-serial.rules | + | |
- | 60-persistent-storage.rules | + | |
- | 60-persistent-storage-tape.rules | + | |
- | 60-persistent-v4l.rules | + | |
- | 60-raw.rules | + | |
- | 61-accelerometer.rules | + | |
- | </ | + | |
- | + | ||
- | <WRAP center round important> | + | |
- | **Important** : Il vous est possible d' | + | |
- | </ | + | |
- | + | ||
- | Comme indique le nom de chaque fichier, le contenu est composé de règles à l' | + | |
- | + | ||
- | < | + | |
- | [root@centos7 ~]# cat / | + | |
- | # do not edit this file, it will be overwritten on update | + | |
- | + | ||
- | SUBSYSTEM==" | + | |
- | + | ||
- | # select " | + | |
- | SUBSYSTEM==" | + | |
- | SUBSYSTEM==" | + | |
- | + | ||
- | SUBSYSTEM==" | + | |
- | SUBSYSTEM==" | + | |
- | ENV{MODALIAS}!="", | + | |
- | + | ||
- | ACTION!=" | + | |
- | + | ||
- | SUBSYSTEM==" | + | |
- | SUBSYSTEM==" | + | |
- | SUBSYSTEM==" | + | |
- | SUBSYSTEM==" | + | |
- | SUBSYSTEM==" | + | |
- | SUBSYSTEM==" | + | |
- | SUBSYSTEM==" | + | |
- | KERNEL==" | + | |
- | + | ||
- | SUBSYSTEM==" | + | |
- | + | ||
- | SUBSYSTEM==" | + | |
- | + | ||
- | SUBSYSTEM==" | + | |
- | SUBSYSTEM==" | + | |
- | --More-- | + | |
- | </ | + | |
- | + | ||
- | Chaque règle prend la forme suivante : | + | |
- | + | ||
- | KEY, [KEY, ...] NAME [, SYMLINK] | + | |
- | + | ||
- | Chaque KEY est un champ au format **type=valeur** qui doit correspondre à un périphérique unique. La valeur de type peut prendre plusieurs formes : | + | |
- | + | ||
- | ^ Type ^ Description ^ Exemples ^ | + | |
- | | BUS | Type de bus | usb, scsi, ide | | + | |
- | | KERNEL | Le nom par défault du périphérique donné par le noyau | hda, ttyUSB0, lp0 | | + | |
- | | SUBSYSTEM | Le nom noyau du sous-système, | + | |
- | | DRIVER | Le nom du pilote qui contrôle le périphérique | usb-storage | | + | |
- | | ID | Le numéro du périphérique sur son bus | PCI bus id, USB id | | + | |
- | | PLACE | Ne concerne que les périphériques USB et donne la position topologique du périphérique sur son bus | S/O | | + | |
- | | SYSFS{filename} | Le nom du fichier dans /sys pour le périphérique. Ce fichier contient le fabricant, le label, le numéro de série et UUID du périphérique. La vérification de jusqu' | + | |
- | | PROGRAM | Ceci permet à Udev d' | + | |
- | | RESULT | Valeur à comparer au résultat de PROGRAM | S/O | | + | |
- | + | ||
- | NAME et SYMLINK sont utilisées pour stipuler ce que Udev doit faire avec le périphérique : | + | |
- | + | ||
- | ^ Type ^ Description ^ Exemples ^ | + | |
- | | NAME | Le nome du nœud dans /dev | S/O | | + | |
- | | SYMLINK | Le ou les lien(s) symbolique(s) qui pointe(nt) vers le NAME | S/O | | + | |
- | + | ||
- | ====La commande udevadm==== | + | |
- | + | ||
- | Pour obtenir de l' | + | |
- | + | ||
- | < | + | |
- | [root@centos7 ~]# udevadm info --query=all -n /dev/sda | + | |
- | P: / | + | |
- | N: sda | + | |
- | S: disk/ | + | |
- | E: DEVLINKS=/ | + | |
- | E: DEVNAME=/ | + | |
- | E: DEVPATH=/ | + | |
- | E: DEVTYPE=disk | + | |
- | E: ID_ATA=1 | + | |
- | E: ID_ATA_FEATURE_SET_PM=1 | + | |
- | E: ID_ATA_FEATURE_SET_PM_ENABLED=1 | + | |
- | E: ID_ATA_SATA=1 | + | |
- | E: ID_ATA_SATA_SIGNAL_RATE_GEN2=1 | + | |
- | E: ID_ATA_WRITE_CACHE=1 | + | |
- | E: ID_ATA_WRITE_CACHE_ENABLED=1 | + | |
- | E: ID_BUS=ata | + | |
- | E: ID_MODEL=VBOX_HARDDISK | + | |
- | E: ID_MODEL_ENC=VBOX\x20HARDDISK\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20 | + | |
- | E: ID_PART_TABLE_TYPE=dos | + | |
- | E: ID_REVISION=1.0 | + | |
- | E: ID_SERIAL=VBOX_HARDDISK_VBc40eec8a-49b6b6f3 | + | |
- | E: ID_SERIAL_SHORT=VBc40eec8a-49b6b6f3 | + | |
- | E: ID_TYPE=disk | + | |
- | E: MAJOR=8 | + | |
- | E: MINOR=0 | + | |
- | E: MPATH_SBIN_PATH=/ | + | |
- | E: SUBSYSTEM=block | + | |
- | E: TAGS=: | + | |
- | E: USEC_INITIALIZED=957366 | + | |
- | </ | + | |
- | + | ||
- | ===Les options de la commande=== | + | |
- | + | ||
- | Les options de la commande udevadm sont : | + | |
- | + | ||
- | < | + | |
- | [root@centos7 ~]# udevadm --help | + | |
- | Usage: udevadm [--help] [--version] [--debug] COMMAND [COMMAND OPTIONS] | + | |
- | info query sysfs or the udev database | + | |
- | trigger | + | |
- | settle | + | |
- | control | + | |
- | monitor | + | |
- | hwdb | + | |
- | test test an event run | + | |
- | test-builtin test a built-in command | + | |
- | + | ||
- | [root@centos7 ~]# udevadm info --help | + | |
- | Usage: udevadm info OPTIONS | + | |
- | --query=< | + | |
- | name name of device node | + | |
- | symlink | + | |
- | path sys device path | + | |
- | property | + | |
- | all all values | + | |
- | --path=< | + | |
- | --name=< | + | |
- | --root | + | |
- | --attribute-walk | + | |
- | of parent devices | + | |
- | --device-id-of-file=< | + | |
- | --export | + | |
- | --export-prefix | + | |
- | --export-db | + | |
- | --cleanup-db | + | |
- | --help | + | |
- | </ | + | |
- | + | ||
- | =====Système de fichiers /sys===== | + | |
- | + | ||
- | Le système de fichiers virtuel **/sys** a été introduit avec le noyau Linux **2.6**. Son rôle est de décrire le matériel pour udev. | + | |
- | + | ||
- | Saisissez la commande suivante : | + | |
- | + | ||
- | < | + | |
- | [root@centos7 ~]# ls -l /sys | + | |
- | total 0 | + | |
- | drwxr-xr-x. | + | |
- | drwxr-xr-x. | + | |
- | drwxr-xr-x. | + | |
- | drwxr-xr-x. | + | |
- | drwxr-xr-x. | + | |
- | drwxr-xr-x. | + | |
- | drwxr-xr-x. | + | |
- | drwxr-xr-x. | + | |
- | drwxr-xr-x. | + | |
- | drwxr-xr-x. 146 root root 0 Oct 28 09:40 module | + | |
- | drwxr-xr-x. | + | |
- | </ | + | |
- | + | ||
- | Chaque répertoire contient des informations : | + | |
- | + | ||
- | * **block** | + | |
- | * contient des informations sur les périphériques bloc | + | |
- | * **bus** | + | |
- | * contient des informations sur les bus de données | + | |
- | * **class** | + | |
- | * contient des informations sur des classes de matériel | + | |
- | * **devices** | + | |
- | * contient des informations sur la position des périphériques sur les bus | + | |
- | * **firmware** | + | |
- | * contient, entre autre, des informations sur l' | + | |
- | * **module** | + | |
- | * contient des informations sur les modules du noyau | + | |
- | * **power** | + | |
- | * contient des informations sur la gestion de l' | + | |
- | * **fs** | + | |
- | * contient des informations sur les systèmes de fichiers | + | |
- | + | ||
- | Pour illustrer ceci, saisissez la commande suivante : | + | |
- | + | ||
- | < | + | |
- | [root@centos7 ~]# cat / | + | |
- | 409600 | + | |
- | </ | + | |
- | + | ||
- | Ce chiffre correspond aux nombre de secteurs. | + | |
- | + | ||
- | =====Limitation des ressources===== | + | |
- | + | ||
- | ====ulimit==== | + | |
- | + | ||
- | Les ressources disponibles aux utilisateurs peuvent être limitées par l' | + | |
- | + | ||
- | La commande **ulimit** gère deux types de limite, la limite //hard// en utilisant l' | + | |
- | + | ||
- | La limite //soft// est la limite imposée à l' | + | |
- | + | ||
- | L' | + | |
- | + | ||
- | < | + | |
- | [root@centos7 ~]# cat / | + | |
- | # / | + | |
- | # | + | |
- | #This file sets the resource limits for the users logged in via PAM. | + | |
- | #It does not affect resource limits of the system services. | + | |
- | # | + | |
- | #Also note that configuration files in / | + | |
- | #which are read in alphabetical order, override the settings in this | + | |
- | #file in case the domain is the same or more specific. | + | |
- | #That means for example that setting a limit for wildcard domain here | + | |
- | #can be overriden with a wildcard setting in a config file in the | + | |
- | # | + | |
- | #with a user specific setting in the subdirectory. | + | |
- | # | + | |
- | #Each line describes a limit for a user in the form: | + | |
- | # | + | |
- | #< | + | |
- | # | + | |
- | #Where: | + | |
- | #< | + | |
- | # - a user name | + | |
- | # - a group name, with @group syntax | + | |
- | # - the wildcard *, for default entry | + | |
- | # - the wildcard %, can be also used with %group syntax, | + | |
- | # for maxlogin limit | + | |
- | # | + | |
- | #< | + | |
- | # - " | + | |
- | # - " | + | |
- | # | + | |
- | #< | + | |
- | # - core - limits the core file size (KB) | + | |
- | # - data - max data size (KB) | + | |
- | # - fsize - maximum filesize (KB) | + | |
- | # - memlock - max locked-in-memory address space (KB) | + | |
- | # - nofile - max number of open file descriptors | + | |
- | # - rss - max resident set size (KB) | + | |
- | # - stack - max stack size (KB) | + | |
- | # - cpu - max CPU time (MIN) | + | |
- | # - nproc - max number of processes | + | |
- | # - as - address space limit (KB) | + | |
- | # - maxlogins - max number of logins for this user | + | |
- | # - maxsyslogins - max number of logins on the system | + | |
- | # - priority - the priority to run user process with | + | |
- | # - locks - max number of file locks the user can hold | + | |
- | # - sigpending - max number of pending signals | + | |
- | # - msgqueue - max memory used by POSIX message queues (bytes) | + | |
- | # - nice - max nice priority allowed to raise to values: [-20, 19] | + | |
- | # - rtprio - max realtime priority | + | |
- | # | + | |
- | #< | + | |
- | # | + | |
- | + | ||
- | #* | + | |
- | #* | + | |
- | # | + | |
- | # | + | |
- | # | + | |
- | #ftp | + | |
- | # | + | |
- | + | ||
- | # End of file | + | |
- | </ | + | |
- | + | ||
- | <WRAP center round important> | + | |
- | **Important** : La valeur de la limite peut être un **nombre** ou le mot **unlimited**. | + | |
- | </ | + | |
- | + | ||
- | Par exemple, si root inscrit les deux ligne suivantes dans le fichier / | + | |
- | + | ||
- | < | + | |
- | ... | + | |
- | trainee | + | |
- | trainee | + | |
- | ... | + | |
- | </ | + | |
- | + | ||
- | la limite du nombre de fichiers ouverts simultanément par trainee est de 1 024. Par contre, trainee a la possibilité d' | + | |
- | + | ||
- | < | + | |
- | $ ulimit -n 4096 | + | |
- | </ | + | |
- | + | ||
- | Pour consulter la liste des limites actuelles, il convient d' | + | |
- | + | ||
- | < | + | |
- | [root@centos7 ~]# ulimit -a | + | |
- | core file size (blocks, -c) 0 | + | |
- | data seg size | + | |
- | scheduling priority | + | |
- | file size | + | |
- | pending signals | + | |
- | max locked memory | + | |
- | max memory size | + | |
- | open files (-n) 1024 | + | |
- | pipe size (512 bytes, -p) 8 | + | |
- | POSIX message queues | + | |
- | real-time priority | + | |
- | stack size (kbytes, -s) 8192 | + | |
- | cpu time | + | |
- | max user processes | + | |
- | virtual memory | + | |
- | file locks (-x) unlimited | + | |
- | </ | + | |
- | + | ||
- | ====Options de la commande==== | + | |
- | + | ||
- | Les options de **ulimit** sont : | + | |
- | + | ||
- | < | + | |
- | [root@centos7 ~]# help ulimit | + | |
- | ulimit: ulimit [-SHacdefilmnpqrstuvx] [limit] | + | |
- | Modify shell resource limits. | + | |
- | + | ||
- | Provides control over the resources available to the shell and processes | + | |
- | it creates, on systems that allow such control. | + | |
- | + | ||
- | Options: | + | |
- | -S use the `soft' resource limit | + | |
- | -H use the `hard' resource limit | + | |
- | -a all current limits are reported | + | |
- | -b the socket buffer size | + | |
- | -c the maximum size of core files created | + | |
- | -d the maximum size of a process' | + | |
- | -e the maximum scheduling priority (`nice' | + | |
- | -f the maximum size of files written by the shell and its children | + | |
- | -i the maximum number of pending signals | + | |
- | -l the maximum size a process may lock into memory | + | |
- | -m the maximum resident set size | + | |
- | -n the maximum number of open file descriptors | + | |
- | -p the pipe buffer size | + | |
- | -q the maximum number of bytes in POSIX message queues | + | |
- | -r the maximum real-time scheduling priority | + | |
- | -s the maximum stack size | + | |
- | -t the maximum amount of cpu time in seconds | + | |
- | -u the maximum number of user processes | + | |
- | -v the size of virtual memory | + | |
- | -x the maximum number of file locks | + | |
- | + | ||
- | If LIMIT is given, it is the new value of the specified resource; the | + | |
- | special LIMIT values `soft', | + | |
- | current soft limit, the current hard limit, and no limit, respectively. | + | |
- | Otherwise, the current value of the specified resource is printed. | + | |
- | no option is given, then -f is assumed. | + | |
- | + | ||
- | Values are in 1024-byte increments, except for -t, which is in seconds, | + | |
- | -p, which is in increments of 512 bytes, and -u, which is an unscaled | + | |
- | number of processes. | + | |
- | + | ||
- | Exit Status: | + | |
- | Returns success unless an invalid option is supplied or an error occurs. | + | |
- | </ | + | |
- | + | ||
- | ====Groupes de Contrôle==== | + | |
- | + | ||
- | Les **Groupes de Contrôles** (//Control Groups//) aussi appelés **CGroups**, | + | |
- | + | ||
- | Les groupes de contrôle sont organisés de manière hiérarchique, | + | |
- | + | ||
- | Ces hiérarchies multiples et séparés sont necéssaires parce que chaque hiérarchie est attaché à un ou plusieurs **sous-système(s)** aussi appelés des **Contrôleurs de Ressources** ou simplement des **Contrôleurs**. Les contrôleurs disponibles sous RHEl/CentOS 7 sont : | + | |
- | + | ||
- | * **blkio** - utilisé pour établir des limites sur l' | + | |
- | * **cpu** - utilisé pour fournir aux tâches des groupes de contrôle accès au CPU grâce au planificateur, | + | |
- | * **cpuacct** - utilisé pour produire des rapports automatiques sur les ressources CPU utilisées par les tâches dans un groupe de contrôle, | + | |
- | * **cpuset** - utilisé pour assigner des CPU individuels sur un système multicoeur et des noeuds de mémoire à des tâches dans un groupe de contrôle, | + | |
- | * **devices** - utilisé pour autoriser ou pour refuser l' | + | |
- | * **freezer** - utilisé pour suspendre ou pour réactiver les tâches dans un groupe de contrôle, | + | |
- | * **memory** - utilisé pour établir les limites d' | + | |
- | * **net_cls** - utilisé pour repèrer les paquets réseau avec un identifiant de classe (// | + | |
- | * **perf_event** | + | |
- | * **hugetlb** - utilisé pour limiter des ressources sur des pages de mémoire virtuelle de grande taille. | + | |
- | + | ||
- | Pour visualiser les hiérarchies, | + | |
- | + | ||
- | < | + | |
- | [root@centos7 ~]# lssubsys -am | + | |
- | cpuset / | + | |
- | cpu,cpuacct / | + | |
- | memory / | + | |
- | devices / | + | |
- | freezer / | + | |
- | net_cls / | + | |
- | blkio / | + | |
- | perf_event / | + | |
- | hugetlb / | + | |
- | </ | + | |
- | + | ||
- | Sous RHEL/CentOS 7, **Systemd** organise les processus dans chaque CGroup. Par exemple tous les processus démarrés par le serveur Apache se trouveront dans le même CGroup, y compris les scripts CGI. Ceci implique que la gestion des ressources en utilisant des hiérarchies est couplé avec l' | + | |
- | + | ||
- | En haut de l' | + | |
- | + | ||
- | * le **system.slice** - l' | + | |
- | * le **user.slice** - l' | + | |
- | * le **machine.slice** - l' | + | |
- | + | ||
- | En dessous des tranches peuvent se trouver : | + | |
- | + | ||
- | * des **scopes** - des processus crées par **fork**, | + | |
- | * des **services** - des processus créés par une **Unité**. | + | |
- | + | ||
- | Les slices peuvent être visualisés avec la commande suivante : | + | |
- | + | ||
- | < | + | |
- | [root@centos7 ~]# systemctl list-units --type=slice | + | |
- | UNIT | + | |
- | -.slice | + | |
- | system-getty.slice loaded active active system-getty.slice | + | |
- | system.slice | + | |
- | user-0.slice | + | |
- | user-1000.slice | + | |
- | user.slice | + | |
- | + | ||
- | LOAD = Reflects whether the unit definition was properly loaded. | + | |
- | ACTIVE = The high-level unit activation state, i.e. generalization of SUB. | + | |
- | SUB = The low-level unit activation state, values depend on unit type. | + | |
- | + | ||
- | 6 loaded units listed. Pass --all to see loaded but inactive units, too. | + | |
- | To show all installed unit files use ' | + | |
- | </ | + | |
- | + | ||
- | L' | + | |
- | + | ||
- | < | + | |
- | [root@centos7 ~]# systemd-cgls | + | |
- | ├─1 / | + | |
- | ├─user.slice | + | |
- | │ └─user-1000.slice | + | |
- | │ | + | |
- | │ | + | |
- | │ | + | |
- | │ | + | |
- | │ | + | |
- | │ | + | |
- | │ | + | |
- | │ | + | |
- | └─system.slice | + | |
- | ├─upower.service | + | |
- | │ └─3478 / | + | |
- | ├─polkit.service | + | |
- | │ └─822 / | + | |
- | ├─wpa_supplicant.service | + | |
- | │ └─821 / | + | |
- | ├─crond.service | + | |
- | │ └─793 / | + | |
- | ├─atd.service | + | |
- | │ └─789 / | + | |
- | ├─tuned.service | + | |
- | │ └─762 / | + | |
- | ├─simplegateway.service | + | |
- | │ ├─ | + | |
- | │ ├─ 3202 / | + | |
- | │ ├─ 3384 / | + | |
- | │ ├─13111 /bin/sh / | + | |
- | │ └─13458 sleep 1 | + | |
- | ├─postfix.service | + | |
- | │ ├─1810 / | + | |
- | │ ├─1833 pickup -l -t unix -u | + | |
- | │ └─1834 qmgr -l -t unix -u | + | |
- | ├─cups.service | + | |
- | │ └─756 / | + | |
- | ├─sshd.service | + | |
- | │ └─755 / | + | |
- | ├─docker.service | + | |
- | │ ├─750 /bin/sh -c / | + | |
- | │ ├─753 / | + | |
- | │ └─754 / | + | |
- | ├─NetworkManager.service | + | |
- | │ ├─ 678 / | + | |
- | │ └─1968 / | + | |
- | ├─abrt-xorg.service | + | |
- | │ └─586 / | + | |
- | ├─abrt-oops.service | + | |
- | │ └─582 / | + | |
- | ├─abrtd.service | + | |
- | │ └─581 / | + | |
- | ├─dbus.service | + | |
- | │ └─513 / | + | |
- | ├─chronyd.service | + | |
- | │ └─525 / | + | |
- | ├─firewalld.service | + | |
- | │ └─510 / | + | |
- | ├─avahi-daemon.service | + | |
- | │ ├─507 avahi-daemon: | + | |
- | │ └─530 avahi-daemon: | + | |
- | ├─ModemManager.service | + | |
- | │ └─506 / | + | |
- | ├─smartd.service | + | |
- | │ └─505 / | + | |
- | ├─libstoragemgmt.service | + | |
- | │ └─494 / | + | |
- | ├─gssproxy.service | + | |
- | │ └─517 / | + | |
- | ├─systemd-logind.service | + | |
- | │ └─492 / | + | |
- | ├─rsyslog.service | + | |
- | │ └─488 / | + | |
- | ├─alsa-state.service | + | |
- | │ └─487 / | + | |
- | ├─auditd.service | + | |
- | │ ├─463 / | + | |
- | │ ├─473 / | + | |
- | │ └─475 / | + | |
- | ├─systemd-udevd.service | + | |
- | │ └─381 / | + | |
- | ├─lvm2-lvmetad.service | + | |
- | │ └─378 / | + | |
- | ├─systemd-journald.service | + | |
- | │ └─349 / | + | |
- | └─system-getty.slice | + | |
- | └─getty@tty1.service | + | |
- | └─798 / | + | |
- | </ | + | |
- | + | ||
- | En utilisant Systemd, plusieurs ressources peuvent être limitées : | + | |
- | + | ||
- | * **CPUShares** - par défault 1024, | + | |
- | * **MemoryLimit** - limite exprimée en Mo ou en Go. Pas de valeur par défaut, | + | |
- | * **BlockIOWeight** - valeur entre 10 et 1000. Pas de valeur par défaut, | + | |
- | * **StartupCPUShares** - comme CPUShares mais uniquement appliqué pendant le démarrage, | + | |
- | * **StartupBlockIOWeight** - comme BlockIOWeight mais uniquement appliqué pendant le démarrage, | + | |
- | * **CPUQuota** - utilisé pour limiter le temps CPU, même quand le système ne fait rien. | + | |
- | + | ||
- | <WRAP center round important> | + | |
- | **Important** : Consultez le manuel systemd.resource-control(5) pour voir les paramètres CGroup qui peuvent être passés à systemctl. | + | |
- | </ | + | |
- | + | ||
- | + | ||
- | ===LAB #1 - Travailler avec les cgroups sous RHEL/CentOS 7=== | + | |
- | + | ||
- | Créez un service appelé **foo** : | + | |
- | + | ||
- | < | + | |
- | [root@centos7 ~]# vi / | + | |
- | [root@centos7 ~]# cat / | + | |
- | [Unit] | + | |
- | Description=The foo service that does nothing useful | + | |
- | After=remote-fs.target nss-lookup.target | + | |
- | + | ||
- | [Service] | + | |
- | ExecStart=/ | + | |
- | ExecStop=/ | + | |
- | + | ||
- | [Install] | + | |
- | WantedBy=multi-user.target | + | |
- | </ | + | |
- | + | ||
- | Consultez le statut du service foo : | + | |
- | + | ||
- | < | + | |
- | [root@centos7 ~]# systemctl status foo.service | + | |
- | ● foo.service - The foo service that does nothing useful | + | |
- | | + | |
- | | + | |
- | </ | + | |
- | + | ||
- | Démarrez et actives le service : | + | |
- | + | ||
- | < | + | |
- | [root@centos7 ~]# systemctl start foo.service | + | |
- | [root@centos7 ~]# systemctl enable foo.service | + | |
- | Created symlink from / | + | |
- | [root@centos7 ~]# systemctl status foo.service | + | |
- | ● foo.service - The foo service that does nothing useful | + | |
- | | + | |
- | | + | |
- | Main PID: 22256 (sha1sum) | + | |
- | | + | |
- | | + | |
- | + | ||
- | Jun 15 13:13:17 centos7.fenestros.loc systemd[1]: Started The foo service that does nothing useful. | + | |
- | Jun 15 13:13:17 centos7.fenestros.loc systemd[1]: Starting The foo service that does nothing useful... | + | |
- | </ | + | |
- | + | ||
- | Notez que notre service a été placé dans la tranche **system.slice** : | + | |
- | + | ||
- | < | + | |
- | [root@centos7 ~]# systemctl show -p Slice foo.service | + | |
- | Slice=system.slice | + | |
- | </ | + | |
- | + | ||
- | Utilisez ps pour voir le pourcentage du CPU utilisé par ce service : | + | |
- | + | ||
- | < | + | |
- | [root@centos7 ~]# ps -p 22256 -o pid, | + | |
- | PID COMMAND | + | |
- | 22256 sha1sum | + | |
- | </ | + | |
- | + | ||
- | Fixez maintenant la valeur de CPUShares pour ce service à 250 : | + | |
- | + | ||
- | < | + | |
- | [root@centos7 ~]# systemctl set-property foo.service CPUShares=250 | + | |
- | </ | + | |
- | + | ||
- | Cette limite est permenante et a été inscrite dans le fichier **50-CPUShares.conf** qui se trouve dans le répertoire **/ | + | |
- | + | ||
- | < | + | |
- | [root@centos7 ~]# ls / | + | |
- | 50-CPUShares.conf | + | |
- | [root@centos7 ~]# cat / | + | |
- | [Service] | + | |
- | CPUShares=250 | + | |
- | </ | + | |
- | + | ||
- | <WRAP center round important> | + | |
- | **Important** : En utilisant l' | + | |
- | </ | + | |
- | + | ||
- | Appliquez cette modification en rechargeant systemd et en re-démarrant le service foo.service : | + | |
- | + | ||
- | < | + | |
- | [root@centos7 ~]# systemctl daemon-reload | + | |
- | [root@centos7 ~]# systemctl restart foo.service | + | |
- | </ | + | |
- | + | ||
- | Vérifiez maintenant que la limite a été appliquée : | + | |
- | + | ||
- | < | + | |
- | [root@centos7 ~]# cat / | + | |
- | 250 | + | |
- | [root@centos7 ~]# systemctl show -p MainPID foo.service | + | |
- | MainPID=27233 | + | |
- | [root@centos7 ~]# cat / | + | |
- | 4: | + | |
- | 1: | + | |
- | </ | + | |
- | + | ||
- | Créez maintenant le service **bar** : | + | |
- | + | ||
- | < | + | |
- | [root@centos7 ~]# vi / | + | |
- | [root@centos7 ~]# cat / | + | |
- | [Unit] | + | |
- | Description=The bar service that does nothing useful | + | |
- | After=remote-fs.target nss-lookup.target | + | |
- | + | ||
- | [Service] | + | |
- | ExecStart=/ | + | |
- | ExecStop=/ | + | |
- | + | ||
- | [Install] | + | |
- | WantedBy=multi-user.target | + | |
- | </ | + | |
- | + | ||
- | Fixez maintenant la limite de CPUShares pour ce service à 2000 : | + | |
- | + | ||
- | < | + | |
- | [root@centos7 ~]# systemctl set-property bar.service CPUShares=2000 | + | |
- | Failed to set unit properties on bar.service: | + | |
- | [root@centos7 ~]# systemctl start bar.service | + | |
- | [root@centos7 ~]# systemctl enable bar.service | + | |
- | Created symlink from / | + | |
- | [root@centos7 ~]# systemctl set-property bar.service CPUShares=2000 | + | |
- | </ | + | |
- | + | ||
- | Appliquez la limite : | + | |
- | + | ||
- | < | + | |
- | [root@centos7 ~]# systemctl daemon-reload | + | |
- | [root@centos7 ~]# systemctl restart bar.service | + | |
- | [root@centos7 ~]# systemctl status bar.service | + | |
- | ● bar.service - The bar service that does nothing useful | + | |
- | | + | |
- | Drop-In: / | + | |
- | | + | |
- | | + | |
- | Main PID: 29515 (md5sum) | + | |
- | | + | |
- | | + | |
- | + | ||
- | Jun 15 13:37:54 centos7.fenestros.loc systemd[1]: Started The bar service that does nothing useful. | + | |
- | Jun 15 13:37:54 centos7.fenestros.loc systemd[1]: Starting The bar service that does nothing useful... | + | |
- | </ | + | |
- | + | ||
- | Re-démarrer les services foo et bar : | + | |
- | + | ||
- | < | + | |
- | [root@centos7 ~]# systemctl restart foo.service | + | |
- | [root@centos7 ~]# systemctl status foo.service | + | |
- | ● foo.service - The foo service that does nothing useful | + | |
- | | + | |
- | Drop-In: / | + | |
- | | + | |
- | | + | |
- | Main PID: 652 (sha1sum) | + | |
- | | + | |
- | | + | |
- | + | ||
- | Jun 15 13:50:08 centos7.fenestros.loc systemd[1]: Started The foo service that does nothing useful. | + | |
- | Jun 15 13:50:08 centos7.fenestros.loc systemd[1]: Starting The foo service that does nothing useful... | + | |
- | [root@centos7 ~]# systemctl restart bar.service | + | |
- | [root@centos7 ~]# systemctl status bar.service | + | |
- | ● bar.service - The bar service that does nothing useful | + | |
- | | + | |
- | Drop-In: / | + | |
- | | + | |
- | | + | |
- | Main PID: 810 (md5sum) | + | |
- | | + | |
- | | + | |
- | + | ||
- | Jun 15 13:50:38 centos7.fenestros.loc systemd[1]: Started The bar service that does nothing useful. | + | |
- | Jun 15 13:50:38 centos7.fenestros.loc systemd[1]: Starting The bar service that does nothing useful... | + | |
- | </ | + | |
- | + | ||
- | Utilisez ps pour voir le pourcentage du CPU utilisé par les deux services : | + | |
- | + | ||
- | < | + | |
- | [root@centos7 ~]# ps -p 652,810 -o pid, | + | |
- | PID COMMAND | + | |
- | 652 sha1sum | + | |
- | 810 md5sum | + | |
- | </ | + | |
- | + | ||
- | ----- | + | |
- | < | + | |
- | <div align=" | + | |
- | Copyright © 2019 Hugh Norris. | + | |
- | </ | + |