Partitionner votre disque signifie simplement découper votre disque en sections. Chaque section est alors indépendante des autres. Cela équivaut approximativement à monter des murs dans une maison ; si vous ajoutez du mobilier dans une pièce, cela n'affecte pas les autres pièces.
Si vous avez déjà un OS sur votre système (Windows95, WindowsNT, OS/2, MacOS, Solaris, FreeBSD) et que vous voulez placer Linux sur le même disque, vous allez avoir probablement besoin de repartitionner le disque. En général, changer une partition contenant déjà un système de fichiers y détruira toute information. Donc vous devriez toujours faire des sauvegardes avant tout repartitionnement. Pour poursuivre l'analogie avec la maison, vous auriez probablement eu envie de déplacer tout le mobilier ailleurs avant de bouger un mur au lieu de risquer de le détruire. Heureusement, il y a une alternative pour certains utilisateurs; voir le chapitre Repartionnement sans perte sous DOS,Windows-32 ou OS/2, Section 4.6.
Au strict minimum, GNU/Linux a besoin d'une partition pour lui-même. Vous pouvez avoir une seule partition contenant le système entier, les applications et vos fichiers personnels. La plupart des gens pensent qu'une partition de swap est nécessaire bien que ce ne soit pas tout à fait vrai. Le « Swap » est un espace de travail pour un système d'exploitation, qui permet au système d'utiliser de l'espace disque de faible coût comme « mémoire virtuelle »». En le mettant sur sa propre partition, Linux peut en faire usage bien plus efficace (il est possible de forcer Linux à utiliser un fichier normal comme swap, mais ce n'est pas recommandé).
La plupart des gens choisissent d'utiliser plus de partitions que le minimum requis pour GNU/Linux. Il y a deux raisons pour que vous ayez envie de diviser le système de fichiers en de nombreuses petites partitions. La première étant la tranquillité. Si le système de fichiers est corrompu, en général une seule partition est affectée. Donc, vous n'avez à remplacer (à partir des sauvegardes que vous avez soigneusement conservées) qu'une partie de votre système. Au minimum, vous devriez envisager la création de ce qui est communément appelée la « partition racine ». Elle contient les composants les plus essentiels du système. Si une autre partition est corrompue, vous pourrez toujours amorcer Linux pour réparer le système. Cela peut vous épargner le désagrément d'avoir à réinstaller le système entier.
La seconde raison est généralement plus importante pour une
entreprise, mais cela dépend vraiment de l'utilisation de votre machine.
Supposons que quelque chose commence à consommer de l'espace disque de
façon incontrolée.
Si le processus causant le problème se révèle avoir les droits de root (le système
interdit un pourcentage du disque aux utilisateurs), vous pourriez
soudainement vous trouver à court d'espace disque. Ce n'est pas bon
car l'OS a besoin d'utiliser des fichiers réels (en dehors de l'espace
de swap) pour de nombreuse tâches.
Cela pourrait même ne pas être un problème provenant de votre machine locale.
Par exemple, recevoir des envois en nombre de courriers électroniques peut facilement
remplir une partition. En utilisant plus de partitions, vous protégez
le système de beaucoup de ces problèmes. Pour reprendre encore l'exemple du
courrier, en plaçant /var/spool/mail sur sa propre
partition, la majeure partie du système marchera même si vous êtes
submergé de courrier.
Il est aussi possible que vous possédiez un gros disque IDE qui n'utilise ni l'adressage LBA ni un pilote d'extension fourni habituellement par le fabriquant du disque dur. Dans ce cas, vous aurez à mettre la partition racine dans les 1024 premiers cylindres de votre disque (habituellement environ 524 Mo).
Le seul inconvénient qu'il y a à utiliser plus de partitions est qu'il est souvent difficile de connaître ses besoins à l'avance. Si vous faites une partition trop petite alors vous aurez soit à réinstaller le système soit à déplacer constamment des fichiers pour faire de la place sur la partition sous-dimensionnée. D'un autre coté, si vous faites une partition trop grande, vous aurez perdu de l'espace pouvant être utilisé ailleurs. L'espace disque est bon marché de nos jours, mais pourquoi jeter votre argent par les fenêtres ?
Les BIOS des PC ont généralement leurs propres contraintes pour le
partitionnement des disques. Il y a une limite sur le nombre de
partitions « primaires » et « logiques » qu'un disque peut contenir.
De plus, il y a des limites sur la localisation des partitions à
partir desquelles on peut démarrer le système. Vous trouverez plus
d'information dans Linux Partition HOWTO, mais cette
section contient un bref survol pour vous aider à vous organiser dans
la plupart des situations.
À l'origine, le système de partionnement des disques de PC est basé sur les partitions « primaires ». Mais il ne peut y en avoir que quatre. Pour passer outre cette limitation, des partitions « étendues » et « logiques » ont été inventées. En configurant une partition primaire en partition étendue, vous pouvez subdiviser l'espace alloué à cette partition en partitions « logiques ». Le nombre de partitions logiques n'est pas limité ; en revanche, il ne peut y avoir qu'une seule partition étendue par disque.
Linux limite le nombre de partitions à 15 par disques SCSI (3 partitions primaires utilisables et 12 partitions logiques) et à 63 par disques IDE (3 partitions primaires et 12 partitions logiques).
Le dernier point à connaître est que la partition de démarrage du système (boot), c'est à dire celle qui contient l'image du noyau doit être placée dans les 1024 premiers cylindres du disque. Comme, en général, la partition de boot est aussi la partition racine, vous devez vous assurez que celle-ci est entièrement contenue dans les 1024 premiers cylindres.
Si vous avez un gros disque, vous devrez peut-être utiliser des
techniques de translation de cylindres que vous pouvez configurer
dans le BIOS comme le mode de translation LBA. Vous trouverez des
informations sur le thème des gros disques dans le
Large Disk HOWTO.
Si vous utilisez une méthode de translation de cylindres, votre
partition de démarrage doit être contenue dans la partie correspondant
aux 1024 premiers cylindres translatés.
Le nom des disques et des partitions sous Linux différent des autres systèmes d'exploitation. Vous devez connaître les noms utilisés lors du partionnement. Voici les conventions de nommage :
Les partitions sur chaque disque sont représentées en ajoutant un numéro au nom du disque : « sda1 » et « sda2 » représentent la première et la seconde partition du premier disque SCSI du système.
Voici un exemple concret. Supposons que vous ayez deux disques SCSI, l'un à l'adresse SCSI 2 et l'autre à l'adresse 4. Le premier disque (à l'adresse 2) est nommé « sda », et le second « sdb ». Si le disque « sda » a 5 partitions, elles s'appelleront « sda1 », « sda2 », ..., « sda5 ». La même convention s'applique au disque « sdb » et ses partitions.
Notez que si vous avez deux adaptateurs SCSI (càd des contrôleurs), l'ordre de nommage des disques peut-être embrouillé. La meilleure solution est de regarder les messages au démarrage en supposant que vous connaissiez les modèles des disques.
Linux représente les partitions primaires par le nom du disque suivi
des nombres 1 à 4. Par exemple la première partition sur le premier
disque IDE est /dev/hda1. Les partitions logiques sont
numérotées à partir de 5. Donc, la première partition logique sur ce
même disque est /dev/hda5. Rappelez-vous que la partition
étendue, c'est à dire la partition primaire contenant les partitions
logiques n'est pas utilisable en elle-même.
Comme décrit ci-dessus, si vous avez de la place, vous devriez vraiment
avoir une petite partition racine séparée et une plus grande pour
/usr. Pour des exemples, voir ci-dessous. Pour la plupart
des utilisateurs, les deux partitions mentionnées sont suffisantes.
C'est particulièrement vrai lorsque vous n'avez qu'un seul petit disque,
puisque diviser en beaucoup de partitions peut faire perdre de l'espace.
Dans certains cas, vous pourriez avoir besoin d'une partition
/usr/local séparée si vous prévoyez d'installer beaucoup de
programmes qui ne font pas partie du système d'exploitation. Si votre
machine est destinée à être utilisée comme serveur de courrier, vous pourriez avoir besoin de faire
de /var/spool/mail une partition séparée. Parfois, mettre
/tmp sur sa propre partition, par exemple 20 ou 32 Mo est une
bonne idée. Si vous mettez sur pied un serveur avec beaucoup de comptes
utilisateurs, il est généralement intéressant d'avoir une grande partition
séparée pour /home. En général, la méthode de partitionnement
varie d'un ordinateur à l'autre en fonction de leur usage.
Pour des systèmes très complexes, consultez le Multi Disk HOWTO. Il contient des
informations très précises qui intéresseront les fournisseurs d'accès
et les personnes installant des serveurs.
En ce qui concerne la taille de la partition de swap, les avis sont partagés. Une règle traditionnelle qui fonctionne bien est d'utiliser autant de swap que de RAM, bien qu'il n'y ait probablement pas besoin d'aller plus loin que 64 Mo de swap pour la plupart des utilisateurs. Il ne devrait pas y avoir moins de 16 Mo dans la plupart des cas. Bien sûr, il y a des exceptions. Si vous essayez de résoudre 10000 équations simultanément sur une machine avec 256 Mo de RAM, vous pourriez avoir besoin d'un giga octets (ou plus) de swap.
Notez que Linux n'utilisera pas plus de 128 Mo de swap sur une
partition. En revanche, vous pouvez créer plusieurs partitions de swap
à la main et éditer le fichier /etc/fstab pour avoir plus
de 128 Mo.
Si vos besoins en swap sont si importants, de toute façon, vous devriez probablement
essayer de disperser le swap sur des disques différents (appelés aussi « spindles »).
Comme exemple, la machine de l'auteur possède 32 Mo de RAM et un disque
IDE de 1.7 Go sur /dev/hda. Il y a une partition DOS de
500 Mo sur /dev/hda1 (qui aurait du être créée avec 200 Mo
puisqu'elle n'est jamais utilisée). Une partition de swap de 32 Mo est
utilisée sur /dev/hda3 et le reste (environ 1.2 Go sur
/dev/hda2) est la partition Linux.
Vous pouvez partitionner soit avant l'installation de Debian, soit pendant.
Si vous manipulez des partitions FAT ou NTFS existantes, il est recommandé de suivre la méthode ci-dessous ou des utilitaires DOS ou Windows. Sinon, il n'est pas utile de partitionner à partir de DOS ou Windows ; les outils de partitionnement Linux sont généralement meilleurs.
L'une des installations les plus courantes consiste en un système qui contient déjà DOS (y compris Windows3.1), Win32 (comme Windows 95 et 98 (ou NT??)), ou OS/2 et où on désire faire l'installation de Debian sur le même disque, sans destruction du précédent système. Comme cela est expliqué dans la Définition, Section 4.1, faire décroître la taille d'une partition existante endommagera sans aucun doute les données sur cette partition si certaines précautions ne sont pas prises. La méthode décrite ici, bien que ne garantissant pas la protection de vos données, fonctionne extrêmement bien en pratique. Par précaution, vous devriez faire une sauvegarde.
Avant d'aller plus loin, vous devez avoir décidé comment vous allez diviser le disque. La méthode présentée dans ce chapitre ne vise qu'à découper une partition en deux parties. L'une contiendra l'OS original et l'autre sera utilisée pour Debian. Pendant l'installation de Debian, vous aurez l'opportunité de finir la division de la partie Debian du disque comme vous le souhaitez.
L'idée est de déplacer toutes les données au début de la partition, avant de changer les caractéristiques de la partition, ainsi rien ne sera perdu. Il est important que vous ne fassiez le moins de chose possible entre le déplacement des données et le repartitionnement pour minimiser la chance qu'un fichier soit écrit près de la fin de la partition puisque cela diminuerait la quantité d'espace pouvant être prise sur la partition.
Il faut tout d'abord une copie de fips qui est
disponible dans le répertoire tools/ de votre miroir Debian le plus proche.
Décompressez l'archive et copiez les fichiers RESTORRB.EXE,
FIPS.EXE et ERRORS.TXT sur une disquette amorçable.
Une disquette amorçable peut être créée en utilisant la commande sys a:
sous DOS. fips est fourni avec une très bonne documentation que vous pourriez
avoir envie de lire. Vous aurez forcément besoin de lire la documentation
si vous utilisez un pilote de compression de disque ou un gestionnaire
de disque.
Créez la disquette et lisez la documentation avant de défragmenter
le disque.
L'étape suivante nécessaire consiste à déplacer toutes les données au début de
la partition. L'utilitaire defrag, qui est livré en standard avec DOS 6.0 et
les versions supérieures peut facilement faire ce travail. Consultez la documentation
de fips pour une liste des autres logiciels qui peuvent faire l'affaire. Notez que
si vous avez Windows95, vous devez lancer defrag depuis celui-ci,
puisque DOS ne comprend pas le type de table d'allocation FAT32
utilisé parfois à partir de la version Windows 95.
Après avoir exécuté la défragmentation (qui peut prendre du temps sur un grand
disque), réamorcez avec la disquette fips que vous avez créée dans le lecteur
de disquette. Tapez simplement a:\fips et suivez les instructions.
Remarquez qu'il y a beaucoup d'autres utilitaires de partitionnement
au cas ou fips ne vous convient pas.
Si vous partitionnez des disques DOS, ou si vous changez la taille de
partitions DOS, sachez que beaucoup de problèmes ont été constatés sur
les partitions FAT obtenues. Par exemple, on a remarqué des problèmes
de performance ou de cohérence avec scandisk, ainsi que
d'erreurs bizarres.
Apparemment, chaque fois que vous créez ou que vous redimensionnez une
partition destinée à être utilisée sous DOS, c'est une bonne idée de
remplir quelques uns des premiers secteurs de zéros. Faites ceci depuis
Linux avant de lancer la commande DOS format :
dd if=/dev/zero of=/dev/hdXX bs=512 count=4