0% ont trouvé ce document utile (0 vote)
44 vues26 pages

Administration Système : Disques et Filesystems

Ce chapitre traite de la gestion des disques et du système de fichiers sous Linux. Il aborde les notions de partitionnement, de systèmes de fichiers, de montage des partitions et de l'espace d'échange.

Transféré par

firastech2
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd
0% ont trouvé ce document utile (0 vote)
44 vues26 pages

Administration Système : Disques et Filesystems

Ce chapitre traite de la gestion des disques et du système de fichiers sous Linux. Il aborde les notions de partitionnement, de systèmes de fichiers, de montage des partitions et de l'espace d'échange.

Transféré par

firastech2
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd

11/02/2024

Administration Système

chapitre 1: Rappel / Notions de Base ICE 3 2023/2024


1

Objectifs pédagogiques

Installer une distribution Linux et effectuer les tâches post-installation

Administrer les comptes et les groupes utilisateurs

Gérer les disques et le système de fichiers

Gérer le processus de démarrage et d'arrêt

Analyser l'activité du système

Installer des logiciels depuis la distribution ou installer depuis les sources

Configurer le client réseau

Administrer à distance.

chapitre 1: Rappel / Notions de Base 2

2
11/02/2024

Administration Système

Chapitre 3:
Gérer les disques et le système de fichiers

chapitre 3: Gérer les disques et le système de fichiers


ICE 3 2023/2024
3

• Configuration du Matériel
• Les filesystems sous Linux
• Création de partition
• Boot process, runlevels, systemd

4
11/02/2024

Configuration du Matériel

Représentation des disques


IDE
Les disques reliés à des contrôleurs IDE (appelés aussi PATA, Parallel Ata, ou ATAPI) se nomment hdX :
- hda : IDE0, Master
- hdb : IDE0, Slave
- hdc : IDE1, Master
- hdd : IDE1, Slave
etc.
SCSI, SATA, USB, FIREWIRE, etc.
Les disques reliés à des contrôleurs SCSI, SCA, SAS, FiberChannel, USB, Firewire (et probablement d’autres interfaces exotiques comme les lecteurs ZIP sur port parallèle) se nomment sdX.
L’énumération des disques reprend l’ordre de détection des cartes SCSI et des adaptateurs (hosts) associés, puis l’ajout et la suppression manuelle via hotplug des autres.
-sda : premier disque SCSI
-sdb : deuxième disque SCSI
-sdc : troisième disque SCSI
etc.

Visualiser un périphérique

lsusb : permet de lister les périphériques usb (souris, clé, vidéo-projecteur...)

lspci : permet de lister les périphériques internes de type contrôleur (carte graphique, son, réseau...)

On pourra avoir plus de détails avec la commande lshw, exécutée en mode sudo.

Les filesystems sous Linux


Types de Filesystems

 minix
– fs original
– simple, non utilisé aujourd’hui
– limité (64 Mb)
 ext2
– développé en 1993
– limité (2 Tb)
 ext3
– ext2 journalisé

6
11/02/2024

Les filesystems sous Linux


Types de Filesystems

 ext4
– en cours d'intégration au kernel
 jfs/xfs
– journalisés
– respectivement IBM/SGI
 ReiserFS/Reiser4
– journalisé

Les filesystems sous Linux


Types de Filesystems

 iso9660/udf
– respectivement CD Ro ms /D V D Roms
 fat/vfat/ntfs
– fat/vfat bien gérés
– support ntfs plus délicat (ro)
 unionfs
– aggrégat de filesystems différents
– mélange possible entre ro/rw
 nfs/smbfs/coda
– filesystems réseau
8
11/02/2024

Les filesystems sous Linux


Partitions
 les disques sont découpés en partitions primaires (max: 4) et étendues

les partitions sont représentées par desnuméros à la fin du device représentant le


disque

 les devices dépendent de l'interface du disque et position (e.g. /dev/hda pour le


1er disque IDE,

 /dev/hdb pour le 2 ème , etc...)

Les filesystems sous Linux


Partitions

10
11/02/2024

