• 12 heures
  • Moyenne

Ce cours est visible gratuitement en ligne.

course.header.alt.is_video

course.header.alt.is_certifying

J'ai tout compris !

Mis à jour le 15/12/2020

Maîtrisez le partitionnement et le montage

Connectez-vous ou inscrivez-vous gratuitement pour bénéficier de toutes les fonctionnalités de ce cours !

Bravo, vous avez maintenant installé votre premier serveur. Dans cette partie, vous allez approfondir vos compétences de gestion du stockage sous Linux. C’est une partie importante car la fiabilité et les performances de votre système en dépendent.

D’ici la fin de ce cours, vous aimeriez pouvoir utiliser votre nouveau serveur pour partager des fichiers sur votre réseau local. Nous allons pour cela dédier un disque dur au stockage de ces données.

Ajoutez un disque dur à votre serveur

Éteignez la machine vm-serveur  et dans VirtualBox, allez dans “configuration”.

Fenêtre de propriétés de la machine vm-serveur dans VirtualBox, section stockage. Le bouton
Ajoutez un nouveau disque à votre serveur

Dans la section “Stockage”, cliquez sur “Ajouter un disque dur” au niveau de votre Contrôleur SATA puis sur “Créer un nouveau disque”. Laissez le type de fichier par défaut, choisissez un fichier de taille fixe, donnez-lui un nom et allouez-lui une taille de 1Go (oui d’accord, on ne stockera pas beaucoup de fichiers avec un disque dur pareil).

Maintenant que votre nouveau disque dur est “physiquement” créé, vous pouvez redémarrer le serveur  vm-serveur  .

Pour pouvoir utiliser votre nouveau disque, il vous reste à :

  • créer au moins une partition sur ce disque

  • formater cette partition

  • monter cette partition

Nous allons voir ensemble chacune de ces étapes par la suite.

Partitionnez votre nouveau disque

Vous vous souvenez peut-être que sous Linux les périphériques systèmes sont représentés par des fichiers dans /dev. En particulier, les disques durs SCSI (et en fait maintenant presque tous les disques sont gérés comme des disques SCSI) sont représentés par des fichiers de type  /dev/sda  ,  /dev/sdb  , etc. La dernière lettre correspond à l’ordre dans lequel les disques sont reconnus.

$ ls -l /dev/sd*
brw-rw---- 1 root disk 8,   0 avril 19 09:54 /dev/sda
brw-rw---- 1 root disk 8,   1 avril 19 09:54 /dev/sda1
brw-rw---- 1 root disk 8,   2 avril 19 09:54 /dev/sda2
brw-rw---- 1 root disk 8, 16 avril 19 09:54 /dev/sd

On voit ici le disque système  /dev/sda  sur lequel l’installation par défaut a créé deux partitions  /dev/sda1  et  /dev/sda2  . Nous voyons également le nouveau disque  /dev/sdb  . Sans surprise, on ne trouve pas encore de  /dev/sdb1  car nous n’avons pas encore créé de partition sur ce disque. C’est ce que nous allons faire maintenant grâce à l’utilitaire gdisk.

Commençons par obtenir des informations sur nos disques avec l’option  -l  suivie du fichier périphérique à examiner. Comme vous avez pu le remarquer, pour avoir accès aux fichiers périphériques, il nous faut utiliser la commande  sudo  :

$ sudo gdisk -l /dev/sda #pour les informations sur le disque système de 10Go
GPT fdisk (gdisk) version 1.0.3

Partition table scan:
MBR: protective
BSD: not present
APM: not present
GPT: present

Found valid GPT with protective MBR; using GPT.
Disk /dev/sda: 20971520 sectors, 10.0 GiB
Model: VBOX HARDDISK
Sector size (logical/physical): 512/512 bytes
Disk identifier (GUID): E8F36744-0ECF-4822-90D4-362BA0BBE912
Partition table holds up to 128 entries
Main partition table begins at sector 2 and ends at sector 33
First usable sector is 34, last usable sector is 20971486
Partitions will be aligned on 2048-sector boundaries
Total free space is 4029 sectors (2.0 MiB)

