Niveau : Admin Junior	Numéro de la Leçon	Dernière Modification
skill>2/4	<progrecss 4/12 style=inline />

Gestion des Disques et le Swap

Périphériques de stockage

Les unités de stockage sous Linux sont référencé par un des fichiers se trouvant dans le répertoire /dev :

hd[a-d]

Les disques IDE et les lecteurs ATAPI

sd[a-z]

Les disques SCSI et SATA

scd[0-7]

Les CDRoms SCSI

xd[a-d]

Les premiers disques sur IBM XT

fd[0-7]

Les lecteurs de disquettes

st[0-7]

Les lecteurs de bandes SCSI qui supportent le rembobinage

nst[0-7]

Les lecteurs de bandes SCSI qui ne supportent pas le rembobinage

rmt8, rmt16, tape-d, tape-reset

Les lecteurs QIC-80

ram[0-15]

Les disques virtuels. Ils sont supprimés à l'extinction de la machine. Un de ces disques est utilisé par le système pour monter l'image d'un disque racine défini par le fichier initrd au démarrage de la machine

Périphériques loop

Il existe 16 unités loop qui sont utilisés pour accèder en mode bloc à un système de fichiers contenu dans un fichier, par exemple, une image iso

md[x]

Un volume RAID logiciel

vg[x]

Un groupe de volumes

lv[x]

Un volume logique

Partitions

Un PC comportent en règle générale 2 contrôleurs de disque, chacun capable de gérer 2 disques, un maître et un esclave. Les disques attachés à ces contrôleurs comportent des noms différents pour pouvoir les distinguer :

Contrôleur 0

Maître

hda - disque IDE

sda - disque SATA ou SCSI

Esclave

hdb - disque IDE

sdb - disque SATA ou SCSI

Contrôleur 1

Maître

hdc - disque IDE

sdc - disque SATA ou SCSI

Esclave

hdd - disque IDE

sdd - disque SATA ou SCSI

Un disque peut comporter trois types de partitions :

Partitions primaires,

Maximum de 4. En effet, la FAT ( File Allocation Table ) est grand de 64 octets. Il faut 16 octets pour codés une partition.

Partitions Etendues,

Généralement une seule partition étendue par disque. Elle contient des Lecteurs Logiques aussi appelés des partitions,

Lecteurs Logiqiques.

Les 4 partitions primaires sont numérotées de 1 à 4. Par exemple :

hda1, hda2, hda3 et hda4 pour le premier disque IDE sur le premier contrôleur de disque,

sda1, sda2, sda3 et sda4 pour le premier disque SCSI ou SATA sur le premier contrôleur de disque.

;#;;#;

Une partition étendue prend la place d'une partition primaire et les lecteurs logiques qui s'y trouvent commencent à partir de hda5 ou de sda5.

Pour clarifier ceci, considérons un disque SATA contenant deux partitions primaires, une seule partition étendue et 3 lecteurs logiques. Dans ce cas, les deux premières partitions sont sda1 et sda2, la partition étendue prend la place de la troisième partition primaire, la sda3 et s'appelle ainsi tandis que la quatrième partition primaire est inexistante.

Les lecteurs logiques commençant à sda5, nous obtenons la liste de partitions suivante : sda1, sda2, sda5, sda6, sda7. Notez que la sda3 ne peut pas être utilisée en tant que partition car elle est cachée par les lecteurs sda5, sda6 et sda7.

;#;;#;

Le nombre de partitions sur un disque est limité :

IDE,

Jusqu'à 63,

SCSI,

Jusqu'à 15,

Disques utilisant l'API libata,

Jusqu'à 15.

<note important> Ces limites peuvent être dépassées en utilisant la gestion LVM ( Logical Volume Management ). Ce sujet est abordé dans la leçon Gestion des Disques - RAID et LVM. </note>

Partitionnement

Pour procéder au partitionnement de votre disque ou de vos disques, Linux possède un outil dénommé fdisk.

Lancez fdisk en fournissant en argument le fichier de référence de votre premier disque dur, par exemple :

root@debian:~# fdisk /dev/sda
WARNING: DOS-compatible mode is deprecated. It's strongly recommended to
switch off the mode (command 'c') and change display units to
sectors (command 'u').
Command (m for help):

Tapez ensuite la lettre m puis ↵ Entrée pour obtenir le menu :

Command (m for help): m
Command action
a toggle a bootable flag
b edit bsd disklabel
c toggle the dos compatibility flag
d delete a partition
l list known partition types
m print this menu
n add a new partition
o create a new empty DOS partition table
p print the partition table
q quit without saving changes
s create a new empty Sun disklabel
t change a partition's system id
u change display/entry units
v verify the partition table
w write table to disk and exit
x extra functionality (experts only)
Command (m for help):