Les filesystems sous Linux


Devices et points de montage
 Les disques et les partitions sont des devices
 Une partition contient la «racine» du fs

 Les autres partitions sont «m on tées» sur le fs

11

Création de partition

sfdisk : lign e de co mm a n de (C LI)


fdisk, cfdisk : m en u s tex te (cu rs es )
gparted : in terfa ce gra ph iqu e (gn o me)

12
11/02/2024

Les filesystems sous Linux


Création de filesystems
mkfs.<put_you_favorite_filesystem_here> <device>

 minix : fs linux historique, utilisé pour les disquettes


 cramfs : fs pour embarqué et initrd
 ext{ 2 ,3 } : filesystem «standard» linux (ext3 journalisé)
 reiser4/jfs/xfs : reiserFS, IBM, SGI (jounalisés)
 msdos/vfat : dos (fat) & windows (fat-32)

13

Les filesystems sous Linux


ReCréation de filesystems: commande dd

La commande dd permet de copier tout ou partie d'un disque par blocs d'octets,
indépendamment de la structure du contenu du disque en fichiers et en répertoires.
La structure de la commande a la forme générale suivante :

dd if=<source> of=<cible> bs=<taille des blocs> skip= seek= conv=<conversion>

Exemple:
dd if=/chemin/vers/[Link] of=/dev/sdX bs=4M status=progress conv=fdatasync

Exemple2:Réaliser l'image ISO d'un CD


dd if=/dev/hdc of=/home/${USER}/[Link] bs=2048 conv=notrunc

14
11/02/2024

Les filesystems sous Linux


Montage de partitions
 {u,} mount :{dé,} montage des partitions sur le filesystem
mount t <fstype> <device> <mountpoint>
umount <device|mountpoint>

user@host:~/temp$ mkdir p /mnt/mountpoint/

user@host:~/temp$ sudo mount -t ext2 -o loop [Link] /mnt/mountpoint/


user@host:~/temp$ df /mnt/mountpoint/
Sys. de fich. 1Kblocs Occupé Disponible Capacité Monté sur
/home/leucos/temp/[Link] 9911 92 9307 1% /mnt/mountpoint
user@host:~/temp$ sudo umount /mnt/mountpoint/

15

Les filesystems sous Linux


Partitions : /etc/fstab
 Les partitions à monter au boot sont décrites dans /etc/fstab

 Pour chaque filesystem à monter, /etc/fstab contient :


la partition à monter (/dev/hda1)
le moint de montage (/var)
le type de filesystem (reiserfs, ext3, ...)
les options de montage (lecteur seule, propriétaire, etc...)
un – booléèn à 1 si le fs doit être sauvegardé par dump
un numéro d'ordre pour la vérification de fs au boot

16
11/02/2024

Les filesystems sous Linux


Partitions : /etc/fstab
• Les partitions à monter sont désignées par :

– un device (/dev/hda1)
un label (ROOTFS), créé par e2label ou tune2fs L

– un UUID, identifiant unique (ed2d8d56-5c08-4bd4-977e-673f7a1966b2),


créé par tune2fs U

• Les UUID et labels permettent une indépendance par rapport au device


• findfs permet de retrouver un fs par label ou UUID

17

Les filesystems sous Linux


Filesystems spéciaux: le swap

L ' e s p ac e de swap pe rme t de décharger temporaireme nt la mémoire physique(RAM)

 La taille empirique re com m andée est 2 * RAM


L o r s q u ' u n p r o c e s s n'utilise p a s u n e z o n e d e s a m é m o i r e («page»), le kernel peut
décider de la mettre dans le swap («swap out»)

Lorsque la mém oire physique se fait rare, les z ones n écessaires aux process :

– doivent être stockées sur le swap («swap out»)


– p u i s relues d e pu i s le s w a p lor sque le p r o c e s s s ' e x é c ut e («swap in»)

18
11/02/2024

Les filesystems sous Linux


Inodes & fichiers
 Dans un fs unix, c h aq u e fichier est repré senté par un inode

 Le fs contient une table d'associat ion (répertoire)