Number Start (sector) End (sector) Size Code Name
1 2048 4095 1024.0 KiB EF02
2 4096 20969471 10.0 GiB 8300

$ sudo gdisk -l /dev/sdb #pour les informations sur le disque additionnel de 1Go
GPT fdisk (gdisk) version 1.0.3

Partition table scan:
MBR: not present
BSD: not present
APM: not present
GPT: not present

Creating new GPT entries.
Disk /dev/sdb: 2097152 sectors, 1024.0 MiB
Model: VBOX HARDDISK
Sector size (logical/physical): 512/512 bytes
Disk identifier (GUID): F93AF0D3-EC3A-4A36-9A21-56CCCB2AD17A
Partition table holds up to 128 entries
Main partition table begins at sector 2 and ends at sector 33
First usable sector is 34, last usable sector is 2097118
Partitions will be aligned on 2048-sector boundaries
Total free space is 2097085 sectors (1024.0 MiB)

Number Start (sector) End (sector) Size Code Nam

Maintenant que vous êtes sûr que le disque additionnel dédié aux données est bien  /dev/sdb  , créez une partition sur ce disque.

$ sudo gdisk /dev/sdb
GPT fdisk (gdisk) version 1.0.3

Partition table scan:
MBR: not present
BSD: not present
APM: not present
GPT: not present

Creating new GPT entries.

Command (? for help): ?
b back up GPT data to a file
c change a partition's name
d delete a partition
i show detailed information on a partition
l list known partition types
n add a new partition
o create a new empty GUID partition table (GPT)
p print the partition table
q quit without saving changes
r recovery and transformation options (experts only)
s sort partitions
t change a partition's type code
v verify disk
w write table to disk and exit
x extra functionality (experts only)
? print this men

Sans option, gdisk est un programme interactif. En tapant  ?  puis “Entrée”, nous voyons la liste des commandes disponibles.
Il est indiqué que pour ajouter une partition, il nous faut taper  n

Command (? for help): n
Partition number (1-128, default 1):
First sector (34-2097118, default = 2048) or {+-}size{KMGTP}:
Last sector (2048-2097118, default = 2097118) or {+-}size{KMGTP}: Current type is 'Linux filesystem'
Hex code or GUID (L to show codes, Enter = 8300): Changed type of partition to 'Linux filesystem'

On peut alors accepter toutes les valeurs par défaut, ce qui nous amène à créer une partition numéro  1  qui commence au premier secteur disponible et termine au dernier secteur disponible (tout le disque donc). Un code indique alors que le système de fichier de la partition sera un “système de fichiers Linux”, ce qui nous va très bien.

N’hésitez pas à vérifier que votre nouvelle partition correspond bien à ce que nous voulons par la commande  p  puis enregistrez les changements sur le disque avec  w  .

Notez que votre système a tout de suite remarqué la création de cette nouvelle partition et a créé un fichier associé  /dev/sdb1  .

À ce stade, vous avez juste écrit une table de partition au début de votre disque de données qui indique que ce disque contient une partition. Il vous faut maintenant la formater.

Formatez votre nouveau disque

Pour rappel, le système de fichier est à la partition ce que les étagères et le système de classement des livres sont à la bibliothèque. Nous allons formater cette nouvelle partition au format ext4 qui est actuellement le format par défaut sous Ubuntu et qui est un très bon choix pour la plupart des usages sous Linux. Pour cela, il suffit de taper la commande :

$ sudo mkfs -t ext4 /dev/sdb1

La commande  mkfs  permet de créer un système de fichier. Avec   -t ext4  , on précise qu’on veut un système ext4 et on donne en argument le fichier device  /dev/sdb1  qu’on veut formater.

Votre nouveau disque dur est prêt. Pour l’utiliser, il ne reste plus qu’à le “monter”.

Montez votre nouveau disque

Pour rappel, sous Windows, les disques durs, lecteur cd et autres périphériques de stockage sont identifiés par une lettre. Sous Linux, la racine de notre arborescence se nomme  /  puis on trouve des dossiers, des sous-dossiers, des sous-sous-dossiers, etc.