Pour créer une nouvelle partition, vous devez utiliser la commande n.

Créez donc les partitions suivantes sur votre disque :

Partition	Type	Taille de la Partition
/dev/sda6	Logique	500 Mo
/dev/sda7	Logique	200 Mo
/dev/sda8	Logique	300 Mo
/dev/sda9	Logique	500 Mo
/dev/sda10	Logique	400 Mo
/dev/sda11	Logique	500 Mo
/dev/sda12	Logique	500 Mo
/dev/sda13	Logique	200 Mo

Créez les partitions l'une après l'autre :

Command (m for help): n
Command action
l logical (5 or over)
p primary partition (1-4)
l
First cylinder (838-2088, default 838):
Using default value 838
Last cylinder, +cylinders or +size{K,M,G} (838-2088, default 2088): +500M
Command (m for help): n
Command action
l logical (5 or over)
p primary partition (1-4)
l
First cylinder (903-2088, default 903):
Using default value 903
Last cylinder, +cylinders or +size{K,M,G} (903-2088, default 2088): +200M
Command (m for help): n
Command action
l logical (5 or over)
p primary partition (1-4)
l
First cylinder (929-2088, default 929):
Using default value 929
Last cylinder, +cylinders or +size{K,M,G} (929-2088, default 2088): +300M
Command (m for help): n
Command action
l logical (5 or over)
p primary partition (1-4)
l
First cylinder (968-2088, default 968):
Using default value 968
Last cylinder, +cylinders or +size{K,M,G} (968-2088, default 2088): +500M
Command (m for help): n
Command action
l logical (5 or over)
p primary partition (1-4)
l
First cylinder (1033-2088, default 1033):
Using default value 1033
Last cylinder, +cylinders or +size{K,M,G} (1033-2088, default 2088): +400M
Command (m for help): n
Command action
l logical (5 or over)
p primary partition (1-4)
l
First cylinder (1085-2088, default 1085):
Using default value 1085
Last cylinder, +cylinders or +size{K,M,G} (1085-2088, default 2088): +500M
Command (m for help): n
Command action
l logical (5 or over)
p primary partition (1-4)
l
First cylinder (1150-2088, default 1150):
Using default value 1150
Last cylinder, +cylinders or +size{K,M,G} (1150-2088, default 2088): +500M
Command (m for help): n
Command action
l logical (5 or over)
p primary partition (1-4)
l
First cylinder (1215-2088, default 1215):
Using default value 1215
Last cylinder, +cylinders or +size{K,M,G} (1215-2088, default 2088): +200M
Command (m for help):

Tapez ensuite la lettre p puis ↵ Entrée pour visualiser la nouvelle table des partitions. Vous obtiendrez un résultat similaire à celui-ci :

Command (m for help): p
Disk /dev/sda: 17.2 GB, 17179869184 bytes
255 heads, 63 sectors/track, 2088 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x0005d376
Device Boot Start End Blocks Id System
/dev/sda1 1 594 4770281 83 Linux
/dev/sda2 595 2088 12000555 5 Extended
/dev/sda5 595 837 1951866 82 Linux swap / Solaris
/dev/sda6 838 902 522081 83 Linux
/dev/sda7 903 928 208813+ 83 Linux
/dev/sda8 929 967 313236 83 Linux
/dev/sda9 968 1032 522081 83 Linux
/dev/sda10 1033 1084 417658+ 83 Linux
/dev/sda11 1085 1149 522081 83 Linux
/dev/sda12 1150 1214 522081 83 Linux
/dev/sda13 1215 1240 208813+ 83 Linux
Command (m for help):

<note important> Chaque bloc fait 1 024 octets. Chaque secteur fait 512 octets. Quand la partition contient un nombre impair de secteurs, celle-ci est marquée avec un +. Ceci implique que le dernier secteur de 512 octets est effectivement perdu. </note>

Ecrivez la table des partitions sur disque et redémarrez :

Command (m for help): w
The partition table has been altered!
Calling ioctl() to re-read partition table.
WARNING: Re-reading the partition table failed with error 16: Périphérique ou ressource occupé.
The kernel still uses the old table. The new table will be used at
the next reboot or after you run partprobe(8) or kpartx(8)
Syncing disks.
root@debian:~# reboot

Reconnectez-vous et lancez fdisk en tant que root. Tapez ensuite la lettre p puis ↵ Entrée pour visualiser la table des partitions actuelle :