" n o m de fichier" ⇔ “inode”


 L'in ode contient toutes informations n é c e s s a i r e s conc ernant le fichier :

– n u m é r o d 'i n o d e
– permissions, propriétaire
– dates (création, accès, modification)
– Nombre de liens
– références vers les blocs de d o n n é e s

19

Les filesystems sous Linux


Inodes & fichiers
Inode

Directory table

20
11/02/2024

Les filesystems sous Linux


LVM : Logical Volume Management
 Fournit un abstraction du matériel de stockage :

– o n travaille sur de s v o l um es logiques et no n plus sur d e s partitions


– on travaille sur des volume groups au lieu de disques
– on peut ajouter des partitions dans des volumes groups
– on peut agrandir les volumes logiques si nécessaire

 LVM permet au final de construire des système de fichiers sur des devices
ayant des tailles modulables

 Le système de fichier doit supporter le redimensionnement pour en profiter !

21

Les filesystems sous Linux


LVM : Logical Volume Management

22
11/02/2024

Les filesystems sous Linux


Redundant Arrays of Inexpensive Disks: RAID
Le RAID est un ensemble de techniques de virtualisation du stockage permettant de répartir des données sur plusieurs disques durs afin
d'améliorer soit les performances, soit la sécurité ou la tolérance aux pannes de l'ensemble du ou des systèmes.

23

Les filesystems sous Linux


UEFI

 standard qui a été créé vers 2006,pour remplacer le BIOS.


 firmware (ou micrologiciels)
 Limite du MBR
 lancer des applications stockées dans une partition du disque dur EFI SYSTEM
PARTITION.

 Le partitionnement de disque en EFI


UEFI,utilise une partition GPTà la place du MBR (bios) pour démarrer l’OS

24
11/02/2024

Les filesystems sous Linux


Partition GPT

MBR protecteur (début du disque dur)


GPT primaire :entête
GPT primaire :tableau de partitions
Partitions :début de la partition 1
...
Partitions :fin de la partition n
GPT secondaire :tableau de partitions
GPT secondaire :entête (fin du disque dur)

25

26
11/02/2024

Boot process
Les 5 étapes
(1)B o o t hardware
éxécution du bios paramètres
dans la NVRAM

( 2 ) C h a r g e u r d'O S
exécuté depu is le MBR par le B I O S
limité à 512 bytes (EFI maintenant)

(3)Boot kernel montage


du root fs (/) chargement des
drivers exécution d'init

(4) init
passage au runlevel demandé
exécution séquencée des scripts console
(5) Scripts S y sV
démarrage des services

27

Boot process
Bootloaders: lilo, grub & co

 Le travail du bootloader : charger le kernel en mémoire

 Il doit donc :
– savoir ou le trouver
– savoir le charger
Après des années de domination de lilo, Grub à pris le dess us

 Versions s p é c i f i q u e s pour les fir mw ar es EFI (i ntel, mac ), ou des


a r c h i t e c t u r e s do nnées ( sparc , ...)

 D 'a u t r e s bootloaders existent

grub2,syslinux,loadlin,silo,milo,emilo, slilo, ...

28
11/02/2024

Boot process
Bootloaders: lilo, grub & co
LILO ou LInux LOader est un chargeur d'amorçage libre. Il permet de choisir la partition à amorcer lors du
démarrage de l'ordinateur.

Il permet le chargement de divers systèmes d'exploitation, mais s'installe depuis Linux. D'ailleurs, il a été
initialement conçu pour le chargement de Linux, d'où son nom. Les versions récentes affichent un menu
semi-graphique à l'écran, voire une image en 640x480 16 couleurs ; si l'utilisateur ne touche pas le clavier
pendant un temps déterminé, généralement 10 secondes, le système d'exploitation configuré par défaut
dans LILO sera lancé.

29

Boot process
Bootloaders: lilo, grub & co
 G R U B fonctionne en 3 temps:

– 1er étage booté s ur le M BR


2 èm e étage démarre a u de la d u M BR étage

3 èm e chargé depuis /boot/grub

