Installer &debian; à partir d'un système Unix/Linux
Cette partie explique comment installer &debian; à partir d'un système
Unix ou Linux existant, sans utiliser le système d'installation avec menus
qui est exposé dans la suite de ce manuel. Les utilisateurs
qui changeaient leur distribution Red Hat, Mandrake et Suse pour &debian;
réclamaient ce guide d'installation. Dans cette
partie, on suppose que le lecteur a acquis une certaine familiarité avec
les commandes *nix et qu'il sait parcourir le système de fichiers.
$ symbolisera une commande qui devra être saisie dans
le système actuel, alors que # fera référence à une commande
qui devra être saisie dans le chroot Debian.
Une fois que vous aurez configuré le nouveau système Debian,
vous pourrez y installer les données des utilisateurs (s'il y en a),
et continuer à travailler. &debian; s'installe sans aucune interruption de
service. C'est également une façon intelligente de résoudre les problèmes
d'équipement qui, d'ordinaire, donnent du fil à retordre aux systèmes
d'installation ou aux systèmes d'amorçage.
Pour commencer
Avec votre outil habituel de partitionnement *nix, partitionnez le disque
dur et créez au moins un système de fichiers ainsi qu'une zone d'échange
(swap). Vous devez disposer d'au moins 350 Mo pour
l'installation d'un système en mode console et d'au moins 1 Go si vous
avez l'intention d'installer X (et plus si vous voulez installer un environnement
de bureau comme GNOME ou KDE).
Pour créer un système de fichiers sur vos partitions, par exemple, pour créer
un système de fichiers ext3 sur la partition /dev/hda6
(ce sera la partition racine dans notre exemple), il suffit de faire :
# mke2fs -j /dev/hda6
Pour créer un système de fichier ext2, il suffit d'enlever le
-j.
Initialisez et activez la zone d'échange (swap) (modifiez le numéro de la
partition en fonction de celui que vous souhaitez utiliser avec Debian) :
# mkswap /dev/hda5
# sync; sync; sync
# swapon /dev/hda5
Montez une partition sur /mnt/debinst (le point
d'installation, qui deviendra le système de fichier racine
(/) sur votre nouveau système). Le point de montage est
totalement arbitraire, c'est de cette façon qu'on y fera référence par la
suite.
# mkdir /mnt/debinst
# mount /dev/hda6 /mnt/debinst
Si vous voulez que certaines parties du système de fichiers (p. ex. /usr) soient
montées sur des partitions distinctes, vous devez créer et monter ces répertoires
vous-même avant de commencer l'étape suivante.
Installer debootstrap
L'outil utilisé par l'installateur Debian et reconnu comme outil officiel
pour installer un système Debian de base s'appelle
debootstrap. Il utilise wget et
ar, mais ne
dépend que de /bin/sh et des outils Unix/Linux élémentaires
Ces programmes sont les utilitaires GNU (coreutils) et des commandes comme
sed, grep, tar
et gzip.
.
Installez wget et ar s'ils ne sont pas déjà
installés sur votre système, puis téléchargez et installez debootstrap.
Ou, vous pouvez utiliser la procédure qui suit pour l'installer vous-même.
Créez un répertoire pour y décompresser le .deb :
# mkdir work
# cd work
Le programme debootstrap se trouve dans l'archive Debian
(assurez-vous d'avoir sélectionné le fichier correspondant à votre
architecture). Téléchargez le debootstrap .deb à partir de
pool,
copiez le paquet dans le répertoire de travail, et décompressez les fichiers.
Vous aurez besoin d'avoir les droits du superutilisateur pour
installer le binaire.
# ar -x debootstrap_0.X.X_all.deb
# cd /
# zcat /full-path-to-work/work/data.tar.gz | tar xv
Lancer debootstrap
Debootstrap peut télécharger les fichiers nécessaires
directement depuis l'archive debian. Vous pouvez remplacer toutes les
références à http.us.debian.org/debian dans les
commandes ci-dessous, par un miroir de l'archive Debian qui se trouve à
proximité de chez vous, relativement au réseau. Les miroirs sont listés sur
.
Si vous possédez une version cédérom de &debian; &releasename;, montée sur
/cdrom,
vous pouvez remplacer l'URL http par l'URL d'un fichier :
file:/cdrom/debian/
Dans la commande debootstrap remplacez
ARCH par l'une des expressions suivantes :
alpha,
amd64,
arm,
hppa,
i386,
ia64,
m68k,
mips,
mipsel,
powerpc,
s390, ou
sparc.
# /usr/sbin/debootstrap --arch ARCH &releasename; \
/mnt/debinst http://ftp.us.debian.org/debian
Configurer le sytème de base
Maintenant vous disposez d'un vrai système Debian, certes un peu élémentaire.
Lancez le programme chroot :
# LANG=C chroot /mnt/debinst /bin/bash
Il est maintenant possible d'avoir à indiquer la définition du terminal
pour être compatible avec le système de base de Debian. Par exemple :
# export TERM=xterm-color
Monter les partitions
Vous devez créer /etc/fstab.
# editor /etc/fstab
Voici un exemple que vous pouvez modifier à votre convenance :
# /etc/fstab: static file system information.
#
# file system mount point type options dump pass
/dev/XXX / ext3 defaults 0 1
/dev/XXX /boot ext3 ro,nosuid,nodev 0 2
/dev/XXX none swap sw 0 0
proc /proc proc defaults 0 0
/dev/fd0 /media/floppy auto noauto,rw,sync,user,exec 0 0
/dev/cdrom /media/cdrom iso9660 noauto,ro,user,exec 0 0
/dev/XXX /tmp ext3 rw,nosuid,nodev 0 2
/dev/XXX /var ext3 rw,nosuid,nodev 0 2
/dev/XXX /usr ext3 rw,nodev 0 2
/dev/XXX /home ext3 rw,nosuid,nodev 0 2
Utilisez mount -a pour monter l'ensemble des systèmes
de fichiers que vous avez indiqué dans votre fichier
/etc/fstab, ou,
pour monter un à un chaque système de fichiers, utilisez :
# mount /path # par exemple : mount /usr
Les systèmes Debian actuels montent les media extractibles sous le répertoire
/media, mais conservent des liens symboliques de compatibilité
sous la racine /. Pour les créer :
# cd /media
# mkdir cdrom0
# ln -s cdrom0 cdrom
# cd /
# ln -s media/cdrom
Vous pouvez monter le système de fichiers proc plusieurs fois et à divers
endroits, cependant on choisit d'habitude /proc.
Si vous n'utilisez pas mount -a, assurez-vous d'avoir monté proc
avant d'aller plus loin :
# mount -t proc proc /proc
La commande ls /proc affiche maintenant un répertoire
non vide. Si cela échoue, vous pouvez monter proc hors du chroot de cette manière :
# mount -t proc proc /mnt/debinst/proc
Configurer le fuseau horaire
Une option du fichier /etc/default/rcS détermine si
le système considère que l'horloge système est réglée sur le temps UTC ou non.
La commande suivante permet de choisir le fuseau horaire.
# editor /etc/default/rcS
# tzconfig
Configurer le réseau
Pour configurer le réseau, éditez les fichiers
/etc/network/interfaces,
/etc/resolv.conf,
etc/hostname et
/etc/hosts.
# editor /etc/network/interfaces
Voici quelques exemples simples qui proviennent de
/usr/share/doc/ifupdown/examples :
######################################################################
# /etc/network/interfaces -- configuration file for ifup(8), ifdown(8)
# See the interfaces(5) manpage for information on what options are
# available.
######################################################################
# We always want the loopback interface.
#
auto lo
iface lo inet loopback
# To use dhcp:
#
# auto eth0
# iface eth0 inet dhcp
# An example static IP setup: (broadcast and gateway are optional)
#
# auto eth0
# iface eth0 inet static
# address 192.168.0.42
# network 192.168.0.0
# netmask 255.255.255.0
# broadcast 192.168.0.255
# gateway 192.168.0.1
Indiquez vos serveurs de noms et les directives search dans le fichier
/etc/resolv.conf :
# editor /etc/resolv.conf
Un simple /etc/resolv.conf :
# search hqdom.local\000
# nameserver 10.1.1.36
# nameserver 192.168.9.100
Indiquez le nom de votre système (de 2 à 63 caractères) :
# echo DebianHostName > /etc/hostname
Et un fichier /etc/hosts élémentaire, avec gestion de IPv6 :
127.0.0.1 localhost DebianHostName
# The following lines are desirable for IPv6 capable hosts
::1 ip6-localhost ip6-loopback
fe00::0 ip6-localnet
ff00::0 ip6-mcastprefix
ff02::1 ip6-allnodes
ff02::2 ip6-allrouters
ff02::3 ip6-allhosts
Si vous possédez plusieurs cartes réseau, faites en sorte d'indiquer
par ordre les modules que vous voulez charger dans le fichier
/etc/modules. De cette façon, lors du démarrage, chaque
carte sera associée avec le nom d'interface (eth0, eth1, etc.) que vous
souhaitiez.
Configurer Apt
Debootstrap aura créé un fichier /etc/apt/sources.list
élémentaire qui permettra d'installer d'autres paquets.
Cependant, vous pouvez ajouter d'autres sources, par exemple les sources
concernant les mises à jour de sécurité ou celles des paquets source :
deb-src http://ftp.us.debian.org/debian etch main
deb http://security.debian.org/ etch/updates main
deb-src http://security.debian.org/ etch/updates main
N'oubliez pas de lancer aptitude update après avoir modifié
le fichier /etc/apt/sources.list.
Configurer les locales et le clavier
Pour configurer les paramètres locaux, pour l'utilisation d'une autre langue
que l'anglais, installez le paquet locales puis configurez-le :
Il est conseillé d'utiliser les locales UTF-8.
# aptitude install locales
# dpkg-reconfigure locales
Pour configurer le clavier (si besoin est) :
# aptitude install console-data
# dpkg-reconfigure console-data
Il faut noter que le clavier ne peut pas être configuré à l'intérieur du chroot.
Il sera configuré au prochain démarrage de la machine.
Installer un noyau
Si vous avez l'intention de démarrer ce système, vous aurez vraisemblablement
besoin d'un noyau Linux ainsi que d'un gestionnaire de démarrage. Identifiez
les paquets contenant des noyaux avec :
# apt-cache search linux-image
Puis installez celui que vous voulez en utilisant son nom de paquet.
# aptitude install linux-image-&kernelversion;-arch-etc
Le fichier de configuration /etc/kernel-img.conf influence
l'installation et la mise à jour des noyaux préparés par Debian. Lors de l'installation
d'un premier noyau Debian, un fichier est créé. Pour des informations supplémentaires
sur ce fichier, consultez sa page de manuel qui est disponible dès que le paquet
kernel-package est installé.
Configurer le programme d'amorçage
Pour que votre système &debian; puisse démarrer, configurez le programme
d'amorçage pour qu'il charge le noyau installé avec votre nouvelle partition
racine. Debootstrap n'installe pas de programme d'amorçage mais vous pouvez
utiliser aptitude pour en installer un.
Faites info grub ou
man lilo.conf pour connaître les instructions de
configuration des programmes d'amorçage. Si vous souhaitez conserver le
système dont vous vous êtes servi pour installer Debian, ajoutez simplement
une entrée pour l'installation de Debian dans votre
menu.lst ou dans votre lilo.conf.
Pour lilo.conf, vous pouvez également le copier sur le
nouveau système et l'éditer. Une fois que
vous l'aurez modifié, lancez lilo (souvenez-vous que lilo utilise le fichier
lilo.conf qui se trouve dans le même système que lui).
L'installation et la configuration de grub est aussi simple que
ça :
# aptitude install grub
# grub-install /dev/hda
# update-grub
La deuxième commande installe grub
(ici, sur le MBR de hda). La dernière commande crée
un fichier /boot/grub/menu.lst fonctionnel.
Voici un exemple simple de fichier /etc/lilo.conf :
boot=/dev/hda6
root=/dev/hda6
install=menu
delay=20
lba32
image=/vmlinuz
label=Debian
Consultez le man yaboot.conf pour les instructions de
configuration du programme d'amorçage. Si vous souhaitez conserver le système
dont vous vous êtes servi pour installer Debian, ajoutez simplement une
entrée pour l'installation de Debian dans votre yaboot.conf actuel. Vous
pouvez également le copier sur le nouveau système et l'éditer. Une fois que
vous l'aurez
modifié, lancez ybin (souvenez-vous que ybin utilise le yaboot.conf qui se
trouve dans le même système que lui).
Voici un exemple simple de fichier /etc/yaboot.conf :
boot=/dev/hda2
device=hd:
partition=6
root=/dev/hda6
magicboot=/usr/lib/yaboot/ofboot
timeout=50
image=/vmlinux
label=Debian
Sur certaines machines, vous devrez utiliser ide0:
au lieu de hd:.
Touches finales
Comme signalé auparavant, le système sera très basique. Pour l'améliorer
sensiblement, il existe une méthode très simple pour installer les paquets
dont la priorité est standard
:
# tasksel install standard
Bien sûr, vous pouvez toujours utiliser aptitude pour installer
des paquets un à un.
Après l'installation il y aura beaucoup de paquets dans
/var/cache/apt/archives/. Vous pouvez libérer un peu d'espace avec :
# aptitude clean