trainee@debian:~$ su -
Mot de passe :
root@debian:~# fdisk /dev/sda
WARNING: DOS-compatible mode is deprecated. It's strongly recommended to
switch off the mode (command 'c') and change display units to
sectors (command 'u').
Command (m for help): p
Disk /dev/sda: 17.2 GB, 17179869184 bytes
255 heads, 63 sectors/track, 2088 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x0005d376
Device Boot Start End Blocks Id System
/dev/sda1 1 594 4770281 83 Linux
/dev/sda2 595 2088 12000555 5 Extended
/dev/sda5 595 837 1951866 82 Linux swap / Solaris
/dev/sda6 838 902 522081 83 Linux
/dev/sda7 903 928 208813+ 83 Linux
/dev/sda8 929 967 313236 83 Linux
/dev/sda9 968 1032 522081 83 Linux
/dev/sda10 1033 1084 417658+ 83 Linux
/dev/sda11 1085 1149 522081 83 Linux
/dev/sda12 1150 1214 522081 83 Linux
/dev/sda13 1215 1240 208813+ 83 Linux
Command (m for help):

Pour supprimer une partition, utilisez la commande d puis ↵ Entrée. fdisk vous demandera le numéro de la partition à supprimer, par exemple :

Command (m for help): d
Partition number (1-13): 13
Command (m for help): p
Disk /dev/sda: 17.2 GB, 17179869184 bytes
255 heads, 63 sectors/track, 2088 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x0005d376
Device Boot Start End Blocks Id System
/dev/sda1 1 594 4770281 83 Linux
/dev/sda2 595 2088 12000555 5 Extended
/dev/sda5 595 837 1951866 82 Linux swap / Solaris
/dev/sda6 838 902 522081 83 Linux
/dev/sda7 903 928 208813+ 83 Linux
/dev/sda8 929 967 313236 83 Linux
/dev/sda9 968 1032 522081 83 Linux
/dev/sda10 1033 1084 417658+ 83 Linux
/dev/sda11 1085 1149 522081 83 Linux
/dev/sda12 1150 1214 522081 83 Linux
Command (m for help):

A ce stade, la partition n'a pas été réellement supprimée. En effet, vous avez la possibilité de sortir de fdisk en utilisant la commande q.

Tapez donc q pour sortir de fdisk puis relancez fdisk. Vous obtiendrez un résultat similaire à celui-ci :

Command (m for help): q
root@debian:~# fdisk /dev/sda
WARNING: DOS-compatible mode is deprecated. It's strongly recommended to
switch off the mode (command 'c') and change display units to
sectors (command 'u').
Command (m for help): p
Disk /dev/sda: 17.2 GB, 17179869184 bytes
255 heads, 63 sectors/track, 2088 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x0005d376
Device Boot Start End Blocks Id System
/dev/sda1 1 594 4770281 83 Linux
/dev/sda2 595 2088 12000555 5 Extended
/dev/sda5 595 837 1951866 82 Linux swap / Solaris
/dev/sda6 838 902 522081 83 Linux
/dev/sda7 903 928 208813+ 83 Linux
/dev/sda8 929 967 313236 83 Linux
/dev/sda9 968 1032 522081 83 Linux
/dev/sda10 1033 1084 417658+ 83 Linux
/dev/sda11 1085 1149 522081 83 Linux
/dev/sda12 1150 1214 522081 83 Linux
/dev/sda13 1215 1240 208813+ 83 Linux
Command (m for help):

Sortez de fdisk en utilisant la commande q.

Systèmes de Fichiers Journalisés

Présentation

Un journal est la partie d'un système de fichiers journalisé qui trace les opérations d'écriture tant qu'elles ne sont pas terminées et cela en vue de garantir l'intégrité des données en cas d'arrêt brutal.

L'intérêt est de pouvoir plus facilement et plus rapidement récupérer les données en cas d'arrêt brutal du système d'exploitation (coupure d'alimentation, plantage du système, etc.), alors que les partitions n'ont pas été correctement synchronisées et démontées.

Sans un tel fichier journal, un outil de récupération de données après un arrêt brutal doit parcourir l'intégralité du système de fichier pour vérifier sa cohérence. Lorsque la taille du système de fichiers est importante, cela peut durer très longtemps pour un résultat moins efficace car entraînant des pertes de données.

Linux peut utiliser un des systèmes de fichiers journalisés suivants :

Ext3

Ext4

ReiserFS

XFS

JFS

Par contre il convient de noter que seul Ext3 est activé par défaut. Pour activer le support des autres systèmes de fichiers il est nécessaire de recompiler le noyau.

Ext3

Ext3 est une évolution de Ext2 et a pour principale différence d'utiliser un fichier journal. Il peut :

être utilisé à partir d'une partition Ext2, sans avoir à sauvegarder et à restaurer des données,

