2.4. Création d'une nouvelle partition

Comme la plupart des autres systèmes d'exploitation, LFS est habituellement installé sur une partition dédiée. Pour construire un système LFS, il est recommandé d'utiliser une partition vide disponible ou d'en créer une, si vous avez assez d'espace non partitionné.

Un système minimal requiert une partition d'environ 10 Go. Cet espace est suffisant pour conserver toutes les archives tar des sources et pour compiler tous les paquets. Néanmoins, si le système LFS a pour but d'être un système Linux primaire, des logiciels additionnels seront probablement installés et nécessiteront de l’espace supplémentaire. Une partition de 30 Go devrait suffire à garantir l’espace nécessaire à cette opération. Le système LFS en lui-même ne prendra pas tout cet espace. Une grande partie de cet espace servira à prévoir suffisamment d’espace temporaire libre ainsi qu’à accueillir des fonctionnalités supplémentaires une fois LFS terminé. De plus, la compilation des paquets peut demander beaucoup d'espace disque, qui sera récupéré après l'installation du paquet.

Parce qu'il n'y a pas toujours assez de mémoire vive (RAM) disponible pour les processus de compilation, il est conseillé d'utiliser une petite partition comme espace d'échange swap. Le noyau utilise cet espace pour stocker des données rarement utilisées et pour laisser plus de mémoire aux processus actifs. Il se peut que la partition swap pour un système LFS soit la même que celle utilisée par le système hôte, auquel cas il n'est pas nécessaire de créer une autre partition si votre système hôte possède déjà cette configuration.

Lancez un programme de partitionnement de disques, tel que cfdisk ou fdisk avec une option en ligne de commande nommant le disque dur sur lequel la nouvelle partition sera créée. Par exemple, on utilisera /dev/sda pour le disque primaire. Créez une partition Linux native et, si nécessaire, une partition swap. Référez-vous au manuel de cfdisk(8) ou de fdisk(8) si vous ne savez pas encore utiliser les programmes.

[Note]

Note

Pour les utilisateurs expérimentés, il est possible d'utiliser d'autres méthodes de partitionnement. Le nouveau système LFS peut être installé sur un logiciel RAID ou sur un volume logique LVM. Par contre, certaines options exigent un initramfs, qui concerne un sujet plus avancé. Ces méthodes de partitionnement ne sont pas recommandées pour les utilisateurs novices de LFS.

Retenez bien la désignation de la nouvelle partition (par exemple sda5). Elle sera référencée dans ce livre comme partition LFS. Gardez également en mémoire la désignation de la partition swap. Ces noms vous seront utiles pour le fichier /etc/fstab.

2.4.1. Autres problèmes liés au partitionnement

Les demandes de conseils par rapport au partitionnement du système sont souvent postées sur les listes de diffusion LFS. Ce sujet est très subjectif. Par défaut, la plupart des distributions utilisent le disque entier, sauf une petite partie réservée à la partition d'échange. Cette solution n'est pas optimale pour LFS, et ce pour plusieurs raisons. Cela réduit la flexibilité, complique le partage de données entre plusieurs distributions ou constructions LFS et allonge le temps de sauvegarde. Cela peut également faire perdre de l'espace disque à cause d’une allocation inefficace des structures de fichiers.

2.4.1.1. La partition racine

Une partition racine LFS (à ne pas confondre avec le répertoire /root), de 20 Go est un bon compromis pour la plupart des systèmes. Elle fournit assez d’espace pour construire LFS et une grande partie de BLFS, tout en étant assez petit pour que plusieurs partitions puissent être créées facilement à des fins expérimentales.

2.4.1.2. La partition d'échange (swap)

La plupart des distributions créent automatiquement une partition d'échange. En général, la taille recommandée pour une partition d'échange est à peu près deux fois supérieure à la taille de la RAM physique, bien que ce soit rarement nécessaire. Si votre espace disque est limité, laissez la partition d'échange à 2 Go et surveillez l'utilisation de la mémoire d'échange sur le disque.

Si vous voulez utiliser le mode hibernation (veille sur disque) de Linux, il transfère le contenu de la RAM vers la partition d'échange avant d'éteindre la machine. Dans ce cas, la partition d'échange doit être au moins aussi grande que la RAM installée sur le système.

