« Debootstrap » : différence entre les versions

De Linux Server Wiki
Aller à la navigation Aller à la recherche
Aucun résumé des modifications
Aucun résumé des modifications
Ligne 1 : Ligne 1 :
[[category:debian]]
[[category:debian]]
[[category:serveur]]
[[category:serveur]]
[[Category:trixie]]
Debootstrap permet d'installer une distribution debian sur un point de montage en utilisant une debian en service.
Debootstrap permet d'installer une distribution debian sur un point de montage en utilisant une debian en service.


Pour commencer, installer debootstrap :
=Prérequis=
<pre>
aptitude install debootstrap
</pre>


La syntaxe est la suivante :
Ce tutoriel se base sur l'utilisation de debootstrap pour installer une base de système d'exploitation debian. La plupart des hébergeurs proposent un système de "rescue" permettant l'installation de debian par ce moyen.
<pre>
Si vous ne disposez pas de mode rescue, vous pouvez toujours utiliser l'installeur proposé par votre hébergeur, ou encore passer par un kvm pour installer vous même le système avec l'iso de debian.
debootstrap <version> <point de montage>
</pre>


L'actuelle version stable de debian est <code>squeeze</code>.
=Pour les débutants=


Pour installer une architecture précise, spécifier l'option <code>--arch=<architecture</code>
Si vous êtes débutant en administration linux, je vous conseil de sauvegarder quelque part les fichier suivant issu d'une précédente installation de debian ou de proxmox
Les architectures les plus courantes :
* <code>/etc/networks</code>
* <code>amd64</code> pour les microprocesseurs supportant les jeux d'instruction 64 bits. Parfois appelé <code>x86-64</code> ou <code>EM64T</code>.
* <code>/etc/network/interfaces</code>
* <code>i386</code> pour les microprocesseurs plus anciens ne supportant que les instructions 32 bits. Aussi appelé <code>x86</code> ou <code>x86-32</code>.
* <code>/etc/resolv.conf</code>
* <code>ia64</code> pour les microprocesseurs Itanium et Itanium 2 de intel
* <code>/etc/hosts</code>
* <code>armel</code> pour les microprocesseurs ayant une architecture ARM, fréquemment utilisés dans les téléphones mobiles, smartphone et tablettes du fait de leur faible consommation.
* <code>/etc/fstab</code>
* <code>/etc/mdadm/mdadm.conf</code> si vous disposez d'un raid logiciel
* tout fichier de personnalisation de grub (<code>/etc/grub.d/</code> par exemple)


Je vais prendre l'installation de debian par debootstrap en mode rescue chez ovh comme exemple.
Cela vous permettra de vous faire une idée plus précise de ce qui doit figurer dans ces différents fichiers.


Fichiers à sauvegarder issu d'une ancienne installation : /etc/networks, /etc/network/interfaces, /etc/resolv.conf, /etc/hosts, /etc/fstab, /etc/lilo.conf, /etc/default/rcS (pour vous simplifier la vie).
=Partitionnement et système de fichier=


Si votre hébergeur fourni un fichier de configuration personnalité pour grub, sauvegardez le (/etc/grub.d/06_OVHkernel chez ovh).
Voici le partitionnement que je vais utiliser :
* Partition root (/) de 20 Go (/) en raid 1 sur les disques sda et sdb
* Partitions swap de 4096 Go chacune réparties sur sda et sdb
* Le reste de l'espace sera utilisé plus tard pour un LVM dédié aux VMs


Pour commencer, rebootez votre serveur en mode rescue.
==Partitionnement==


=Partitionnement=
===Possibilité 1 : Partitionnement GPT pour EFI / UEFI===


Utilisez <code>cfdisk</code> puis <code>mkfs.ext4</code> et <code>mkswap</code> pour formater les partitions.
Nous allons créer avec <code>gdisk</code> 3 partitions sur chaque disque :
* sda1 et sdb1 : partitions EFI (ESP), obligatoire pour le démarrage EFI/UEFI. Il faudra leur attribuer le type <code>EF00</code>. Pour assurer une bonne compatibilité avec les multiples firmwares EFI, il est recommandé de leur attribuer une taille de 512 MiB (+512M au prompt gdisk).
* sda2 et sdb2 : partitions pour le raid root (/). Il faudra leur attribuer le type <code>FD00</code>.
* sda3 et sdb3 : partitions swap séparées. Il faudra leur attribuer le type <code>8200</code>.