utiliser tous les utilitaires de maintenance pour les systèmes de fichiers ext2, comme fsck,

utiliser le logiciel dump, ce qui n'est pas le cas avec ReiserFS.

Pour plus d'information concernant Ext3, consultez cette page

Ext4

Le système de fichiers Ext4 fut introduit dans le noyau 2.6.19 en mode expérimental et est devenu stable dans le noyau 2.6.28.

Ext4 n'est pas une évolution de Ext3. Cependant il a une compatibilité ascendante avec Ext3.

Les fonctionnalités majeures d'Ext4 sont :

la gestion des volumes d'une taille allant jusqu'à 1 024 pébioctets,

l'allocation par extents qui permettent la pré-allocation d'une zone contiguë pour un fichier afin de minimiser la fragmentation.

L'option extents est activée par défaut depuis le noyau 2.6.23.

La compatibilité ascendante avec ext3 comprend :

la possibilité de monter une partition Ext3 en tant que partition Ext4,

la possibilité de monter une partition Ext4 en tant que partition Ext3 mais uniquement dans le cas où la partition Ext4 n'ait jamais utilisé l'allocation par extents pour enregistrer des fichiers, mais l'allocation binaire comprise par ext3.

Pour plus d'informations concernant Ext4, consultez cette page.

ReiserFS

ReiserFS permet :

de meilleurs temps d'accès à des sous-répertoires que Ext3, même ceux contenant des dizaines de milliers de fichiers,

une plus grande efficacité pour ce qui concerne le stockage des fichiers moins de quelques ko. Le gain d'espace peut aller jusqu'à 10% par rapport à Ext2/Ext3.

Pour plus d'informations concernant ReiserFS, consultez cette page.

XFS

XFS est un système de fichiers 64-bit journalisé de haute performance crée par SGI pour son système d'exploitation IRIX. XFS est inclus par défaut avec les versions du noyau Linux 2.5.xx et 2.6.xx.

Pour plus d'informations concernant XFS, consultez cette page.

JFS

JFS Journaled File System est un système de fichiers journalisé mis au point par IBM et disponible sous licence GPL.

Pour plus d'informations concernant JFS, consultez cette page.

<note> Pour comparer ces quatre systèmes de fichier, veuillez consulter cette page </note>

Modes de journalisation Ext3

Ext3 dispose de trois modes de journalisation:

data=writeback

data=ordered

data=journal

Ces modes peuvent être activés au montage de la partition. Par défaut, ext3 est monté avec le mode data=ordered qui convient pour le cas général. Dans ce mode, les metadata - métadonnées sont d'abord écrites dans le journal, ensuite sur le disque après l'écriture effective des données sur le disque.

Le mode data=writeback, où les métadonnées sont journalisées mais peuvent être écrites sur le disque avant les données elles-mêmes, est plus rapide dans certaines circonstances, tout en assurant la cohérence du système de fichiers. C'est aussi le mode de fonctionnement de reiserfs, jfs et xfs.

Le mode data=journal, où les données et les métadonnées sont journalisées, est plus lent car les données sont écrites deux fois, mais offre aussi plus de garantie quant à l'intégrité des fichiers.

Pour modifier le mode il convient de monter la partition avec l'option désirée :

# mount -o data=writeback /dev/hda13 /mnt/hda13 [Entrée]

Gestion de la journalisation Ext3

Notez maintenant le numéro de la dernière partition que vous avez précédemment créée :

root@debian:~# fdisk -l /dev/sda
Disk /dev/sda: 17.2 GB, 17179869184 bytes
255 heads, 63 sectors/track, 2088 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x0005d376
Device Boot Start End Blocks Id System
/dev/sda1 1 594 4770281 83 Linux
/dev/sda2 595 2088 12000555 5 Extended
/dev/sda5 595 837 1951866 82 Linux swap / Solaris
/dev/sda6 838 902 522081 83 Linux
/dev/sda7 903 928 208813+ 83 Linux
/dev/sda8 929 967 313236 83 Linux
/dev/sda9 968 1032 522081 83 Linux
/dev/sda10 1033 1084 417658+ 83 Linux
/dev/sda11 1085 1149 522081 83 Linux
/dev/sda12 1150 1214 522081 83 Linux
/dev/sda13 1215 1240 208813+ 83 Linux

Dans le cas de cette exemple, s'agit de /dev/sda13.

Créez maintenant un filesystem Ext3 sur /dev/sda1 en utilisant la commande mke2fs -j :

