[ précédent ] [ Table des matières ] [ 1 ] [ 2 ] [ 3 ] [ 4 ] [ 5 ] [ 6 ] [ 7 ] [ 8 ] [ 9 ] [ 10 ] [ 11 ] [ 12 ] [ suivant ]

Installer Debian Linux 3.0 sur ARM
Chapitre 6 - Partitionnement pour Debian


Le menu « Partitionner un disque dur » vous présente la liste des lecteurs que vous pouvez partitionner et exécute un logiciel de partitionnement. Vous devez créer au moins une partition « Linux native » (type 83) et vous voudrez probablement au moins une partition « Linux Swap » (type 82).


6.1 Décider des partitions et de leurs tailles pour Debian

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 d'échange (swap) est nécessaire, bien que ce ne soit pas tout à fait vrai. Le « Swap » est l'espace de travail du système d'exploitation ; il lui permet d'utiliser de l'espace disque comme « mémoire virtuelle ». En le plaçant sur une partition séparée, Linux peut en faire un usage bien plus efficace. Il est possible de forcer Linux à utiliser un fichier normal comme espace d'échange, 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 concerne la sécurité. 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 incontrôlée. Si le processus à l'origine du problème possède des droits de super-utilisateur (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 d'échange) pour de nombreuses 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 messages électroniques peut facilement remplir une partition. En utilisant plusieurs partitions, vous protégez le système de beaucoup de ces problèmes. Pour reprendre encore l'exemple du courrier, en plaçant /var/mail sur sa propre partition, la majeure partie du système marchera même si vous êtes submergé de courrier non sollicité (spam).

Le seul inconvénient qu'il y a à utiliser plusieurs partitions est qu'il est souvent difficile de connaître ses besoins à l'avance. Si vous faites une partition trop petite, vous aurez soit à réinstaller le système soit à déplacer constamment des fichiers pour faire de la place sur la partition trop petite. D'un autre côté, si vous faites une partition trop grande, vous aurez perdu de l'espace pouvant être utile ailleurs. L'espace disque est bon marché de nos jours, mais pourquoi jeter votre argent par les fenêtres ?


6.2 L'arborescence des fichiers

Debian GNU/Linux adhère à la norme sur la hiérarchie du système de fichiers pour le nommage des fichiers et des répertoires. Cette norme permet aux utilisateurs et aux logiciels de prévoir l'emplacement des fichiers et des répertoires. Le répertoire racine est simplement représenté par la barre oblique /. Au niveau de la racine, tous les systèmes Debian incluent ces répertoires :

            bin       Binaires (exécutables) des commandes essentielles
            boot      Fichiers statiques pour le chargeur d'amorçage (boot)
            dev       Fichiers des pilotes de périphériques
            etc       Configuration système propre à la machine
            home      Répertoires personnels des utilisateurs
            lib       Bibliothèques partagées et modules noyaux essentiels
            mnt       Point de montage pour les montages temporaires 
            proc      Répertoire virtuel pour les informations systèmes
            root      Répertoire personnel de l'utilisateur root
            sbin      Exécutables système essentiels
            tmp       Fichiers temporaires
            usr       Hiérarchie secondaire
            var       Données variables
            opt       Suites applicatives additionnelles

La liste suivante décrit quelques caractéristiques importantes des répertoires et des partitions :


6.3 Schéma de partitionnement recommandé

