Page suivantePage pr�c�denteTable des mati�res

2. Qu'est-ce qu'une partition ?

Lorsque les disques durs pour PC ont �t� mis au point, on a rapidement cherch� � avoir la possibilit� d'installer plusieurs syst�mes d'exploitation, m�me si on ne disposait que d'un seul disque. Par cons�quent, il fallait un proc�d� permettant de diviser un seul disque physique en plusieurs disques logiques. Une partition, c'est justement cela : une section contigu� de blocs sur le disque dur, consid�r�e comme un disque totalement ind�pendant par la plupart des syst�mes d'exploitation.

Il est bien �vident que les diff�rentes partitions ne doivent pas se recouvrir : un syst�me d'exploitation n'appr�ciera certainement pas qu'un autre OS install� sur la m�me machine �crase des donn�es importantes � cause d'un tel recouvrement. D'autre part, il ne devrait pas non plus y avoir de "trou" entre deux partitions adjacentes. Bien que ce ne soit pas nuisible en soi, vous g�cheriez une place pr�cieuse en laissant vides de tels espaces.

Il n'est pas indispensable que le disque soit enti�rement partitionn�. Vous pouvez d�cider de laisser de la place � la fin du disque qui ne soit attribu�e � aucun de vos syst�mes d'exploitation. Par la suite, lorsque vous saurez quel syst�me vous utilisez le plus souvent, vous pourrez partitionner l'espace restant, et cr�er dessus un syst�me de fichier appropri�.

Les partitions ne peuvent �tre ni d�plac�es, ni redimensionn�es sans d�truire le syst�me de fichiers qui s'y trouve. C'est pourquoi modifier la table de partition implique g�n�ralement de sauvegarder puis de restaurer tous les syst�mes de fichiers touch�s par cette op�ration. En fait il est assez facile de faire des d�g�ts irr�parables en repartitionnant, et vous devriez faire une sauvegarde int�grale de tous les disques de la machine en question avant m�me de penser � utiliser un utilitaire comme fdisk.

Bon, � vrai dire, certaines partitions contenant certains types de syst�me de fichiers peuvent �tre coup�es en deux sans perte de donn�es (si vous avez de la chance). Par exemple, il y a un utilitaire appel� fips pour couper en deux les partitions MS-DOS, ce qui permet de cr�er un espace pour installer Linux sans avoir � r�installer MS-DOS. Mais vous n'avez pas vraiment l'intention de jouer avec �a sans sauvegarder soigneusement tout ce qui ce trouve sur votre machine ?

2.1 Les sauvegardes sont importantes

Pour les sauvegardes, les lecteurs de bandes sont vos amis. Ils sont rapides fiables et faciles � utiliser, ce qui permet de faire de fr�quentes sauvegardes, de pr�f�rence automatiquement, et sans s'emb�ter.

Je tiens particuli�rement � insister sur les points suivants : je parle de vrais lecteurs de bandes, pas de cette daube de ftape pilot�e par le contr�leur du disque. Envisagez d'investir dans le SCSI : Linux supporte le SCSI de fa�on native. Vous n'aurez pas besoin de t�l�charger des pilotes ASPI. Vous ne perdrez pas non plus de pr�cieuses HMA sous Linux d�s que vous aurez install� votre contr�leur SCSI, vous n'aurez plus qu'� y ajouter vos disques durs, lecteur de bandes et lecteurs CDROM. Pas d'autres adresses I/O, plus besoin de jongler avec les IRQ, ni de s'inqui�ter des compatibilit�s ma�tre/esclave ou des niveaux PIO. En outre, un contr�leur SCSI appropri� vous donne de hautes performances I/O sans augmenter notablement la charge du CPU. M�me en cas de grande activit� du disque, vous pourrez constater de bons temps de r�ponse. Si vous envisagez d'utiliser un syst�me Linux comme un centre de distribution de news, ou si vous vous appr�tez � vous lancer dans le domaine des services d'acc�s � Internet, ne pensez m�me pas � un syst�me sans SCSI.