root@debian:~# mke2fs -j /dev/sda13
mke2fs 1.41.12 (17-May-2010)
Étiquette de système de fichiers=
Type de système d'exploitation : Linux
Taille de bloc=1024 (log=0)
Taille de fragment=1024 (log=0)
« Stride » = 0 blocs, « Stripe width » = 0 blocs
52208 i-noeuds, 208812 blocs
10440 blocs (5.00%) réservés pour le super utilisateur
Premier bloc de données=1
Nombre maximum de blocs du système de fichiers=67371008
26 groupes de blocs
8192 blocs par groupe, 8192 fragments par groupe
2008 i-noeuds par groupe
Superblocs de secours stockés sur les blocs :
8193, 24577, 40961, 57345, 73729, 204801
Écriture des tables d'i-noeuds : complété
Création du journal (4096 blocs) : complété
Écriture des superblocs et de l'information de comptabilité du système de
fichiers : complété
Le système de fichiers sera automatiquement vérifié tous les 23 montages ou
après 180 jours, selon la première éventualité. Utiliser tune2fs -c ou -i
pour écraser la valeur.

Les options de la commande mke2fs sont :

root@debian:~# mke2fs --help
mke2fs : option invalide -- '-'
Usage : mke2fs [-c|-l nom-de-fichier] [-b taille-de-bloc]
[-f taille-de-fragment] [-i octets-par-i-noeud] [-I taille-des-i-noeuds]
[-J options-de-journal] [-G taille-méta-groupe] [-N nombre-d-i-noeuds]
[-m pourcentage-de-blocs-réservés]
[-o système-d-exploitation-de-création] [-g blocs-par-groupe]
[-L étiquette-du-volume] [-M dernier-répertoire-monté]
[-O fonctionnalité[,...]] [-r révision-du-système-de-fichier]
[-E option-étendue[,...]] [-T type-système-fichier] [-U UUID]
[-jnqvFKSV] périphérique [nombre-de-blocs]

<note important> Lors de la mise en place d'un filesystem ext2/ext3/ext4, le système réserve 5% de l'espace disque pour root. Sur des disques de grande taille il est parfois préférable de récupérer une partie de cet espace en utilisant la commande tune2fs -m n /dev/sdXY ou n est le nouveau pourcentage à réserver. </note>

La commande dump2fs

Pour vérifier si un système de fichiers Ext2 est journalisé, utilisez la commande dumpe2fs :

root@debian:~# dumpe2fs -h /dev/sda13
dumpe2fs 1.41.12 (17-May-2010)
Filesystem volume name: <none>
Last mounted on: <not available>
Filesystem UUID: 327db7c6-ec1f-4491-b069-cbb21dbc136d
Filesystem magic number: 0xEF53
Filesystem revision #: 1 (dynamic)
Filesystem features: has_journal ext_attr resize_inode dir_index filetype sparse_super
Filesystem flags: signed_directory_hash
Default mount options: (none)
Filesystem state: clean
Errors behavior: Continue
Filesystem OS type: Linux
Inode count: 52208
Block count: 208812
Reserved block count: 10440
Free blocks: 196300
Free inodes: 52197
First block: 1
Block size: 1024
Fragment size: 1024
Reserved GDT blocks: 256
Blocks per group: 8192
Fragments per group: 8192
Inodes per group: 2008
Inode blocks per group: 251
Filesystem created: Tue Apr 10 10:35:38 2012
Last mount time: n/a
Last write time: Tue Apr 10 10:35:38 2012
Mount count: 0
Maximum mount count: 23
Last checked: Tue Apr 10 10:35:38 2012
Check interval: 15552000 (6 months)
Next check after: Sun Oct 7 10:35:38 2012
Reserved blocks uid: 0 (user root)
Reserved blocks gid: 0 (group root)
First inode: 11
Inode size:	128
Journal inode: 8
Default directory hash: half_md4
Directory Hash Seed: 582b2a68-db5d-4d45-bc13-d33d9e5d9eea
Journal backup: inode blocks
Fonctionalités du journal: (none)
Taille du journal: 4113k
Longueur du journal : 4096
Séquence du journal : 0x00000001
Début du journal : 0

<note important> Le drapeau Filesystem features: has_journal … démontre que Ext3 est utilisé sur cette partition. </note>

La commande tune2fs

Pour supprimer Ext3 sur cette partition, il convient d'utiliser la commande tune2fs

root@debian:~# tune2fs -O ^has_journal /dev/sda13
tune2fs 1.41.12 (17-May-2010)

Les options de cette commande sont :