Pour les nouveaux utilisateurs, les machines Debian personnelles ou familiales, et autres systèmes mono-utilisateurs, une simple partition / (plus celle d'échange) est sans doute la solution la plus simple. Cette idée peut cependant poser problème si vous possédez un gros disque, par exemple un disque dont la taille est supérieure ou égale à 20 Go. Les partitions ext2 connaissent des problèmes de performances dégradées lorsque l'on contrôle l'intégrité du système de fichiers dans le cas où les partitions ont une taille de plus de 6 Go.

Pour les systèmes multi-utilisateurs, ou les systèmes avec beaucoup d'espace disque, il vaut mieux placer les répertoires /usr, /var, /tmp, et /home chacun sur une partition distincte de la partition /.

Dans certains cas, vous pourriez avoir besoin d'une partition /usr/local distincte si vous prévoyez d'installer beaucoup de programmes qui ne font pas partie de la distribution Debian. Si votre machine est destinée à être un serveur de courrier, vous pourriez avoir besoin de mettre /var/mail sur une partition distincte. Parfois, mettre /tmp sur sa propre partition, par exemple 20 à 50 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 distincte pour /home. En général, la méthode de partitionnement varie d'un ordinateur à l'autre, en fonction de son usage.

Pour des systèmes très complexes, consultez le HOWTO Multi Disk. Il contient des informations très précises qui intéresseront les fournisseurs d'accès à Internet et les personnes installant des serveurs.

En ce qui concerne la taille de la partition d'échange (swap), les avis sont partagés. Une règle traditionnelle, qui fonctionne bien, est d'utiliser autant d'espace d'échange que de RAM. Dans la plupart des cas, cette taille ne devrait pas être inférieure à 16 Mo. 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 octet (ou plus) d'échange.

Sur les architectures 32 bits (i386, m68k, SPARC 32 bits et PowerPC), la taille maximale d'une partition d'échange est de 2 Go (sur les Alpha et les Sparc 64, elle est si grande qu'elle est virtuellement infinie). Cela devrait suffire pour presque tous les systèmes. De toute façon, si vos besoins en espace d'échange sont aussi importants, vous devriez probablement essayer de disperser les partitions d'échange sur des disques différents (appelés aussi « spindles ») et, si possible, sur des canaux IDE ou SCSI différents. Le noyau équilibrera l'utilisation de l'espace d'échange entre les différentes partitions, afin d'obtenir de meilleures performances.

Comme exemple, la machine de l'un des auteurs possède 32 Mo de RAM et un disque IDE de 1.7 Go sur /dev/hda. Il y a une partition de 500 Mo pour un autre système sur /dev/hda1 (qui aurait dû être créée de 200 Mo puisqu'elle n'est jamais utilisée). Une partition d'échange de 32 Mo est utilisée sur /dev/hda3 et le reste (environ 1,2 Go sur /dev/hda2) est la partition Linux.

Pour d'autres exemples, reportez-vous à un exemple de partitionnement. Pour avoir une idée de la place nécessaire pour les tâches que vous pourriez avoir envie de rajouter à la fin de votre installation, consultez : Ressources d'espace disque pour les tâches, Section 11.4.


6.4 Nommage des périphériques sous Linux

Le nom des disques et des partitions sous Linux est différent des autres systèmes d'exploitation. Vous devez connaître les noms utilisés lors de la création et du montage de partitions. Voici les principales 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 3 partitions, elles s'appelleront « sda1 », « sda2 » et « sda3 ». 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 ou les tailles des disques.


6.5 Programmes de partitionnement de Debian

Plusieurs sortes d'utilitaires de partitionnement ont été adaptés par les développeurs Debian pour tourner sur différents types de disques et d'architectures matérielles. Voici les programmes qui sont disponibles sur votre architecture :

fdisk
Le premier partitionneur de disque pour Linux, bon pour les gourous. Lisez la page de manuel de fdisk.

Faites attention si vous avez des partitions FreeBSD sur votre machine. Les noyaux d'installation incluent un support pour ces partitions, mais la façon dont fdisk les représente (ou pas) peut faire varier les noms de périphériques. Lisez attentivement le HOWTO Linux+FreeBSD ;

cfdisk
Un partitionneur simple à utiliser, fonctionnant en mode plein écran, pour nous autres. Lisez la page de manuel de cfdisk.

Remarquez que cfdisk ne comprend pas du tout les partitions FreeBSD et, de nouveau, les noms de périphériques peuvent varier.

L'un de ces programmes sera lancé par défaut quand vous sélectionnerez : « Partitionner un disque dur ». Si ce n'est pas celui que vous souhaitez utiliser, quittez le programme de partitionnement, allez à la console 2 (tty2) en appuyant simultanément sur les touches Alt et F2, et tapez manuellement dans le shell le nom du programme que vous voulez utiliser (et ses arguments, si nécessaire). Ensuite, sautez l'étape : « Partitionner un disque dur » de dbootstrap et continuez à l'étape suivante.

Si vous souhaitez que cela fonctionne avec plus de 20 partitions sur votre disque ide, vous devrez créer manuellement les périphériques pour les partitions 21 et supérieures. L'étape suivante d'initialisation de la partition échouera sauf si le bon périphérique est présent. Comme exemple, voici les commandes que vous pouvez utiliser dans tty2 ou sous Exécuter un shell, pour ajouter un périphérique de telle sorte que la 21e partition puisse être initialisée :

     cd /dev
     mknod hda21 b 3 21 
     chgrp disk hda21
     chmod 660 hda21

Le démarrage sur le nouveau système échouera sauf si les bons périphériques sont présents sur le système en question. Après avoir installé le noyau et les modules, exécutez :

     cd /target/dev
     mknod hda21 b 3 21 
     chgrp disk hda21
     chmod 660 hda21

6.6 Initialiser et activer une partition d'échange

Cette action sera l'étape suivante, une fois créées les partitions sur le disque. Vous avez le choix entre initialiser et activer une nouvelle partition d'échange, activer une partition précédemment initialisée, ou continuer sans partition d'échange. Il est toujours permis de réinitialiser une partition d'échange, choisissez donc : « Initialiser et activer une partition d'échange » à moins que vous ne soyez sûr de ce que vous faites.

Ce menu doit d'abord vous présenter la boîte de dialogue indiquant : « Veuillez choisir la partition à activer comme périphérique d'échange. ». Le périphérique présenté par défaut devrait être la partition d'échange préalablement définie ; si c'est bien le cas, pressez simplement Entrée.

Ensuite, il y a une demande de confirmation puisque l'initialisation détruira toutes les données déjà présentes sur la partition. Si vous êtes sûr de vous, choisissez : « Oui ». L'écran va changer pendant que le programme d'initialisation s'exécute.

Une partition d'échange est fortement recommandée, mais vous pouvez faire sans si vous êtes sûr de ce que vous faites, et si votre machine a au moins 16 Mo de RAM. Si c'est vraiment ce que vous voulez, sélectionnez l'entrée : « Continuer sans partition d'échange (swap) » du menu.


6.7 Initialiser une partition Linux

A cette étape l'option suivante du menu devrait être : « Initialiser une partition Linux ». Si ce n'est pas le cas, c'est parce que vous n'avez pas terminé la phase de partitionnement du disque ou que vous n'avez pas choisi l'une des options du menu concernant votre partition d'échange.

Vous pouvez initialiser une partition Linux, ou bien en monter une déjà initialisée. Notez que dbootstrap ne mettra pas à jour un ancien système sans le détruire. Pour une mise à jour, Debian dispose d'autres moyens et n'utilise pas dbootstrap. Pour des instructions sur la mise à jour vers un système Debian 3.0, voyez les instructions de mise à jour.

Donc, si vous utilisez d'anciennes partitions qui ne sont pas vides, c.-à-d. si vous acceptez de perdre ce qu'il y a dessus, vous devez les initialiser maintenant (ce qui supprime tous les fichiers). Vous devez initialiser toutes les partitions créées lors de l'étape de création des partitions. Une des seules raisons qui justifierait le montage d'une partition sans l'initialiser serait le montage d'une partition sur laquelle une partie de la procédure d'installation aurait été effectuée, avec le même jeu de disquettes d'installation.

Choisissez l'option : « Initialiser une partition Linux » du menu pour initialiser et monter la partition /. La première partition que vous montez ou initialisez sera celle montée sous /, la « racine ».

Il vous sera proposé de conserver la Compatibilité avec les noyaux antérieurs à 2.2 ?, c.-à-d. la compatibilité avec les noyaux antérieurs à 2.2. Répondre Non signifie que vous ne pourrez pas faire tourner de noyau plus ancien que 2.2 sur votre système, puisque le système de fichiers ajoute quelques fonctionnalités qui ne sont pas supportées dans le noyau 2.0. Si vous savez que vous n'aurez jamais besoin de faire tourner un noyau 2.0 ou antérieur, vous pouvez profiter de quelques améliorations mineures en répondant Non.

Il vous sera également proposé de vérifier la présence de blocs disque défectueux. La réponse par défaut est de passer outre ce test, car il peut prendre un certain temps, et d'autre part, les contrôleurs de disques modernes possèdent des systèmes internes de contrôle et de gestion des blocs défectueux. Par contre, si vous n'êtes pas certain de la qualité de votre disque dur, ou que vous possédez un système un peu vieux, il vaut peut-être mieux faire ce test des blocs défectueux.

Les questions suivantes sont simplement des points de confirmation. Il sera demandé de confirmer chaque action, étant donné que l'initialisation est destructive pour les données sur la partition, et vous serez informé que la partition est montée en tant que /, la partition racine [3].

Une fois que vous avez monté la partition /, si vous avez des systèmes de fichiers supplémentaires que vous voulez initialiser et monter, vous devrez utiliser l'option de menu : Autre choix. C'est nécessaire à ceux qui ont créé des partitions distinctes pour /boot, /var, /usr ou d'autres systèmes de fichiers : elles devraient être initialisées et montées maintenant.


6.8 Monter une partition Linux déjà initialisée

Une alternative à Initialiser une partition Linux, Section 6.7 est l'étape : « Monter une partition Linux déjà initialisée ». Utilisez celle-ci si vous reprenez une installation qui a planté, ou si vous voulez monter des partitions qui ont déjà été initialisées, ou qui contiennent des données que vous voulez préserver.

Si vous installez un poste de travail sans disque, vous devez maintenant monter en NFS votre partition racine, à partir du serveur NFS. Spécifiez le chemin du serveur NFS en suivant la syntaxe NFS standard, c'est-à-dire nom-ou-IP-du-serveur:répertoire-partagé. Si vous voulez monter des systèmes de fichiers supplémentaires, vous pouvez le faire maintenant.

Si vous n'avez pas encore configuré votre réseau comme décrit dans : Configurer le réseau, Section 7.6, le choix d'une installation NFS vous le proposera.


6.8.1 Précautions pour l'installation de la racine NFS (NFS Root)

Malheureusement, la version des boot-floppies contenue dans Woody ne tolère pas les verrous du programme dpkg pour l'installation de la racine NFS. Pour contourner ce problème, suivez les indications qui suivent, après avoir monté votre partage NFS sur /target. Cet exemple prend en considération l'installation à partir d'un cédérom, mais il peut tout aussi être appliqué pour une installation à partir de fichiers qui se trouveraient sur un partage NFS, monté sur /instmnt (qui est l'endroit où le logiciel d'installation monte généralement les supports d'installation).

Pour activer le verrouillage NFS, prenez vos pré-dispositions pour que cette séquence de commande soit disponible sur le partage NFS, ou bien créez-la en utilisant nano-tiny.

     #!/bin/sh
     mount /dev/hdc /instmnt  # échange votre lecteur de cédérom pour /dev/hdc
     cd /target
     mkdir x
     cd x
     for i in g/glibc/libc6 t/tcp-wrappers/libwrap0 p/portmap/portmap n/nfs-utils/nf
     s-common
     do
       ar -x /instmnt/pool/main/$i''_*.deb
       zcat data.tar.gz | tar x
     done
     umount /instmnt
     mkdir -p /var/lib/nfs
     for i in portmap rpc.statd
     do
       LD_LIBRARY_PATH=lib sbin/$i
     done

Installez maintenant le système de base comme d'ordinaire. Puis installez le paquet nfs-common :

     $ umount /instmnt
     $ chroot /target /bin/sh
     $ apt-cdrom add
     $ apt-get install nfs-common

Le message d'avertissement sur l'abscence de /proc peut être ignoré, étant donné que portmap et statd tournent déjà.

Vous aurez besoin d'un noyau compilé avec CONFIG_ROOT_NFS. Celui qui se trouve sur le cédérom d'installation ne l'est pas. Si vous n'en possédez pas et que nous ne pouvez pas le construire sur une autre machine, vous devez en construire un maintenant, dans le chroot.

     $ apt-get install gcc make libc6-dev kernel-source-2.4.18 less screen links lyn
     x wget ftp # etc.

Lorsque vous aurez fait ce qu'il faut pour amorcer le nouveau noyau, utilisez le partage NFS comme périphérique racine (root device), et quittez proprement :

     $ exit # du shell en environnement chroot
     $ cd /
     $ killall portmap rpc.statd
     $ umount /target

Puis redémarrez. Si cela échoue, lancez l'installation à partir du cédérom, attachez le partage NFS sur /target, activez le verrouillage NFS, exécutez

     chroot /target

, et faites ce que vous avez oublié de faire, quittez proprement. Si cela échoue, essayez encore, bonne chance.


6.9 Monter des partitions non gérées par dbootstrap

Dans certains cas particuliers, dbootstrap pourrait ne pas savoir comment monter votre système de fichiers (que ce soit la racine ou un autre). Il vous est possible, si vous êtes un utilisateur expérimenté de Linux, de passer en tty2, en appuyant simultanément sur les touches Alt et F2, et d'exécuter manuellement les commandes nécessaires pour monter la partition en question.

Si vous désirez monter la partition racine de votre nouveau système, montez-la sur /target, retournez sur dbootstrap, et reprenez le processus (éventuellement en lançant l'étape : « Regarder la table des partitions », qui permet à dbootstrap de se recaler dans le processus d'installation.

Pour les partitions autres que la racine, vous devez vous rappeler que vous devez modifier manuellement votre nouveau fichier fstab de manière à ce que vos partitions soient montées au démarrage. Attendez bien sûr que le fichier /target/etc/fstab soit écrit par dbootstrap avant de l'éditer.


[ précédent ] [ Table des matières ] [ 1 ] [ 2 ] [ 3 ] [ 4 ] [ 5 ] [ 6 ] [ 7 ] [ 8 ] [ 9 ] [ 10 ] [ 11 ] [ 12 ] [ suivant ]

Installer Debian Linux 3.0 sur ARM

version 3.0.24, 18 December 2002

Bruce Perens
Sven Rudolph
Igor Grobman
James Treacy
Adam Di Carlo