GRUB sait donc (grâce à 2), lire un fichier sur un filesystem


ext3/reiserfs/xfs/..

Il lit aussi sa configuration directement sur le filesystem : pa besoin de


«réinstaller» GRUB à chaque changement
 Le 3 ème étage trouve le kernel et lui passe la main

30
11/02/2024

Boot process
Bootloaders: lilo, grub & co (Configuration Grub2)
 Les fichiers de grub2
 /etc/default/grub - paramètres du menu de GRUB
 /etc/grub.d/ - le répertoire contenant les scripts de création du menu GRUB 2,

personnaliser le menu de démarrage,


 /boot/grub2/[Link] - le fichier de configuration final de GRUB 2, non modifiable.
(/boot/grub/[Link] sous Debian). Ce
dernier fichier est généré automatiquement par le programme grub2-mkconfig à
partir des scripts /etc/default/grubet et
/etc/grub.d (debian update-grub)

 /etc/default/grub peut être édités au boot si besoin


 démar rage en single user
 changement du root filesystem
 la commande grubse présente c o mme un shell.

Exemple: Les paramètres peuvent être affichés à l’aide de la commande set.

grub>set

31

Kernel
Boot kernel

 Le kernel se décompresse lui même en RAM, et s'exécute,


passa● nt par différentes p ha se s :
– initialisation des sous-systèmes (mémoire, ACPI, CPU, . .)
– initialisation des drivers (IDE, SCSI,SATA . .)
– chargement ramdisk
– chargement modules du ramdisk
– initialisation des (nouveaux) devices
– montage des pseudo-filesystems (/proc, /sys)
– montage de la (vraie) partition /
– exécution d'init

32
11/02/2024

Kernel
versions kernel
Ve r s i o n n e me n t du n oyau

#uname –r & #uname –a


permettent de connaître votre version du noyau

33

Kernel
Kernel modules

● Les modules sont des « morceaux » de noyau

● Ils peuvent être chargés/déchargés pendant l'execution du kernel

● Ils sont compilés à partir de sources du kernel... ...et peuvent


aussi provenir de fournisseurs commerciaux (« drivers »)
● Un dictionnaire ([Link]) permet de savoir quel module est
nécessaire au fonctionnement de tel autre module
● On les trouve dans /lib/modules/`uname r`/

34
11/02/2024

Kernel
Kernel modules

...interêt ?
● kernel plus petit (barre des 1,44Mo !)
● Empreinte mémoire optimisée
● D é b o g u a g e plus facile
● Modules binaires provenant de tiers
● Plusieurs version peuvent «cohabiter»
● Attention à la sécurité !

35

Kernel
Kernel modules
Insertion d'un module dans le kernel
insmod /chemin/complet/vers/module
modprobe module
Retrait d' un module du kernel
rmmod module

36
11/02/2024

Runlevels
init
init est le premie r et le s e ul p r o c e s s u s ex écuté directementpar le

kernel (PID 1)


il est le père de tous les autres du point de vue d'init, le s y s t è m e est
d an s des états discrets : les runlevels


C haque runlevel définit un dém arrage spécifique du s y s t è m e

● les runlevels possibles sont [ 0-6sS]

● le comport ement d'init en fonction du runlevel est défini dans


/etc/inittab


init a donc pour vocation principale de mettre le s ys t è me en état de
marche

37

System V init
Startup scripts

38
11/02/2024

System V init
Démarrer un script à la main
Les applicationsqui doivent s'executer au boot installent un script dans
/etc/init.d

Il est ensuite possible de controller cette application grâce à ce script


D é m a r r e r l'application
/etc/init.d/application start

St o p p e r l'application
/etc/init.d/application stop

R e d é m a r r e r l'applications
/etc/init.d/application restart

Dema nder à l'application de r e c h a r g e r sa configuration


/etc/init.d/application reload

39

Systemd