[root@centos ~]# tune2fs --help
tune2fs 1.41.12 (17-May-2010)
tune2fs : option invalide -- '-'
Usage : tune2fs [-c limite-maximale-de-montage]
[-e comportement-en-cas-d-erreur] [-g groupe]
[-i intervalle[d|m|w]] [-j] [-J options-journal] [-l]
[-m pourcentage-de-blocs-réservés]
[-o [^]options-de-montage[,...]] [-r compteur-de-blocs-réservés]
[-u utilisateur] [-C compteur-de-montage] [-L étiquette-du-volume]
[-M dernier-répertoire-monté] [-O [^]fonctionnalité[,...]]
[-E option-étendue[,...]] [-T date-de-dernière-vérification]
[-U UUID] [-I nouvelle-taille-i-noeuds] périphérique

Constatez le résultat de cette commande :

root@debian:~# dumpe2fs -h /dev/sda13
dumpe2fs 1.41.12 (17-May-2010)
Filesystem volume name: <none>
Last mounted on: <not available>
Filesystem UUID: 327db7c6-ec1f-4491-b069-cbb21dbc136d
Filesystem magic number: 0xEF53
Filesystem revision #: 1 (dynamic)
Filesystem features: ext_attr resize_inode dir_index filetype sparse_super
Filesystem flags: signed_directory_hash
Default mount options: (none)
Filesystem state: clean
Errors behavior: Continue
Filesystem OS type: Linux
Inode count: 52208
Block count: 208812
Reserved block count: 10440
Free blocks: 200413
Free inodes: 52197
First block: 1
Block size: 1024
Fragment size: 1024
Reserved GDT blocks: 256
Blocks per group: 8192
Fragments per group: 8192
Inodes per group: 2008
Inode blocks per group: 251
Filesystem created: Tue Apr 10 10:35:38 2012
Last mount time: n/a
Last write time: Tue Apr 10 10:39:35 2012
Mount count: 0
Maximum mount count: 23
Last checked: Tue Apr 10 10:35:38 2012
Check interval: 15552000 (6 months)
Next check after: Sun Oct 7 10:35:38 2012
Reserved blocks uid: 0 (user root)
Reserved blocks gid: 0 (group root)
First inode: 11
Inode size:	128
Default directory hash: half_md4
Directory Hash Seed: 582b2a68-db5d-4d45-bc13-d33d9e5d9eea
Journal backup: inode blocks

<note important> Notez que le drapeau Filesystem features: has_journal … a été supprimé. </note>

Supprimez maintenant l'inode du journal :

root@debian:~# fsck /dev/sda13
fsck from util-linux-ng 2.17.2
e2fsck 1.41.12 (17-May-2010)
/dev/sda13 : propre, 11/52208 fichiers, 8399/208812 blocs

Créez maintenant un point de montage pour /dev/sda13 :

root@debian:~# mkdir /mnt/sda13

Essayez de monter /dev/sda13 en tant que système de fichiers Ext3. Vous obtiendrez un résultat similaire à celui-ci :

root@debian:~# mount -t ext3 /dev/sda13 /mnt/sda13
mount: wrong fs type, bad option, bad superblock on /dev/sda13,
missing codepage or helper program, or other error
In some cases useful info is found in syslog - try
dmesg | tail or so

<note important> Notez l'erreur due au mauvais système de fichiers qui suit l'option -t. </note>

Montez maintenant le système de fichiers en tant que Ext2 :

root@debian:~# mount -t ext2 /dev/sda13 /mnt/sda13
root@debian:~#

Pour replacer le journal sur /dev/sda13, il convient d'utiliser la commande tune2fs :

root@debian:~# umount /mnt/sda13
root@debian:~# tune2fs -j /dev/sda13
tune2fs 1.41.12 (17-May-2010)
Création de l'i-noeud du journal : complété
Le système de fichiers sera automatiquement vérifié tous les 23 montages ou
après 180 jours, selon la première éventualité. Utiliser tune2fs -c ou -i
pour écraser la valeur.

<note important> Notez que vous avez du démonter la partition avant d'exécuter la commande tune2fs. </note>

Le journal d'un système de fichiers peut être placé sur un autre périphérique bloc.

Créez d'abord un système de fichiers ext2 sur /dev/sda12 :

root@debian:~# mke2fs -O journal_dev /dev/sda12
mke2fs 1.41.12 (17-May-2010)
Étiquette de système de fichiers=
Type de système d'exploitation : Linux
Taille de bloc=4096 (log=2)
Taille de fragment=4096 (log=2)
« Stride » = 0 blocs, « Stripe width » = 0 blocs
0 i-noeuds, 130520 blocs
0 blocs (0.00%) réservés pour le super utilisateur
Premier bloc de données=0
0 groupe de bloc
32768 blocs par groupe, 32768 fragments par groupe
0 i-noeuds par groupe
Superblocs de secours stockés sur les blocs :
Mise à zéro du périphérique de journal : complété

<note important> Notez l'utilisation de l'option -O. </note>