=Installation=
<br>


Lancez debootstrap :
Pour les partitions EFI, nous créons un système de fichier FAT32 avec le label (nom) <code>EFI_SYSPART</code> :
<pre>
<pre>
mount /dev/sda1 /mnt
mkfs.fat -F 32 -n EFI_SYSPART /dev/sda1
debootstrap --arch=amd64 squeeze /mnt
mkfs.fat -F 32 -n EFI_SYSPART /dev/sdb1
...
I: Base system installed successfully.
</pre>
</pre>


=Configuration=
===Possibilité 2 : Partitionnement GPT pour BIOS===


<pre>
Nous allons créer avec <code>gdisk</code> 3 partitions sur chaque disque :
mount -o bind /proc /mnt/proc
* sda1 et sdb1 : partitions pour le bootloader. Il faudra leur attribuer le type <code>EF02</code>. On peut la créer idéalement du secteur 34 au secteur 2047 du disque.
mount -o bind /dev /mnt/dev
* sda2 et sdb2 : partitions pour le raid root (/). Il faudra leur attribuer le type <code>FD00</code>.
mount -o bind /sys /mnt/sys
* sda3 et sdb3 : partitions swap séparées. Il faudra leur attribuer le type <code>8200</code>.
chroot /mnt
</pre>
 
Configurez :
* /etc/fstab
* /etc/network/interfaces
* /etc/hostname
* /etc/resolv.conf
* /etc/default/rcS (fsckfix a yes)
* /etc/hosts


/etc/apt/sources.list :
Notez que la partition du bootloader ne doit pas être formatée.
<pre>
deb http://ftp.fr.debian.org/debian squeeze main contrib non-free
deb-src http://ftp.fr.debian.org/debian squeeze main contrib non-free


#Sec
===Possibilité 3 : partitionnement MBR pour BIOS (non prise en charge dans ce wiki)===
deb http://security.debian.org/ squeeze/updates main contrib non-free
deb-src http://security.debian.org/ squeeze/updates main contrib non-free


#anciennement debian-volatile
A titre informatif : création avec <code>parted</code>, sans nécessité de créer une partition dédiée au bootloader/grub.
deb http://ftp.fr.debian.org/debian squeeze-updates main contrib non-free
deb-src http://ftp.fr.debian.org/debian squeeze-updates main contrib non-free
</pre>


<pre>
==Création du RAID==
aptitude update
aptitude install locales
dpkg-reconfigure locales
aptitude install console-data
dpkg-reconfigure console-data # from arch > french > latin9)
</pre>


kernel :
Pour des raisons esthétiques, définissez l'hostname de votre système de rescue :
<pre>
<pre>hostname proxmox</pre>
cd /boot
wget ftp://ftp.ovh.net/made-in-ovh/bzImage/System.map-2.6.24.5-xxxx-grs-ipv6-32
wget ftp://ftp.ovh.net/made-in-ovh/bzImage/bzImage-2.6.24.5-xxxx-grs-ipv6-32
</pre>


Pour créer votre raid 1 avec 2 disques :
<pre>
<pre>
aptitude install grub-pc
mdadm --create --verbose /dev/md2 --level=1 --raid-devices=2 /dev/sda2 /dev/sdb2
</pre>
</pre>


Ajoutez le fichier de configuration de grub que vous avez sauvegardé précédemment (/etc/grub.d/06_OVHkernel chez ovh) et rendez le executable (chmod +x)
Notez que si vous souhaitez utiliser plus que 2 disques, il faut augmenter la valeur de <code>--raid-devices</code> et ajouter les partitions des disques à la suite.


<pre>
Attendez que le raid soit synchronisé avant de continuer. Vous pouvez surveiller facilement cela avec la commande <code>watch cat /proc/mdstat</code>.
update-grub
tzselect
dpkg-reconfigure tzdata
</pre>


Installez openssh
==Création des systèmes de fichiers==
<pre>
aptitude install openssh-server
</pre>


Configurez le password root:
Créez un système de fichier ext4 pour le raid du root :
<pre>
<pre>
passwd
mkfs.ext4 /dev/md2
</pre>
</pre>