• Systemd est un gestionnaire de services qui remplace Sys init depuis RedHat 7 :

 Il démarre comme premier processus lancé par le noyau


 Assure l’initialisation des services
 Gère les démons Linux : démarre, stoppe, désactive, active
 Il démarre les services en parallèle
 Il suit les services avec les groupes de contrôle (gestion des ressources)
 Gère la journalisation et peut transmettre les journaux à Syslog
 La configuration des noms d’hôtes, des montages de fs
 Gère les sessions et ressources des utilisateurs avec les cgroups
 Gère les machines virtuelles et conteneurs avec les cgroups et libvirt

40
11/02/2024

Systemd

41

Systemd

Listez toutes les unités de service du système.

Lister toutes les unités de socket, actives et inactives, sur le système.

Listez les états activés ou désactivés de toutes les unités de service.

Afficher les services qui ont échoué

42
11/02/2024

Systemd

43

Systemd

44
11/02/2024

Gestion des services avec systemctl

 Ce qui est manipulé s’appelle une unité : services (.service), points de


montage (.mount), périphériques (.device), sockets (.socket), etc.
 Commandes de base :
sysVinit systemd notes
service foo start systemctl start foo
service foo stop systemctl stop foo
service foo restart systemctl restart foo
service foo reload systemctl reload foo
service foo condrestart systemctl condrestart foo restart if already running
update-rc.d foo enable systemctl enable foo auto-start at next boot
update-rc.d foo disable systemctl disable foo disable auto-start
systemctl is-enabled foo

 saisie semi-automatique (apache2 ou [Link])


 Plusieurs services peuvent être spécifiés :
systemctl restart apache2 postgresql

45

Gestion des services avec systemctl

46
11/02/2024

Unités de service

 systemd est basé sur des unités (units) qui ont un nom et un type.
 nom :nom du fichier décrivant l’unité.
 types
• service : start/stop/restart/reload idem. /etc/init.d
• socket : de type UNIX , Internet, ou fichier ; chaque socket a un ser vice
correspondant
• mount : en plus du fichier /etc/fstab qui est utilisé directement
• swap : pour les partitions d’échange
• automount : un système de fichiers monté à la demande
• target : macro-unité regroupant plusieurs unités
[Link] , [Link]
• snapshot : État enregistré du gestionnaire systemd
• device : périphérique reconnu par le noyau. (udev)
• timer : activations à la sauce cron, en fonction de la date
• path : Un fichier ou un répertoire dans un système de fichiers

47

Systemd comparé à init

Runlevel Target lien vers


Runlevel 0 [Link] [Link]
Runlevel 1 [Link] [Link]
Runlevel 2 [Link] [Link]
Runlevel 3 [Link] [Link]
Runlevel 4 [Link] [Link]
Runlevel 5 [Link] [Link]
Runlevel 6 [Link] [Link]

systemctl get-default
systemctl se t- d efa ult multi-user. target

(/etc/systemd/system/[Link], ex / etc/ init t ab )


systemctl poweroff
systemctl reboot

48
11/02/2024

systemd

 systemctl disable sshd


 systemctl enable sshd
 systemctl s t a r t sshd
 systemctl stop sshd
 systemctl r e s t a r t sshd
 systemctl reload sshd
 systemctl status sshd

 journalctl - e (end)

 journalctl - f (follow)

 j our na l c t l -b (this boot)

 journalctl -u sshd (unit)

49

Fichiers de configuration

50
11/02/2024

Identifier le statut des unités systemd

Travaux pratiques (LAB)

T P 3 - D é m a r ra g e e t a r r ê t d e s d é m o n s s y s t è m e e n c o u r s
d'exécution

51

51

TP3-Démarrage et arrêt des démons système en cours d'exécution

1. Afficher l'état d'un service "[Link]"

2. Vérifiez que le processus de sshd est en cours d'exécution.

3. Arrêtez le service sshd et vérifiez l'état.

4. Démarrez le service sshd et affichez l'état. L'ID de processus a changé.

5. Arrêtez, puis démarrez le service ([Link]) en une seule commande.

6. Émettre des instructions pour qu'un service lire et recharge son fichier de
configuration sans arrêt et démarrage complets. L'ID de processus ne
changera pas.

52

52

Vous aimerez peut-être aussi