2.2 Noms et num�ros des p�riph�riques

Le nombre de partitions sur un syst�me � base d'Intel � �t� limit� depuis le commencement : la table de partitions originale faisait partie int�grante du secteur d'amor�age, et la place pr�vue nous limitait � quatre partitions. Ces partitions sont maintenant appel�es partitions primaires. Lorsqu'il est devenu �vident que beaucoup avaient besoin de plus de quatre partitions sur leurs syst�mes, les partitions logiques ont �t� cr��es. Le nombre de partitions logiques n'est pas limit� : chaque partition logique contient un pointeur sur la suivante, et par cons�quent, vous disposez potentiellement d'une liste non limit�e de partitions.

Pour des raisons de compatibilit�, l'espace occup� par les partitions logiques doit �tre comptabilis�. Si vous utilisez les partitions logiques, une des partitions primaires est donc not�e "partition �tendue" ; son bloc initial et son bloc final d�limitent l'espace occup� par les partitions logiques. Ceci signifie que l'espace attribu� pour toutes les partitions logiques doit �tre contigu. Il ne peut y avoir qu'une seule partition �tendue : aucun fdisk n'acceptera de cr�er plus d'une partition �tendue.

Linux ne peut prendre en charge qu'un nombre limit� de partitions par disque. Ainsi avec Linux, vous disposez de 4 partitions primaires (dont 3 utilisables si vous utilisez les partitions logiques) et au mieux 15 partitions en tout sur un disque SCSI (63 en tout sur un disque IDE).

Sous Linux, les partitions sont identifi�es par des fichiers p�riph�riques. Un fichier p�riph�rique est un fichier de type c (pour p�riph�rique "caract�re", les p�riph�riques qui ne font pas usage de la cache tampon) ou b (pour p�riph�rique "bloc", qui font usage de la cache tampon). Sous Linux, tous les disques sont repr�sent�s sous la forme de p�riph�riques blocs uniquement. Contrairement � d'autres Unix, Linux ne propose pas de version strictement caract�re des disques et de leurs partitions.

Les seules choses importantes � retenir d'un fichier p�riph�rique sont ses num�ros de p�riph�rique, majeur et mineur, affich�s � la place de la taille du fichier :


$ ls -l /dev/hda
brw-rw----   1 root     disk       3,   0 Jul 18  1994 /dev/hda
 ^    ^
 |    num�ro p�riph�rique mineur
 num�ro p�riph�rique majeur

Lorsqu'on acc�de au fichier p�riph�rique, le num�ro majeur d�termine quel pilote p�riph�rique va �tre appel� pour r�aliser l'op�ration d'entr�e/sortie. Cet appel est fait en prenant comme param�tre le num�ro mineur, et c'est l'affaire du pilote d'interpr�ter correctement ce num�ro mineur. La documentation du pilote d�crit g�n�ralement la mani�re dont il interpr�te ces num�ros mineurs. Pour les disques IDE, cette documentation se trouve dans /usr/src/linux/Documentation/ide.txt. Pour les disques SCSI, on s'attendrait � trouver la documentation dans /usr/src/linux/Documentation/scsi.txt, mais elle ne s'y trouve pas. Il peut �tre n�cessaire de consulter la source du pilote pour �tre s�r (/usr/src/linux/driver/scsi/sd.c:184-196). Heureusement, il y a la liste des noms et num�ros de p�riph�riques de Peter Anvin dans /usr/src/linux/Documentation/devices.txt; reportez vous dans cette liste � block devices, major 3, 22, 33, 34 pour les disques IDE, et major 8 pour les disques SCSI. Les num�ros majeurs et mineurs sont cod�s chacuns sur un bit, ce qui explique pourquoi le nombre de partition par disque est limit�.