Enfin, initialisez les swaps :
<pre>
<pre>
exit
mkswap /dev/sda3
umount /mnt/sys
mkswap /dev/sdb3
umount /mnt/dev
umount /mnt/proc
umount /mnt
</pre>
</pre>
Rebootez en mode HD

Version du 8 octobre 2026 à 11:09

Debootstrap permet d'installer une distribution debian sur un point de montage en utilisant une debian en service.

Prérequis

Ce tutoriel se base sur l'utilisation de debootstrap pour installer une base de système d'exploitation debian. La plupart des hébergeurs proposent un système de "rescue" permettant l'installation de debian par ce moyen. Si vous ne disposez pas de mode rescue, vous pouvez toujours utiliser l'installeur proposé par votre hébergeur, ou encore passer par un kvm pour installer vous même le système avec l'iso de debian.

Pour les débutants

Si vous êtes débutant en administration linux, je vous conseil de sauvegarder quelque part les fichier suivant issu d'une précédente installation de debian ou de proxmox

  • /etc/networks
  • /etc/network/interfaces
  • /etc/resolv.conf
  • /etc/hosts
  • /etc/fstab
  • /etc/mdadm/mdadm.conf si vous disposez d'un raid logiciel
  • tout fichier de personnalisation de grub (/etc/grub.d/ par exemple)

Cela vous permettra de vous faire une idée plus précise de ce qui doit figurer dans ces différents fichiers.

Partitionnement et système de fichier

Voici le partitionnement que je vais utiliser :

  • Partition root (/) de 20 Go (/) en raid 1 sur les disques sda et sdb
  • Partitions swap de 4096 Go chacune réparties sur sda et sdb
  • Le reste de l'espace sera utilisé plus tard pour un LVM dédié aux VMs

Partitionnement

Possibilité 1 : Partitionnement GPT pour EFI / UEFI

Nous allons créer avec gdisk 3 partitions sur chaque disque :

  • sda1 et sdb1 : partitions EFI (ESP), obligatoire pour le démarrage EFI/UEFI. Il faudra leur attribuer le type EF00. Pour assurer une bonne compatibilité avec les multiples firmwares EFI, il est recommandé de leur attribuer une taille de 512 MiB (+512M au prompt gdisk).
  • sda2 et sdb2 : partitions pour le raid root (/). Il faudra leur attribuer le type FD00.
  • sda3 et sdb3 : partitions swap séparées. Il faudra leur attribuer le type 8200.


Pour les partitions EFI, nous créons un système de fichier FAT32 avec le label (nom) EFI_SYSPART :

mkfs.fat -F 32 -n EFI_SYSPART /dev/sda1
mkfs.fat -F 32 -n EFI_SYSPART /dev/sdb1

Possibilité 2 : Partitionnement GPT pour BIOS

Nous allons créer avec gdisk 3 partitions sur chaque disque :

  • sda1 et sdb1 : partitions pour le bootloader. Il faudra leur attribuer le type EF02. On peut la créer idéalement du secteur 34 au secteur 2047 du disque.
  • sda2 et sdb2 : partitions pour le raid root (/). Il faudra leur attribuer le type FD00.
  • sda3 et sdb3 : partitions swap séparées. Il faudra leur attribuer le type 8200.

Notez que la partition du bootloader ne doit pas être formatée.

Possibilité 3 : partitionnement MBR pour BIOS (non prise en charge dans ce wiki)

A titre informatif : création avec parted, sans nécessité de créer une partition dédiée au bootloader/grub.

Création du RAID

Pour des raisons esthétiques, définissez l'hostname de votre système de rescue :

hostname proxmox

Pour créer votre raid 1 avec 2 disques :

mdadm --create --verbose /dev/md2 --level=1 --raid-devices=2 /dev/sda2 /dev/sdb2

Notez que si vous souhaitez utiliser plus que 2 disques, il faut augmenter la valeur de --raid-devices et ajouter les partitions des disques à la suite.

Attendez que le raid soit synchronisé avant de continuer. Vous pouvez surveiller facilement cela avec la commande watch cat /proc/mdstat.

Création des systèmes de fichiers

Créez un système de fichier ext4 pour le raid du root :

mkfs.ext4 /dev/md2

Enfin, initialisez les swaps :

mkswap /dev/sda3
mkswap /dev/sdb3