Créez maintenant un système de fichiers Ext3 sur /dev/sda13 en plaçant le journal sur /dev/sda12 :

root@debian:~# mke2fs -j -J device=/dev/sda12 /dev/sda13
mke2fs 1.41.12 (17-May-2010)
Utilisation de la taille de bloc du périphérique de journal: 4096
Étiquette de système de fichiers=
Type de système d'exploitation : Linux
Taille de bloc=4096 (log=2)
Taille de fragment=4096 (log=2)
« Stride » = 0 blocs, « Stripe width » = 0 blocs
52224 i-noeuds, 52203 blocs
2610 blocs (5.00%) réservés pour le super utilisateur
Premier bloc de données=0
Nombre maximum de blocs du système de fichiers=54525952
2 groupes de blocs
32768 blocs par groupe, 32768 fragments par groupe
26112 i-noeuds par groupe
Superblocs de secours stockés sur les blocs :
32768
Écriture des tables d'i-noeuds : complété
Ajout du journal au périphérique /dev/sda12 : complété
Écriture des superblocs et de l'information de comptabilité du système de
fichiers : complété
Le système de fichiers sera automatiquement vérifié tous les 21 montages ou
après 180 jours, selon la première éventualité. Utiliser tune2fs -c ou -i
pour écraser la valeur.

<note important> Notez que le journal a été placé sur /dev/sda12 graĉe à l'utilisation de l'option -J. </note>

Pour modifiez la fréquence de vérification du système de fichiers sur /dev/sda12, il convient d'utiliser soit l'option -c, soit l'option -i :

root@debian:~# tune2fs -i 100d /dev/sda13
tune2fs 1.41.12 (17-May-2010)
Initialisation de l'intervalle de vérification à 8640000 secondes

Le Swap

Taille du swap

Le tableau suivant résume la taille du swap recommandée en fonction de la mémoire de la machine :

Mémoire	Taille du swap
4 Go ou moins	2 Go
4 Go à 16 Go	4 Go
16 Go à 64 Go	8 Go
64 Go à 256 Go	16 Go

Partitions de swap

Une partition de swap peut être créée sur :

une partition du disque dur

un RAID logiciel

un Volume Logique

La Commande swapon

Pour préparer un espace de swap, il convient d'utiliser la commande mkswap. Pour activer une partition de swap, il convient d'utiliser la commande swapon. Pour consulter la liste des partitions swap, il convient d'utiliser la commande swapon avec l'option -s.

root@debian:~# swapon -s
Filename	Type	Size	Used	Priority
/dev/sda5 partition	1951856	0	-1

<note important> Vous noterez que dans l'exemple ci-dessus, le swap n'est pas utilisé. Notez aussi qu'il existe une notion de priorité pour les partions de swap. </note>

Options de la Commande

Les options de la commande swapon sont :

root@debian:~# swapon --help
Usage:
swapon -a [-e] [-v] [-f] enable all swaps from /etc/fstab
swapon [-p priority] [-v] [-f] <special> enable given swap
swapon -s display swap usage summary
swapon -h display help
swapon -V display version
The <special> parameter:
{-L label | LABEL=label} LABEL of device to be used
{-U uuid | UUID=uuid} UUID of device to be used
<device> name of device to be used
<file> name of file to be used

<note important> L'option -p de la commande swapon permet de régler la priorité. </note>

La Commande swapoff

Dans le cas de notre exemple, la partition de swap se trouve sur /dev/sda5. Pour la désactiver, il convient de saisir la commande suivante :

root@debian:~# swapoff /dev/sda5
root@debian:~# swapon -s
Filename	Type	Size	Used	Priority

Options de la Commande

root@debian:~# swapon -s
Filename	Type	Size	Used	Priority
root@debian:~# swapoff --help
Usage:
swapoff -a [-v] disable all swaps
swapoff [-v] <special> disable given swap
swapoff -h display help
swapoff -V display version
The <special> parameter:
{-L label | LABEL=label} LABEL of device to be used
{-U uuid | UUID=uuid} UUID of device to be used
<device> name of device to be used
<file> name of file to be used

Le Fichier /etc/fstab

Pour réactiver le swap, il convient de saisir de nouveau la commande swapon :

root@debian:~# swapon /dev/sda5
root@debian:~# swapon -s
Filename	Type	Size	Used	Priority
/dev/sda5 partition	1951856	0	-1

Pour chaque partition de swap, le fichier /etc/fstab doit contenir un enregistrement. Saisissez la commande suivante :