Par convention, les fichiers p�riph�riques ont un nom d�fini, et la plupart des utilitaires syst�me sont compil�s en ayant connaissance de ces noms. Ils s'attendent � ce que vos disques IDE s'appellent /dev/hd* et vos disques SCSI /dev/sd*. Les disques sont num�rot�s a, b, c et ainsi de suite, donc /dev/hda est votre premier disque IDE, et /dev/sda votre premier disque SCSI. Chaque p�riph�rique repr�sente un disque � part enti�re d�marrant au bloc un. �crire sur un de ces p�riph�riques avec les mauvais utilitaires d�truira l'enregistrement principal d'initialisation (MBR) et la table de partition, ce qui rendra toutes les donn�es de ce disque inutilisables, et le syst�me ne pourra plus d�marrer sur ce disque. Donc soyez s�rs de ce que vous faites, et encore une fois, sauvegardez avant de faire quoi que ce soit.

Les partitions primaires sur le disques sont num�rot�es 1, 2, 3 et 4. Par cons�quent, /dev/hda1 est la premi�re partition primaire du premier disque IDE, et ainsi de suite. Les partitions logiques se voient attribuer les num�ros 5 et suivants; /dev/sdb5 est donc la premi�re partition logique du second disque SCSI.

Chaque partition se voit attribuer deux adresses pour les blocs initial et final, ainsi qu'un type. Le type est un code num�rique (un bit) qui d�finit une partition pour un syst�me d'exploitation donn�. Pour la plus grande joie des experts, il n'existe pas vraiment de code unique d�finissant les diff�rents types de partition, aussi il y a toujours une possibilit� que deux syst�mes d'exploitation utilisent le m�me code pour des partitions de type diff�rent.

Linux r�serve les codes 0x82 pour les partitions swap, et 0x83 pour les syst�mes de fichier "natif" (c'est � dire ext2 pour la plupart d'entre vous). Autrefois populaire et maintenant p�rim�, le syst�me de fichiers Linux/Minix utilisait le code 0x81 pour ses partitions. OS/2 marque ses partitions du type 0x07, tout comme les NTFS de Windows NT. MS-DOS attribue plusieurs codes pour les diff�rentes FAT de ses syst�mes de fichier : on conna�t 0x01, 0x04 et 0x06. DR-DOS utilisait 0x81 pour indiquer une partition FAT prot�g�e, ce qui g�n�rait un conflit avec les partitions Linux/Minix, mais ni l'une ni l'autre ne sont tr�s utilis�es maintenant. La partition �tendue qui sert de container pour les partitions logiques � le code 0x05.

Les partitions sont cr��es et supprim�es avec l'utilitaire fdisk. Tout syst�me d'exploitation qui se respecte poss�de un fdisk, qui d'ailleurs est traditionnellement appel� fdisk (ou FDISK.EXE) dans quasiment tous les OS. Certains fdisk, dont celui du DOS, sont quelque peu limit�s pour g�rer les partitions d'autres syst�mes d'exploitation. Parmi ces limites, l'impossibilit� de prendre en compte tout ce qui est identifi� par un code de type �tranger, l'impossibilit� de prendre en compte plus de 1024 cylindres, et l'impossibilit� de cr�er ou m�me de reconna�tre une partition dont la fin ne co�ncide pas avec la borne d'un cylindre. Par exemple, le fdisk de MS-DOS ne peut pas supprimer les partitions NTFS, le fdisk de OS/2 �tait r�put� pour "corriger" silencieusement les partition cr�es par le fdisk de Linux dont la fin ne co�ncidait pas avec une borne de cylindre, et tant le fdisk de MS-DOS que celui de OS/2 ont eu des probl�mes avec les disques de plus de 1024 cylindres (reportez-vous au "large-disk Mini-HOWTO" pour de plus amples d�tails sur ces disques).


Page suivantePage pr�c�denteTable des mati�res

Hosting by: Hurra Communications GmbH
Generated: 2007-01-26 18:01:22