En fait, chaque partition/système de fichier possède sa propre racine  /  mais pour pouvoir accéder à cette partition, il vous faut “monter”, c’est à dire rattacher cette racine à un dossier de votre arborescence principale.

Schéma des arborescences de /dev/sda2 et /dev/sdb1 et comment /dev/sdb1 peut se rattacher à l'arborescence de /dev/sda2
Fonctionnement du montage d'une partition sous Linux
$ sudo su - #On devient root “à plein temps”
# mkdir -p /var/data1/non_monte #Création d’un premier répertoire de montage
# mkdir -p /mnt/mes_donnees/ #Création d’un deuxième répertoire de montage
# mount -t ext4 /dev/sdb1 /mnt/mes_donnees
# mkdir -p /mnt/mes_donnees/repertoire1

Ici, vous allez créer deux répertoires dont vous vous servirez de point de montage :  /var/data1/non_monte  et  /mnt/mes_donnees  . Avec la commande  mount  , vous allez monter la partition  /dev/sdb1  dans le répertoire  /mnt/mes_donnees  en précisant que le système de fichier est de type ext4. Vous pouvez ensuite créer le répertoire  repertoire1  à la racine de votre nouveau disque dur (premier niveau après le point de montage).

# umount /dev/sdb1
# ls /mnt/mes_donnees
# mount -t ext4 /dev/sdb1 /var/data1
# ls /var/data1
lost+found repertoire1
# umount /var/data1
# ls /var/data1
non_monte

Pour démonter  votre disque de données, rien de plus simple : utilisez la commande  umount. Comme le fichier de partition/dev/sdb1et le répertoire de montage  /mnt/mes_donnees  sont maintenant “associés” dans la table de montage, vous n’avez besoin de passer qu’un des deux en argument pour indiquer le lien à défaire. Le répertoire  /mnt/mes_donnees  est maintenant vide car le répertoire  repertoire1  est sur le disque de données.

Vous devez ensuite monter  /dev/sdb1  dans le répertoire  /var/data1  . Vous allez retrouver votre répertoire  repertoire1  (et un mystérieux répertoire  lost+found  dont nous parlerons dans le prochaine chapitre) mais le répertoire  non_monte   qui était dans  /var/data1  a disparu. Ce répertoire n’est pas perdu, mais il est inaccessible car “caché” par le montage que vous venez de réaliser par-dessus. Vous pourrez d’ailleurs retrouver ce répertoire dès que vous  démonterez  /dev/sdb1  .

Vous savez maintenant comment accéder à votre nouveau disque dur mais il serait quand même bien pratique qu’il puisse être monté automatiquement au démarrage du système. Pour ça, vous pouvez rajouter la ligne suivante à la fin du fichier  /etc/fstab  :

/dev/sdb1 /var/data1 ext4 defaults 0 0

Chaque ligne du fichier  /etc/fstab  comporte six champs séparés par des espaces ou des tabulations et qui indiquent dans l’ordre :

  • le périphérique à monter

  • le point de montage

  • le type de système de fichiers

  • les options de montage séparées par des virgules (par défaut pour nous)

Je ne rentrerai pas ici dans le détail des deux derniers champs qui peuvent généralement être laissés à  0 0.

Au démarrage, le système va lancer la commande  mount -a  qui montera tous les périphériques indiqués dans le fichier  /etc/fstab  . Je vous invite d’ailleurs à lancer cette commande manuellement (en root) pour monter votre disque de données.

Dans le chapitre suivant, nous en apprendrons plus sur le fichier ext4 et sur la manière de manipuler ce système de fichier.

En résumé

  • vous avez ajouté un nouveau disque à votre serveur

  • vous avez partitionné ce disque grâce à l’utilitaire gdisk

  • vous avez formaté cette nouvelle partition au format ext4

  • vous avez appris comment monter et démonter cette partition

  • vous avez automatisé le montage de cette partition au démarrage du système

Exemple de certificat de réussite
Exemple de certificat de réussite