Vous n'êtes pas identifié(e).
L'icône rouge permet de télécharger chaque page du wiki visitée au format
PDF et la grise au format ODT →
Ci-dessous, les différences entre deux révisions de la page.
Les deux révisions précédentes Révision précédente Prochaine révision | Révision précédente Prochaine révision Les deux révisions suivantes | ||
doc:install:debootstrap-chroot [02/10/2012 11:51] bendia |
doc:install:debootstrap-chroot [22/09/2013 19:04] captnfab [Préparons le terrain] |
||
---|---|---|---|
Ligne 5: | Ligne 5: | ||
* Niveau requis : AVANCES | * Niveau requis : AVANCES | ||
* Commentaires : // Installer Debian sans clé USB ou CD pour migrer d'une autre distribution vers Debian ou pour installer une autre branche de Debian ... // | * Commentaires : // Installer Debian sans clé USB ou CD pour migrer d'une autre distribution vers Debian ou pour installer une autre branche de Debian ... // | ||
- | * Débutant, à savoir : Une bonne maîtrise de la ligne de commande et un minimum de connaissance de Debian sont nécessaires. Un autre poste muni d'un accès internet est préférable histoire de se sortir des éventuelles ornières. | + | * Débutant, à savoir : |
- | * [[manuel:le_debianiste_qui_papillonne|Utiliser GNU/Linux en ligne de commande, tout commence là !.]] :-) | + | * Une bonne maîtrise de la ligne de commande et un minimum de connaissance de Debian sont nécessaires. Un autre poste muni d'un accès internet est préférable histoire de se sortir des éventuelles ornières. |
- | * [[/manuel:structure_repertoires-racine|La structure d'un système Debian]] | + | * [[:|Utiliser GNU/Linux en ligne de commande, tout commence là !.]] :-) |
+ | * [[:atelier:chantier:fsh-accueil|La structure d'un système Debian]] | ||
+ | * Suivi : | ||
+ | * Mis à jour par bendia 21/09/2013 | ||
+ | * Testé par bendia le 21/09/2013 | ||
+ | * Commentaires sur le forum [[http://debian-facile.org/viewtopic.php?pid=67650|ici]] | ||
===== Prérequis ===== | ===== Prérequis ===== | ||
Ligne 24: | Ligne 29: | ||
Et encore plein de place disponible dont vous ne savez que faire | Et encore plein de place disponible dont vous ne savez que faire | ||
- | Bien évidemment, la nature ayant horreur du vide, vous avez fort envie de le combler avec votre distribution préférée, à savoir Debian. Vous aurez même tout loisir d'en choisir la branche(([[manuel:branches_debian]])) ... | + | Bien évidemment, la nature ayant horreur du vide, vous avez fort envie de le combler avec votre distribution préférée, à savoir Debian. Vous aurez même tout loisir d'en choisir la branche(([[:doc:systeme:apt:branches-debian]])) ... |
+ | |||
+ | Bien sûr, je vous promets du sang, de la sueur, et des larmes :-/ Tout commencera par une Debian plus que minimale, avec le clavier //qwerty// et sans réseau :-? | ||
- | Bien sur, je vous promet du sang, de la sueur, et des larmes :-/ Tout commencera par une Debian plus que minimale, avec le clavier //qwerty// et sans réseau :-? \\ | ||
Mais grâce au //wiki Debian-Facile// rien ne vous empêchera d'installer une sid toute fraîche avec la dernière version de votre bureau préféré en prime ! :-) | Mais grâce au //wiki Debian-Facile// rien ne vous empêchera d'installer une sid toute fraîche avec la dernière version de votre bureau préféré en prime ! :-) | ||
Ligne 39: | Ligne 45: | ||
===== Préparons le terrain ===== | ===== Préparons le terrain ===== | ||
- | En premier lieu , commençons par organiser l'espace disponible(([[manuel:partitionnement]])). \\ | + | En premier lieu , commençons par organiser l'espace disponible(([[:doc:systeme:partitionnement]])). \\ |
- | Dans l'espace libre, créons 2 partitions (//ext4//(([[manuel:partition]])) par exemple). \\ | + | Dans l'espace libre, créons 2 partitions (//ext4//(([[:doc:systeme:partition]])) par exemple). \\ |
La première recevra la racine (/) du nouveau système, la seconde le répertoire ///home//. \\ | La première recevra la racine (/) du nouveau système, la seconde le répertoire ///home//. \\ | ||
- | Pour cela, votre utilitaire habituel(([[/logiciel:gparted|Gparted]], [[/commande:cfdisk|cfdisk]])) fera parfaitement l'affaire. | + | Pour cela, votre utilitaire habituel(([[/doc:environnements:gnome:gparted|Gparted]], [[:doc:systeme:cfdisk|cfdisk]])) fera parfaitement l'affaire. |
Nous nous retrouvons alors avec la structure suivante : | Nous nous retrouvons alors avec la structure suivante : | ||
Ligne 52: | Ligne 58: | ||
/dev/sda4 vide | /dev/sda4 vide | ||
| | ||
- | Dans un terminal root(([[manuel:terminal]]), avec l'outil //mke2//, formatons((Voir aussi la commande : [[commande:mkfs]])) ces deux partitions | + | Dans un terminal root(([[:doc:systeme:terminal]])), avec l'outil //mke2//, formatons((Voir aussi la commande : [[:doc:systeme:mkfs]])) ces deux partitions |
- | <code bash> | + | <code root> |
mke2fs -t ext4 /dev/sda3 | mke2fs -t ext4 /dev/sda3 | ||
mke2fs -t ext4 /dev/sda4 | mke2fs -t ext4 /dev/sda4 | ||
</code> | </code> | ||
- | Nous devons monter(([[commande:mount]])) la première partition afin d'accueillir notre futur Debian. | + | Nous devons monter(([[:doc:systeme:mount]])) la première partition afin d'accueillir notre futur Debian. |
- | Pour cela, en terminal root(([[manuel:terminal]])), créons un répertoire de travail(([[commande:mkdir]])) que nous nommerons //debinst//((par exemple...)) dans // /mnt// par exemple : | + | Pour cela, en terminal root(([[:doc:systeme:terminal]])), créons un répertoire de travail(([[:doc:systeme:mkdir]])) que nous nommerons //debinst//((par exemple...)) dans // /mnt// par exemple : |
- | <code bash> | + | <code root> |
mkdir /mnt/debinst | mkdir /mnt/debinst | ||
</code> | </code> | ||
- | Puis, montons la partition(([[commande:mount]])) sur ce point de montage ainsi : | + | Puis, montons la partition(([[:doc:systeme:mount]])) sur ce point de montage ainsi : |
- | <code bash> | + | <code root> |
- | mount /dev/sda1 /mnt/debinst | + | mount /dev/sda3 /mnt/debinst |
</code> | </code> | ||
Ligne 75: | Ligne 81: | ||
Nous allons maintenant utiliser un outils spécialement conçu par Debian pour installer un système minimaliste : **debootstrap**. \\ | Nous allons maintenant utiliser un outils spécialement conçu par Debian pour installer un système minimaliste : **debootstrap**. \\ | ||
- | Puis, une fois ce système installé, nous en ferons la racine de notre système afin de le préparer pour être autonome grâce à **chroot**(([[manuel:chroot]])). | + | Puis, une fois ce système installé, nous en ferons la racine de notre système afin de le préparer pour être autonome grâce à **chroot**(([[:doc:systeme:chroot]])). |
- | <note important>**Debootstrap** utilise uniquement des commandes bash comme **wget** et **ar** **zcat** sera également nécessaire. Vérifier que ces commandes soient bien installées sur votre système.</note> | + | <note important>**Debootstrap** utilise uniquement des commandes bash comme **wget** et **ar** ; **zcat** sera également nécessaire. Vérifier que ces commandes soient bien installées sur votre système.</note> |
==== Installer le paquet Deboostrap ==== | ==== Installer le paquet Deboostrap ==== | ||
- | Votre distribution en place a peut-être packagé **debootstrap**. Dans ce cas, installez-le avec votre gestionnaire de paquet(([[manuel:commande_aptitude]])). | + | Votre distribution en place a peut-être packagé **debootstrap**. Dans ce cas, installez-le avec votre gestionnaire de paquet(([[:doc:systeme:aptitude]])). |
- | ==== Installation avec le .deb ==== | + | <code root> |
- | + | apt-get install debootstrap | |
- | Dans le cas contraire, rien n'est perdu :-) \\ | + | |
- | On peut installer le .deb sur n'importe quelle distribution disposant de **ar** et **zcat**. | + | |
- | + | ||
- | Pour cela,t téléchargeons(([[commande:wget]])) **debootstrap** ainsi : | + | |
- | + | ||
- | <code bash> | + | |
- | wget http://ftp.debian.org/debian/pool/main/d/debootstrap/debootstrap_1.0.42_all.deb</code> | + | |
- | + | ||
- | <note tip>Toutes les commandes suivantes sont des commandes d'administration et donc à faire en terminal root !</note> | + | |
- | + | ||
- | Puis, créons un répertoire de travail et déplaçons(([[commande:mv|mv]])) l'archive de deboostrap dedans comme cela : | + | |
- | <code bash> | + | |
- | mkdir /root/work | + | |
- | mv /chemin_de_debootstrap/debootstrap_1.0.42_all.deb /root/mkdir | + | |
- | cd /root/work</code> | + | |
- | + | ||
- | + | ||
- | + | ||
- | Décompressons ensuite l'archive : | + | |
- | <code bash> | + | |
- | ar -x debootstrap_1.0.42_all.deb | + | |
- | cd / | + | |
- | zcat /root/work/data.tar.gz | tar xv | + | |
</code> | </code> | ||
===== Lançons Debootstrap ===== | ===== Lançons Debootstrap ===== | ||
- | Soit : | + | <code root> |
- | <code bash> | + | |
debootstrap --arch ARCH BRANCHE /mnt/debinst http://ftp.fr.debian.org/debian | debootstrap --arch ARCH BRANCHE /mnt/debinst http://ftp.fr.debian.org/debian | ||
</code> | </code> | ||
- | En remplaçant //dans la commande ci-dessus// respectivement ARCH et BRANCHE par l'architecture (i386, amd64 ...) et la branche (squeeze, wheezy, unstable, experimental) souhaitées. | + | En remplaçant //dans la commande ci-dessus// respectivement ARCH et BRANCHE par l'architecture (i386, amd64 ...), la branche (squeeze, wheezy, unstable, experimental) et l'adresse du miroir (http://snapshot.debian.org/... par exemple) souhaitées. |
- | + | ||
- | Soit : \\ | + | |
- | Si vous avez installé **Debootstrap** avec le .deb | + | |
- | <code bash> | + | |
- | /usr/sbin/debootstrap --arch ARCH BRANCHE /mnt/debinst http://ftp.fr.debian.org/debian | + | |
- | </code> | + | |
Lorsque la console vous rend la main, votre Debian minimale est installée. \\ | Lorsque la console vous rend la main, votre Debian minimale est installée. \\ | ||
Ligne 133: | Ligne 109: | ||
Pour l'instant, notre nouveau système est incapable de dialoguer avec les différentes ressource de la machine. Il va donc falloir lui indiquer où ce trouvent ces ressources. Nous allons donc monter Les répertoire //proc// et //dev//: | Pour l'instant, notre nouveau système est incapable de dialoguer avec les différentes ressource de la machine. Il va donc falloir lui indiquer où ce trouvent ces ressources. Nous allons donc monter Les répertoire //proc// et //dev//: | ||
- | <code bash> | + | <code root> |
mount -t proc none /mnt/debinst/proc</code> | mount -t proc none /mnt/debinst/proc</code> | ||
- | <code bash> | + | <code root> |
mount -o bind /dev /mnt/debinst/dev</code> | mount -o bind /dev /mnt/debinst/dev</code> | ||
Et on peut maintenant chrooter : | Et on peut maintenant chrooter : | ||
- | <code bash> | + | <code root> |
chroot /mnt/debinst /bin/bash | chroot /mnt/debinst /bin/bash | ||
</code> | </code> | ||
Ligne 150: | Ligne 126: | ||
=== Mot de passe root === | === Mot de passe root === | ||
- | root n'a pas de mot de passe(([[commande:passwd))]])) et ne pourra donc pas se connecter lors du prochain démarrage :-\ | + | root n'a pas de mot de passe(([[doc:systeme:passwd]])) et ne pourra donc pas se connecter lors du prochain démarrage :-\ |
<code bash> | <code bash> | ||
passwd | passwd | ||
Ligne 157: | Ligne 133: | ||
==== Installons un noyau ==== | ==== Installons un noyau ==== | ||
- | Notre système n'a pas encore de noyau. Il faut donc installer celui qui correspond à la BRANCHE et l'ARCHITECTURE installée(([[manuel:commande_aptitude#choisir_une_image_kernel]])) | + | Notre système n'a pas encore de noyau. Il faut donc installer celui qui correspond à la BRANCHE et l'ARCHITECTURE installée(([[:doc:systeme:aptitude#choisir_une_image_kernel]])) (remplacer ARCH par votre architecture) |
- | * **Squeeze** : linux-image-2.6.32-5-ARCH | + | * **Wheezy** : linux-image-3.2.0-4-ARCH |
- | * **Wheezy** : linux-image-3.2.0-2-ARCH | + | * **Jessie** : linux-image-3.10-2-ARCH |
* **Sid** : ça dépend, c'est Sid :-D | * **Sid** : ça dépend, c'est Sid :-D | ||
- | <code bash> | + | <code root> |
aptitude update | aptitude update | ||
aptitude install linux-image...</code> | aptitude install linux-image...</code> | ||
Ligne 168: | Ligne 144: | ||
==== fstab ==== | ==== fstab ==== | ||
- | Il faut créer un [[manuel:config:fstab| fichier fstab]] avec votre éditeur de texte préféré ( au fait, vous êtes plutôt [[commande:editeur:nano|nano]] ou [[commande:editeur:vim|vim]] ? ;-) ). | + | Il faut créer un [[:doc:systeme:fstab| fichier fstab]] avec votre éditeur de texte préféré ( au fait, vous êtes plutôt [[:doc:editeurs:nano|nano]] ou [[:doc:editeurs:vim|vim]] ? ;-) ). |
- | Voici un fstab minimal, adapté à l'exemple de notre disque, qui <del>peut</del> doit être changé par la suite pour y inclure les bonnes options de montage et les UUID(([[commande:blkid]])) | + | Voici un fstab minimal, adapté à l'exemple de notre disque, qui <del>peut</del> doit être changé par la suite pour y inclure les bonnes options de montage et les UUID(([[:doc:systeme:blkid]])) |
- | <code> | + | <file> |
proc /proc proc defaults | proc /proc proc defaults | ||
/dev/sdb2 none swap sw 0 0 | /dev/sdb2 none swap sw 0 0 | ||
- | /dev/sdb3 / ext3 defaults 0 1 | + | /dev/sdb3 / ext3 errors=remount-ro 0 1 |
/dev/sdb4 /home ext3 defaults 0 2 | /dev/sdb4 /home ext3 defaults 0 2 | ||
- | </code> | + | </file> |
+ | |||
+ | <note tip>Pour indiquer directement les UUID dans votre fstab, comme on ne peut pas copier/coller <code bash>blkid >> /etc/fstab</code> ;-)</note> | ||
==== Le réseau ==== | ==== Le réseau ==== | ||
Ligne 184: | Ligne 162: | ||
éditez ///etc/hostname// et donnez lui le nom de votre machine (celui qui se retrouve dans le prompt.) | éditez ///etc/hostname// et donnez lui le nom de votre machine (celui qui se retrouve dans le prompt.) | ||
- | <code bash> | + | <code root> |
mon_premier_chroot</code> | mon_premier_chroot</code> | ||
=== Le fichier interfaces === | === Le fichier interfaces === | ||
- | Editez [[manuel:interfaces|/etc/network/interfaces]] | + | Editez [[:doc:reseau:interfaces|/etc/network/interfaces]] |
En fonction du nom de votre carte réseau (//eth0// par exemple) | En fonction du nom de votre carte réseau (//eth0// par exemple) | ||
- | <code> | + | <file> |
auto lo | auto lo | ||
iface lo inet loopback | iface lo inet loopback | ||
Ligne 199: | Ligne 177: | ||
auto lo | auto lo | ||
iface eth0 inet dhcp | iface eth0 inet dhcp | ||
- | </code> | + | </file> |
==== Les locales ==== | ==== Les locales ==== | ||
Ligne 205: | Ligne 183: | ||
Histoire d'avoir tous les outils pour configurer le clavier //azerty// lors du prochain démarrage | Histoire d'avoir tous les outils pour configurer le clavier //azerty// lors du prochain démarrage | ||
- | <code bash> | + | <code root> |
aptitude install locales console-data | aptitude install locales console-data | ||
</code> | </code> | ||
Ligne 211: | Ligne 189: | ||
Pour relancer la configuration : | Pour relancer la configuration : | ||
- | <code bash> | + | <code root> |
- | dpkg-reconfigure locale</code> | + | dpkg-reconfigure locales</code> |
==== Chargeur d'amorçage ==== | ==== Chargeur d'amorçage ==== | ||
À ce stade, vous pouvez : | À ce stade, vous pouvez : | ||
- | * installer Grub2(([[manuel:grub2]])) dans le chroot : <code bash>aptitude install grub2</code> | + | * installer Grub2(([[:doc:systeme:grub2]])) dans le chroot : <code root>aptitude install grub2</code> |
- | * ou utiliser le chargeur d'amorçage du système père. Il vous faut donc d'abord sortir du chroot : <code bash>exit</code> puis : <code bash>update-grub</code> | + | * ou utiliser le chargeur d'amorçage du système père. Il vous faut donc d'abord sortir du chroot : <code root>exit</code> puis : <code root>update-grub</code> |
Et voilà, AU redémarrage, vous aurez un beau système //minimaliste// utilisable pour : | Et voilà, AU redémarrage, vous aurez un beau système //minimaliste// utilisable pour : | ||
- | * Changer le [[manuel:sources.list|sources/list]] | + | * Changer le [[:doc:systeme:apt:sources.list|sources/list]] |
* Créer des utilisateurs : <code bash>adduser new_utilisateur</code> | * Créer des utilisateurs : <code bash>adduser new_utilisateur</code> | ||
* Installer un [[http://wiki.debian-facile.org/#environnements_graphiques_gnu_linux|environnement graphique]] | * Installer un [[http://wiki.debian-facile.org/#environnements_graphiques_gnu_linux|environnement graphique]] |