Professional Documents
Culture Documents
Plan de la formation
1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. Prsentation du Systme Linux Systme de fichier (organisation et administration) Technologie LVM Technologie RAID Processus dinit et darrt Gestion des processus Installation Gestion des utilisateurs et des groupes sauvegarde et restitution Gestion des paquetages Planification des tches Gestion des log
Architecture du noyau
Groupe 0
Cylindre 0
Groupe 1 Groupe n
Cylindre 1
Cylindre n
boot bloc est rserv pour contenir le programme damorage utilis au dmarrage du systme. Le super bloc dcrit ltat du systme de fichiers, le nombre de fichiers quil peut stocker, les endroits (blocs libres) o trouver de lespace libre sur le systme de fichiers, la taille des blocs et dautres informations. Liste des i-nuds : contient la dfinition des fichiers. linod 2 reprsente le sommet de larborescence contenu dans le disque. Blocs de donnes: contiennent les donnes des fichiers et les blocs libres. Un bloc de donnes allou peut appartenir un et un seul fichier du systme de fichiers.
Un rpertoire est un fichier dont les donnes sont une suite dlments qui comprennent chacun un numro di-noeud et le nom dun fichier contenu dans ce rpertoire
Les rpertoires
donnent au systme de fichiers sa structure arborescente et jouent un rle important dans la conversion dun nom de fichier en numro di-noeud. Un rpertoire est un fichier dont les donnes sont une suite dlments qui comprennent chacun un numro di-noeud et le nom dun fichier contenu dans ce rpertoire UNIX Systme V restreint les noms des composants 14 caractres ; le numro di-noeud tant contenu dans deux octets, la taille dun lment dun rpertoire est de 16 octets.
Exemple
Les fichiers conservent lensemble de leurs blocs suivant deux mthodes la liste chane (Fat MSDOS) la table dindex (Linux) La taille maximale thorique dun fichier dcrit par un i-noeud est de (10x1k) + (256x1k) + (256^2x1k) + (256^3x1k) > 16 Go Comme le champ taille du fichier dans un i-noeud est cod sur 32 bits,la taille maximale effective pour un fichier est de 4 Go (232).
XX -> la taille du disque, L -> un bloc libre et BE -> un bloc endommag. Le fichier commenant au bloc 6, sera constitu des blocs : 6 - 8 - 4 - 2.
Ext3 devient le standard prconis par Redhat, Mandrake, etc La conversion de ext2 en ext3 est assure par la commande tune2fs j /dev/hda3 (hda3 contient une partition ext3) Les commandes dadministration du systme de fichier
mkfs :cration dun systme de fichier (vfat, nfs,.) mke2fs : cration du SF ext2 (formatage) e2fsck : vrification et correction tune2fs : rglage, configuration dumpe2fs : affiche des information sur le systme de fichier
Objectifs
Problmatique
Partition statique :
Une fois formate, on ne peut pas modifier
Solutions tiers :
Partition magic Fips
Concept 1
Concept 2
Un disque virtuel peut tre dispers sur plusieurs disques physiques, tout comme les partitions virtuelles. Un volume physique (PV) correspond un disque ou une partition. (PV=PE) 65535 blocs physiques (PE) maximum Un volume logique(LV) correspondant une partition il est compos dun ensemble de LE Mapping entre Les LEs du LV et les PEs du PV Un groupe de volume (VG) est constitu par un ensemble de LV. Cest lquivalent dun disque
10
Concept 3
Striping Concatnation
11
Les commandes LV lvchange lvcreate lvdisplay lvextend lvreduce lvremove lvrename lvscan changes attributes creates a new LV shows LV attributes extends LV in size (online!) reduces LV in size (online!) removes an inactive LV renames an inactive LV scans periphery for LVs
Cration dun vg
[root@lvm]# pvcreate /dev/hdb1
pvcreate -- physical volume "/dev/hdb1" successfully created
Utiliser loption s ou --physicalextentsize pour prciser la taille du PE, le minimum est de 1 kb Utiliser loption l ou --maxlogicalvolumes pour fixer le nombre max. de LV
12
Exemples 3
Crer un nouveau pv sur hdb2 [root@core lvm]# pvcreate /dev/hdb2 Etendre vg2 pour contenir hdb2 [root@lvm]# vgextend vg2 /dev/hdb2 dplacer tous les blocs physiques de la partition /dev/hdb2 vers les autres volumes phyisques du groupe de volumes [root@lvm]# pvmove /dev/hdb1 Dtacher /dev/hdb1 de vg2 [root@lvm]# vgreduce vg2 /dev/hdb1 Etendre un volume logique
[root@lvm]# lvextend -L +100M /dev/vg2/exemple
13
Snapshots
Permettent d'effectuer une sauvegarde dun volume logique du mme groupe de volumes Image statique d'un volume logique un instant prcis Toute modification du lv source sera enregistre dans le snapshot
Mais sans les donnes
Mtrique logiciel 300 heures pour la conception et le developpement 24500 LOC (lines of code) incluant les sources, headers, commentaires, les pages de manuel , scripts, makefiles, README, ... peut prs 21000 LOC sources et headers module/driver source+headers 2600 LOC 150 library functions dans 83 modules 28 utilitaires
14
RAID
level
RAID permet de grer un ensemble de disque (array) en une seule entit visible par le systme (un disque logique) Il existe 6 niveaux officiels de RAID.
15
RAID Level 0
Mode stripping cration d une grappe de disques vue comme un seul Ecriture en parallle sur les disques : augmente la bande passante Points forts : vitesse maximale volume maximal Point faible pas de redondance : en cas de panne d un disque, toutes les donnes de la grappe sont perdues.
RAID Level 1
Mode Mirroir l information est duplique sur un deuxime disque redondant. Points forts : la plus rapide avec tolrance de panne et plus petite rduction de performance lors de dfaillance de disque seuls deux disques suffisent taux de duplication maximum Hot-Swap & Hot-Spare possible Point faible espace disque divis par deux. accs en criture non acclrs
16
RAID Level 3 et 4
Lecture haute performance stripping pour rpartir les donnes sur plusieurs disques utilise un disque de parit RAID3 (Bloc fixe). RAID4 (Bloc variable) Points forts : Hot-Swap & Hot-Spare possibles Points faibles le disque de parit devient rapidement un goulot d tranglement.
Les informations crire sont rparties sur les disques. Un disque est rserv aux calculs de parits.
parit
RAID Level 5
parit parit
Les informations crire sont rparties sur les disques. Les calculs de parits sont galement rpartis sur lensemble des disques.
Le plus populaire ressemble RAID4, mais rpartit le contrle de parit sur tous les disques Points forts : performant pour la lecture de larges fichiers et correct pour la lecture de petits fichiers en mode criture Points faibles reconstruction pnalisante. rapport criture/lecture doit tre faible
17
Quel niveau de redondance ? nul ? On choisi RAID0 faible ? RAID3/5 haut ? RAID1+0 Hot-Swap & Hot-Spare ? RAID1/3/5 budget ?
18
RAID logiciel Support des niveaux RAID 0,1,4,5 ainsi que le mode linaire et Multipath Utilisation automatique dun disque de spare (1,4 et 5). En cas de panne un disque en attente peut tre immdiatement intgr En cas de perte dun disque, les messages derreurs sont automatiquement remonts syslog Possibilit dajouter et de supprimer un disque chaud Le RAID dcoupe Les donnes en segments virtuels contigu : chunck size (64 Ko par dfaut) Un stripe correspond aux segments de donnes prsents sur le mme niveau des disques RAID Dans le cas du RAID 5, plusieurs algorithmes sont envisageable :
leftsymmetric, left-asymmetric, right-symmetric, right-assymetric
RAID logiciel
Utilitaire MDADM (Multiple Devices Admin) permet limplmentation du RAID
19
NFS (Network File System) Le protocole NFS (Network file system) ft mis en place par Sun Microsystems en 1984
NFS v1, , NFS v4 (2000)
Il permet de monter et de dmonter des volumes en rseaux NFS utilise la mthode de connexion RPC (Remote procedure call) en TCP/IP Deux serveur disponibles rpcbind et portmap qui coute sur le port 111 Le fichier de configuration du NFS est /etc/exports dont la syntaxe est : rpertoire_Partage host1(options) hostN(options) Exemple : /cours *(ro)
NFS (Procdures)
Proc 0: NULL - Do nothing Proc 1: GETATTR - Get file attributes Proc 2: SETATTR - Set file attributes Proc 3: LOOKUP - Lookup filename Proc 4: ACCESS - Check Access Permission Proc 5: READLINK - Read from symbolic link Proc 6: READ - Read From file Proc 7: WRITE - Write to file Proc 8: CREATE - Create a file Proc 9: MKDIR - Create a directory Proc 10: SYMLINK - Create a symbolic link
Proc 11: MKNOD - Create a special device Proc 12: REMOVE - Remove a File Proc 13: RMDIR - Remove a Directory Proc 14: RENAME - Rename a File or Directory Proc 15: LINK - Create Link to an object Proc 16: READDIR - Read From Directory Proc 17: READDIRPLUS - Extended read from directory Proc 18: FSSTAT - Get dynamic file system information Proc 19: FSINFO - Get static file system Information Proc 20: PATHCONF - Retrieve POSIX information Proc 21: COMMIT - Commit cached data on a server to stable storage
20
Options
Effet le client a les droits d'criture le client a seulement les droits de lecture active le mode asyncrone active le mode syncrone (par dfaut) spcifie l'UID des utilisateurs anonymes specifie le GID des utilisateurs anonymes tous les utilisateurs (sauf root) rcuprent l'UID anonyme Les utilisateurs gardent leur UID (par dfaut) l'utilisateur root rcupre l'UID anonyme (par dfaut)
La commande exportfs exportfs permet de dsactiver, activer, modifier et ajouter des partages.
option effet -a -u -ua -o exporte tous les partages contenus dans /etc/exports dsactive un partage dsactive tous les partages contenus dans /etc/exports permet de spcifier des options
21
Client NFS
nosuid interdit l'xcution de programmes suid hard soft En cas d'chec, recommence l'opration jusqu' sa russite (par dfaut) abandonne l'opration en cas d'chec
22
Rpertoire
/dev /etc /lib /mnt /opt /proc /sbin /usr /var
Description
la base des rpertoires utilisateurs le noyau et les fichiers de dmarrage (utilis par lilo) Rpertoire personnel du super utilisateur Les fichiers temporaires
Rpertoire /dev
/dev/hd* /dev/sd* /dev/fd* /dev/tty* /dev/lp* /dev/ttys* /dev/mem /dev/st* /dev/null
Description
Partitions et disques IDE : Partitions et disques IDE : hd hd + lettre + chiffre Idem pour disques scsi /dev/scd* pour cdrom scsi Lecteurs de disquettes : fd + chiffre + lettre + nombre (fd0H1440) Terminaux virtuels de 0 63 Liaison // ports imprimantes lp0, lp1, lp2 Ports sries Mmoire physique /dev/kmem mmoire du noyau Lecteur de bande magntique Vide (corbeille)
23
usr
Description
la hirarchie des fichiers Xwindow (version 11 rvision 6) Les commandes utilisateurs les commandes dadministration non ncessaires au dmarrage Donnes indpendante dune architecture de machine (doc,man,..) Code source du systme et des applications (noyau /usr/src/linux) La hirarchie propre linstallation normalement vide juste aprs installation la configuration des commandes utilisateurs
Rpertoire
./spool ./log ./run ./www ./mail
var
Description
Files dattentes & tampons (impression, mail, Fichiers de traces Donnes concernant les processus en cours dexcution( pid) Serveur web par dfaut appache Fichiers mail utilisateurs
24
GRUB(GRand Unified Bootloader) est le chargeur de dmarrage par dfaut GRUB est le chargeur de dmarrage le plus rcent qui a l'avantage de pouvoir lire les partitions ext2 et ext3 et de charger son fichier de configuration /boot/grub/grub.conf au moment du dmarrage Avec LILO, le chargeur de dmarrage utilise des informations sur le MBR pour dterminer les options de dmarrage dont dispose l'utilisateur Vous devez excuter la commande /sbin/lilo -v pour crire les informations appropries sur le MBR
25
26
27
Le processus init
Le programme /sbin/init (aussi appel init) coordonne le reste du processus de dmarrage et configure l'environnement de l'utilisateur La commande init excute le script /etc/rc.d/rc.sysinit initialise le path, dmarre swap, vrifie les systmes de fichiers, dtection du matriel et chargement des pilotes des priphriques La commande init excute ensuite le script /etc/inittab, qui dcrit comment le systme doit tre configur dans chaque niveau d'excution SysV init 6 niveaux sont dcrits au dbut du fichier /etc/inittab 0 : provoque un arrt (shutdown) de la machine 1 : pour rentrer en mode mono-utilisateur, rserv root 2 : mode multi-utilisateurs, sans NFS 3 : mode multi-utilisateurs avec tous les services rseaux 4 : non utilis 5 : dmarrage du serveur graphique X11 en plus 6 : redmarrage de la machine (la commande reboot lance le niveau 6).
28
Le processus init
On peut toujours spcifier un niveau de dmarrage par dfaut En dmarrant au niveau d'excution 5, le programme init examine le rpertoire /etc/rc.d/rc5.d/ afin de dterminer les processus arrter et dmarrer Les scripts contenu dans un rpertoire rcn.d sont de la forme : SXXyyyyy : correspond aux processus dmarrer dans ce niveau KXXyyyyy : correspond des processus arrts ce niveau Une des dernires choses que le programme init excute est le fichier /etc/rc.d/rc.local Ce dernier est utilis pour les scripts personnaliss
Le fichier /etc/inittab
Ce fichier contient des lignes respectant le format suivant : code:niveau:action:commande Le champ code contient une squence de un quatre caractres (deux pour compatibilit) unique pour identifier la ligne dans le fichier. Le champ niveau (0-6) donne le niveau dexcution pour lequel cette ligne doit tre prise en compte. respawn relance la commande lorsquelle se termine wait attend la fin de la commande avant de continuer once la commande est excute une fois boot la commande est excute au dmarrage du systme (le champ niveau est ignor) bootwait comme ci-dessus avec attente off ne rien faire initdefault permet de spcifier le niveau dexcution par dfaut sysinit la commande est excute au dmarrage avant celles des directives boot et bootwait Ctrlaltdel la commande est excute lorsque lutilisateur tape les trois caractres <CTRL>-<ALT>-<SUPPR> sur le clavier powerfail la commande est excute lorsque le processus init reoit le signal SIGPWR (dfaut dalimentation)
29
Arrt du systme
Mode single Le mode Single User est un mode particulier de fonctionnement du systme correspondant au niveau dexcution 1 (runlevel 1) dans lequel seuls les services minimum sont lancs Dans ce runlevel, un shell root est lanc automatiquement au dmarrage, et il nest possible de travailler que depuis la console Pour dmarrer en mode Single User Lilo : linux single Si vous utilisez GRUB comme chargeur de dmarrage, suivez les tapes suivantes: l'cran de chargeur de dmarrage graphique GRUB, slectionnez le label de dmarrage Red Hat Linux et appuyez sur [e] pour l'diter. l'aide de la flche bas, aller jusqu' la ligne de noyau et appuyez sur [e] pour l'diter. l'invite, tapez le numro du niveau d'excution souhait (de 1 5) ou les mots single ou emergency et appuyez sur [Entre]. Appuyez sur la touche [b] pour dmarrer le systme. Arrt du systme les deux options les plus courantes sont les suivantes: /sbin/shutdown-h now shutdown -r [<nb mn> | now] ou reboot ou ctrl-alt-del
entraner
un
30
31
Architecture de yum
32
MetaData yum
repomd.xml
c'est le fichier qui dcrit les autres fichiers de mtadonnes. Il contient l'horodatage et le check-sum des autres fichiers.
primary.xml.gz
stocke des informations sur les mtadonnes
name, date, version, release, architecture file size, file location, description, summary, format, checksums header dpendances, provides, conflits, obsoltes, suggestions, recommendations
filelists.xml.gz
Il stocke le fichier complet et les listes de rpertoires pour les paquetages. Le paquetage est identifi par: nom, date, version, la distribution, l'architecture et le paquet de contrle id.
Commandes yum
Principales commandes yum update yum list <nom du paquet> yum list <pseudo nom[* ?]> yum install <nom du paquet> yum remove <nom du paquet> yum --exclude=<nom du paquet> update yum --disablerepo=<nom du dpt> update Le cas du noyau (kernel) est gr de faon particulire. yum nefface jamais une version du noyau sans que vous le demandiez explicitement. Lors dune nouvelle version du noyau, il installera celle-ci et modifiera automatiquement votre fichier /boot/grub/grub.conf Mise niveau dune version antrieure yum clean all rpm Uhv ftp://download.fedora.redhat.com/pub/fedora/linux/releases/<Releas eNumber>/Fedora/<Arch>/os/Packagfedora-release-*.noarch.rpm yum upgrade
33
Groupes : /etc/group
Groupe root bin dmon sys GID 0 1 2 3 Membres root root, bin, dmon root, bin, dmon root, bin, adm
34
gestion des comptes utilisateur gestion des groupes vrification des fichiers changer le mot de passe d'un utilisateur utilitaires divers
Pour crer l'utilisateur stagex : useradd [option] stagex Pour lui attribuer le mot de passe : passwd stagex Modifier le compte de l'utilisateur stagex : usermod [options] stagex usermod -G stagiaire,prof stagex ajoute stagex dans les 2 groupes stagiaire et profs Supprimer le compte d'un utilisateur (non connect), userdel [-r] totox L'option -r supprime aussi le rp. personnel et les fichiers de l'utilisateur
-u UID -g groupe primaire -m -s shell -c commentaire -d rp personnel -e date expiration -k rep skel par dfaut dans le rpertoire /home fixe la date d'expiration du compte (format MM/JJ/AA) recopie le contenu de rep-skel dans le rp. personnel, par dfaut /etc/skel Cration du groupe (Nom ou GID) Cration Rpertoire personnel par dfaut, attribution du shell par dfaut bash
35
La commande chage
Options
-m jours -M jours -d jours -I jours -E date -W jours
Signification
Prcise la priode, en jours, pendant laquelle l'utilisateur doit changer son mot de passe . Prcise la dure maximale, en jours, pendant laquelle le mot de passe est valide. Prcise le nombre de jours couls entre le 1er janvier 1970 et le jour o le mot de passe a t chang. Spcifie le nombre de jours inactifs aprs l'expiration du mot de passe, avant que le compte ne soit verrouill. Spcifie la date laquelle le compte sera verrouill, selon le format AAAA-MM-JJ Spcifie le nombre de jours devant s'couler avant la date d'expiration du mot de passe
36
Les ACLs
37
38
Restriction daccs en su
usermod -G wheel <username> /etc/pam.d/su et supprimez le commentaire [#] prsent dans la ligne suivante : auth required /lib/security/$ISA/pam_wheel.so use_uid
La commandes sudo
Ajouter lutilisateur autoris /etc/sudoers utilisateur ALL=(ALL) ALL
Sauvegarde et Restauration
Possibilit aprs une modification/destruction dun ou plusieurs fichiers de restaurer une version prcdente (rcente ou non) de ces fichiers. Ladministrateur du systme doit mettre en place une stratgie de sauvegarde automatique Linux propose en standard plusieurs commandes de gestion de sauvegarde dump et restore cpio tar dd
39
Sauvegarde et Restauration
dump La commande dump fonctionne avec une gestion de niveaux de sauvegarde. Le niveau 0 effectue une sauvegarde totale alors que les niveaux 1 9 ne sauvegardent que les fichiers modifis depuis la dernire sauvegarde dun niveau infrieur. dump [options ] fichier :
dump -0f /dev/st0 / dump -0ua -f /tmp/backup.home.dump /home
Options de dump 0 9 niveaux de sauvegarde a fichier nom du fichier darchive f fichier nom du fichier destination
40
Sauvegarde cpio
cpio : Permet de crer des archives vers un lecteur de bandes, une disquette ou un autre rpertoire du systme local La commande cpio permet de copier des fichiers dans un fichier archive. Elle fonctionne selon trois modes : [-o] en sortie, elle copie, sur la sortie standard, les fichiers dont les noms sont donns sur lentre standard ( la commande find) ls *.wav | cpio ov > archive [-i] en entre, elle lit un fichier archive sur lentre standard et restitue les fichiers en fonction des options donnes cpio i < archive [-p] en copie, elle copie les fichiers dun rpertoire vers un autre sans passer par un fichier archive find . type d user toto print|cpio pdv totoarchive Loption d cre le rpertoire archive sil nexiste pas
41
Sauvegarde tar
La commande tar (=Type ARchive) est une ancienne commande Unix qui permet aisment d'archiver (identique cpio) Certaines applications et des mises jour ne sont livres que sous forme soit binaire, soit de source compiler, dans ce format Les 3 premires -c -x -t spcifient les 3 types d'actions de la commande -x extraire le contenu d'une archive -c crer une nouvelle archive -t afficher seulement la liste du contenu de l'archive, sans l'extraire -f fichier indiquer le nom du fichier archive -v mode bavard -z compresser ou dcompresser en faisant appel l'utilitaire gzip -y compresser ou dcompresser avec l'utilitaire bgzip2
tar -cvzf sauve.toto.tar.gz /home/toto
Sauvegarde tar
Exemple de sauvegarde du rpertoire /usr/src dans une bande magntique tar --create -file /dev/st0 /usr/src Si la sauvegarde ne tient pas sur un seul support on peut utiliser loption M tar -cMf /dev/fd0H1440 /usr/src A la fin de la sauvegarde il faut vrifier que cest OK utiliser loption compare(-d) tar --compare -verbose -f /dev/ftape Pour faire des sauvegardes incrmentes sur le mme priphrique utiliser loption newer (-N) tar -create -newer 26 jan 2004 -file /dev/ftape /usr/src verbose Lextraction peut se faire avec loption extract (-x) tar -xvf /dev/fd0 On peut extraire quune partie de larchive tar xpvf /dev/fd0 usr/src/linux-1.2.10-includes/include/linux/hdreg.h
42
<minute> <heure> <jour du mois> <mois> <jour de la semaine> <commande> (avec un espace entre chacun) minute : de 0 59 heure : de 0 23 jour du mois de : 1 31 mois de : 1 12 jour de la semaine : de 0 6, 0 tant le dimanche et ainsi de suite. commande : peut comporter plusieurs commandes. Exemples : 0 1 1 * * * commande veut dire que vous n'excutez que le premier jour du mois
1 heure.
0 1 * * * mon commande veut dire une fois par semaine le lundi 1 heure. 0 1 1,15 * * * commande veut dire tous les 1 et 15 du mois 1 heure. 0 1 1-15 * * * commande veut dire tous les 15 premiers jours du mois 1 heure. 0 1 */5 * * * commande veut dire tous les 5 jours 1 heure. */3 * * * * *commande veut dire toutes les trois minutes
43
44
Syslogd configuration
La configuration de syslog se fait dans le fichier /etc/syslog.conf. Dans le fichier syslog.conf vous devez donc indiquer sur une ligne : le service, le niveau de gravit et le fichier vers lequel diriger les logs (cela peut tre la console). La liste des services auth ou security Messages de scurit et d'authentification. Authpriv La mme chose mais logs plus privs Cron Messages de crontab et de at Daemon Messages systmes gnrs par le daemon ftp Messages du serveur ftp Kern Messages du noyau Lpr Messages du serveur d'impression Mail Messages du serveur de messagerie Syslog Messages de syslog lui-mme Exemple : kern.* /dev/console
Syslogd configuration
la liste de svrit, classe de la moins grave la plus grave 7 debug Messages de debogage 6 info Messages d'information 5 notice Messages un peu plus importants que les messages info 4 warn Messages d'avertissement 3 err Messages d'erreur 2 crit Situation critique 1 alert Situation critique ncessitant une intervention immdiate 0 panic Systme inutilisable Exemple : authpriv.* /var/log/secure Placer ici les messages que seul l'administrateur le droit de voir. authpriv donne les connexions infructueuses, les connexions avec la commande su. *.info;mail.none;authpriv.none /var/log/messages Log tous les messages dans le fichier messages partir du niveau info Sauf les messages mail et authpriv
45
Logrotate
Il automatise la permutation, la compression, la suppression, et l'envoi des journaux. Chaque journal peut tre trait quotidiennement, hebdomadairement, mensuellement, ou quand il devient trop volumineux. logrotate est lanc comme un travail quotidien de cron Extrais du fichier de configuration
/var/log/messages {
rotate 5 weekly postrotate /sbin/killall -HUP syslogd endscript }
46