root@debian:~# cat /etc/fstab
# /etc/fstab: static file system information.
#
# Use 'blkid' to print the universally unique identifier for a
# device; this may be used with UUID= as a more robust way to name devices
# that works even if disks are added and removed. See fstab(5).
#
# <file system> <mount point> <type> <options> <dump> <pass>
proc /proc proc defaults 0 0
# / was on /dev/sda1 during installation
UUID=a42a1ddd-14bc-4dde-a537-e6c1b984a782 / ext3 errors=remount-ro 0 1
# swap was on /dev/sda5 during installation
UUID=e21d8931-21ca-4ab3-9fbb-bd71657b312e none swap sw 0 0
/dev/scd0 /media/cdrom0 udf,iso9660 user,noauto 0 0

Chaque ligne dans ce fichier contient 6 champs :

Champ 1	Champ 2	Champ 3	Champ 4	Champ 5	Champ 6
Fichier de bloc spécial ou UUID ou système de fichiers virtuel	Point de montage	Type de système de fichiers	Options séparées par des virgules	Utilisé par dump ( 1 = à dumper, 0 ou vide = à ignorer )	L'ordre de vérification par fsck des systèmes de fichiers au moment du démarrage

L'UUID ( Universally Unique Identifier ) est une chaîne d'une longueur de 128 bits. Les UUID sont créés automatiquement et d'une manière aléatoire lors de la création du filesystem sur la partition. Ils peuvent être modifiés par l'administrateur.

<note> Consultez l'explication de l'option -o de la commande mount dans le manuel de ce dernier afin de comprendre les options possibles du quatrième champs du fichier /etc/fstab. </note>

Fichiers de swap

Sous Debian, vous pouvez aussi bien utiliser un fichier de swap qu'une partition. La mise en place de ce fichier est faite en utilisant la commande dd.

La commande dd copie le fichier passé en entrée dans le fichier de sortie en limitant le nombre d'octets copiés par l'utilisation de deux options :

count

le nombre

bs

la taille du bloc à copier

Dans le cas du fichier swap il convient d'utiliser le fichier spécial /dev/zero en tant que fichier d'entrée. Le fichier /dev/zero contient une valeur null.

Pour créer votre fichier de swap de 256Mo, appelé swap, saisissez la commande suivante :

root@debian:~# dd if=/dev/zero of=/swap bs=1024k count=256
256+0 enregistrements lus
256+0 enregistrements écrits
268435456 octets (268 MB) copiés, 0,761336 s, 353 MB/s

Pour préparer le fichier en tant qu'espace de swap, saisissez la commande suivante :

root@debian:~# mkswap /swap
mkswap: /swap: warning: don't erase bootbits sectors
on whole disk. Use -f to force.
Setting up swapspace version 1, size = 262140 KiB
no label, UUID=1038c81c-4cd5-47fe-bd5d-7b38345ed504

Pour activer le fichier avec une priorité de 3, saisissez la commande suivante :

root@debian:~# swapon -p3 /swap

Pour visualiser les éspaces swap, saisissez la commande suivante :

root@debian:~# swapon -s
Filename	Type	Size	Used	Priority
/dev/sda5 partition	1951856	0	-1
/swap file	262136	0	3

<note important> Le fichier de swap ayant une priorité de 3 sera utilisé avant la partition de swap ayant une priorité de -1. </note>

Pour activer le fichier swap d'une manière permanente, il convient d'éditer le fichier /etc/fstab ainsi :

root@debian:~# cat /etc/fstab
# /etc/fstab: static file system information.
#
# Use 'blkid' to print the universally unique identifier for a
# device; this may be used with UUID= as a more robust way to name devices
# that works even if disks are added and removed. See fstab(5).
#
# <file system> <mount point> <type> <options> <dump> <pass>
proc /proc proc defaults 0 0
# / was on /dev/sda1 during installation
UUID=a42a1ddd-14bc-4dde-a537-e6c1b984a782 / ext3 errors=remount-ro 0 1
# swap was on /dev/sda5 during installation
UUID=e21d8931-21ca-4ab3-9fbb-bd71657b312e none swap sw 0 0
/swap	swap	swap	defaults,pri=3	0	0
/dev/scd0 /media/cdrom0 udf,iso9660 user,noauto 0 0

<note important> Ne modifiez pas votre fichier /etc/fstab car vous allez supprimer le fichier de swap. </note>

Désactivez maintenant le fichier swap :

root@debian:~# swapoff /swap
root@debian:~# swapon -s
Filename	Type	Size	Used	Priority
/dev/sda5 partition	1951856	0	-1

Supprimez maintenant le fichier de swap :

root@debian:~# rm /swap

~~DISCUSSION:off~~

Donner votre Avis

{(rater>id=debian_6_l109|name=cette page|type=rate|trace=user|tracedetails=1)}