L'utilisation de la mémoire d'échange n'est jamais une bonne chose. Avec un disque dur mécanique, vous pouvez déterminer si un système utilise la mémoire d'échange simplement en écoutant l'activité du disque et en observant la façon dont le système réagit aux commandes. Vous ne pourrez pas l'entendre utiliser l'espace d'échange avec un disque SSD, mais vous pouvez savoir combien d'espace d'échange est utilisé avec les programmes top et free. Si possible, vous devez éviter d'utiliser une partition d'échange sur un disque SSD. Lorsque la mémoire d’échange est utilisée, vous devez en premier lieu vérifier si l’une des commandes n'est pas insensée, comme par exemple l’édition d’un fichier de 5 Go. Si l'utilisation de la mémoire d'échange devient un phénomène habituel, la meilleure solution est d'ajouter de la mémoire RAM à votre système.

2.4.1.3. La partition Bios de Grub

Si le disque de démarrage est partitionné avec une table de partition GUID (GPT), alors une petite partition de l’ordre d’1 Mo doit être créée, si elle n’existe pas déjà. Cette partition n’est pas formatée, mais doit être disponible pour que GRUB l’utilise pendant l’installation du chargeur d’amorçage. Cette partition sera normalement intitulée « BIOS Boot » si vous utilisez fdisk ou aura le code EF02 avec gdisk.

[Note]

Note

La partition Bios de Grub doit se trouver sur le disque que le BIOS utilise pour démarrer le système. Il ne s’agit pas nécessairement du même disque que celui sur lequel la partition racine de LFS est installée. Les disques d’un système peuvent utiliser des types de tables de partitionnement différents. Seul le type de table de partitionnement du disque de démarrage détermine si cette partition est nécessaire ou non.

2.4.1.4. Partitions de commodité

Il existe d’autres partitions qui ne sont pas indispensables, mais que vous devez envisager lorsque vous aménagez un disque dur. La liste suivante n’est pas exhaustive mais a été conçue pour vous guider.

  • /boot – Fortement recommandée. Utilisez cette partition pour stocker les noyaux et d'autres informations de démarrage. Pour limiter les risques de problèmes de démarrage avec les disques volumineux, faites-en la première partition physique sur votre premier disque dur. Une taille de partition de 200 mégaoctets est parfaitement adaptée.

  • /boot/efi – La partition EFI système, qui est requise pour démarrer le système avec UEFI. Consultez la page BLFS pour plus d’informations.

  • /home – Fortement recommandée. Partage votre répertoire home et vos paramètres utilisateur entre plusieurs distributions ou constructions de LFS. La taille est généralement assez importante et dépend de l'espace disque disponible.

  • /usr – Dans LFS, /bin, /lib et /sbin sont des liens symboliques vers leurs équivalents dans /usr. Le dossier /usr contient tous les binaires nécessaires à l’exécution du système. Dans LFS, une partition séparée pour /usr n'est généralement pas requise. Si vous souhaitez quand même en créer une, vous devrez faire en sorte qu’elle soit assez grande pour contenir tous les programmes et bibliothèques du système. La partition racine de cette configuration peut être très petite (par exemple seulement un gigaoctet). Elle est donc parfaitement adaptée à un client léger ou une station de travail sans disque (où /usr est monté depuis un serveur distant). Cependant, il faut savoir que vous aurez besoin d’un initramfs (dont la construction n’est pas évoquée dans LFS) pour démarrer le système avec une partition /usr séparée.

  • /opt – Ce répertoire est surtout utile pour BLFS, où vous pouvez installer plusieurs versions de paquets volumineux tels que KDE ou Texlive sans incorporer les fichiers dans la hiérarchie /usr. Si vous l'utilisez, un espace de 5 à 10 gigaoctets est généralement adapté.

  • /tmp – On utilise rarement une partition /tmp séparée, mais cela peut être utile si vous configurez un client léger. Si vous l'utilisez, cette partition ne prendra en général pas plus de 2 Go d’espace. Si votre mémoire RAM est suffisante, vous pouvez monter un tmpfs sur le /tmp pour accéder plus rapidement aux fichiers temporaires.

  • /usr/src – Cette partition est très utile pour assurer un emplacement de stockage des fichiers source de BLFS et les partager entre les constructions LFS. Vous pouvez aussi l'utiliser comme un espace de construction des paquets BLFS. Une partition entre 30 et 50 gigaoctets offre suffisamment d’espace.

Vous devez spécifier toute partition que vous voulez monter automatiquement au démarrage dans /etc/fstab. La spécification des partitions sera expliquée en détails dans le Section 10.2, « Créer le fichier /etc/fstab ».