# Installation from scratch

**URL:** <https://www.debian-fr.org/t/installation-from-scratch/89165>\
**Category:** Support Debian\
**Tags:** installation\
**Created:** [Novembre 16, 2023, 7:49 UTC](https://www.debian-fr.org/t/installation-from-scratch/89165 "2023-11-16T07:49:20Z")\
**Posts on this page:** 13\
**Page:** 1

<div class="post-metadata">

**Author:** ![loicmtp](https://www.debian-fr.org/user_avatar/www.debian-fr.org/loicmtp/32/13315_2.png) [@loicmtp](https://www.debian-fr.org/u/loicmtp)\
**Post date:** [Novembre 16, 2023, 7:49 UTC](https://www.debian-fr.org/t/installation-from-scratch/89165/1 "2023-11-16T07:49:20Z")

</div>

Salut,

Simple question:

> Est il possible avec debian d’installer les kernels comme on le fait avec arch - et ensuite installation manuelle du grub?

Connaissant assez bien le process d’installation d’arch - installation avec arch-chroot - je me demandais s’il etait possible de faire de même avec debian.  
En effet arch permet d’installer linux et linux-lts en une seule fois avec mkinitcpio ce qui est assez interessant à la longue.

edit:

> Aussi, est ce que l’option «&nbsp;advanced&nbsp;» de l’installer permet ca?

---

<div class="post-metadata">

**Author:** ![Zargos](https://www.debian-fr.org/user_avatar/www.debian-fr.org/zargos/32/10889_2.png) [@Zargos](https://www.debian-fr.org/u/Zargos)\
**Post date:** [Novembre 16, 2023, 8:52 UTC](https://www.debian-fr.org/t/installation-from-scratch/89165/2 "2023-11-16T08:52:21Z")

</div>

Bonjour,

je ne suis pas certain. En faisant ça, je pense que tu as un risque de briser la chaine des dépendances.  
Tu parles d’utiliser kernel-install?

---

<div class="post-metadata">

**Author:** ![loicmtp](https://www.debian-fr.org/user_avatar/www.debian-fr.org/loicmtp/32/13315_2.png) [@loicmtp](https://www.debian-fr.org/u/loicmtp)\
**Post date:** [Novembre 16, 2023, 8:58 UTC](https://www.debian-fr.org/t/installation-from-scratch/89165/3 "2023-11-16T08:58:31Z")

</div>

> [@Zargos](#):
>
> Tu parles d’utiliser kernel-install?

Ben justement…je ne sais pas. Sur arch c’est assez simple mais sur debian je ne sais pas.

---

<div class="post-metadata">

**Author:** ![Almtesh](https://www.debian-fr.org/user_avatar/www.debian-fr.org/almtesh/32/10312_2.png) [@Almtesh](https://www.debian-fr.org/u/Almtesh)\
**Post date:** [Novembre 16, 2023, 9:21 UTC](https://www.debian-fr.org/t/installation-from-scratch/89165/4 "2023-11-16T09:21:09Z")

</div>

Pour ma part, je n’ai pas utilisé l’installateur Debian depuis un moment. Pour installer une nouvelle version de Debian sur ma machine, je crée le stockage du nouveau rootfs et j’utilise `debootstrap` pour installer le système ce que je veux (je n’installe pas GRUB ou de noyau sur certaines machines par exemple).  
Tu peux ensuite manipuler ton système à l’aide d’un chroot pour mettre ce qu’il faut dessus et faire les paramétrages.

---

<div class="post-metadata">

**Author:** ![Zargos](https://www.debian-fr.org/user_avatar/www.debian-fr.org/zargos/32/10889_2.png) [@Zargos](https://www.debian-fr.org/u/Zargos)\
**Post date:** [Novembre 16, 2023, 9:33 UTC](https://www.debian-fr.org/t/installation-from-scratch/89165/5 "2023-11-16T09:33:45Z")

</div>

Tu as aussi le simple-cdd avec lequel tu peux choisir quel noyau tu veux au départ, et éventuellement en ajouter d’autres via la partie postinst.

---

<div class="post-metadata">

**Author:** ![loicmtp](https://www.debian-fr.org/user_avatar/www.debian-fr.org/loicmtp/32/13315_2.png) [@loicmtp](https://www.debian-fr.org/u/loicmtp)\
**Post date:** [Novembre 16, 2023, 9:35 UTC](https://www.debian-fr.org/t/installation-from-scratch/89165/6 "2023-11-16T09:35:53Z")

</div>

En fait je voudrais, à court terme, installer debian avec une cohabitation LTS et rolling

---

<div class="post-metadata">

**Author:** ![Clochette](https://www.debian-fr.org/user_avatar/www.debian-fr.org/clochette/32/8757_2.png) [@Clochette](https://www.debian-fr.org/u/Clochette)\
**Post date:** [Novembre 16, 2023, 10:21 UTC](https://www.debian-fr.org/t/installation-from-scratch/89165/7 "2023-11-16T10:21:12Z")

</div>

> [@loicmtp](#):
>
> installer debian avec une cohabitation LTS et rolling

[![](https://media.giphy.com/media/v1.Y2lkPTc5MGI3NjExNzZzZzlzYTg1cWUxZW54N3BiOWhzNXhyc3hmMmQ5ZTd1dDUxb3VleCZlcD12MV9pbnRlcm5hbF9naWZfYnlfaWQmY3Q9Zw/2tPrQGARVUyRgP8s9l/giphy.gif) ](https://media.giphy.com/media/v1.Y2lkPTc5MGI3NjExNzZzZzlzYTg1cWUxZW54N3BiOWhzNXhyc3hmMmQ5ZTd1dDUxb3VleCZlcD12MV9pbnRlcm5hbF9naWZfYnlfaWQmY3Q9Zw/2tPrQGARVUyRgP8s9l/giphy.gif)

A chaque fois que je vois les termes rolling release et Debian associé ça me fait peur.

Il y a déjà des projets qui font ça bien comme Arch, Manjaro, Opensuse et PureOS (que je ne connais pas mais semble basé sur Debian).  
Sinon tu peux te tourner vers Aptosid pour rester sur du Still In Developpement 😉

En tout cas ce que tu cherche à faire n’est pas évident à transposer mais initramfs-tools semble être l’outil le plus proche de mkinitcpio

---

<div class="post-metadata">

**Author:** ![Zargos](https://www.debian-fr.org/user_avatar/www.debian-fr.org/zargos/32/10889_2.png) [@Zargos](https://www.debian-fr.org/u/Zargos)\
**Post date:** [Novembre 16, 2023, 10:23 UTC](https://www.debian-fr.org/t/installation-from-scratch/89165/8 "2023-11-16T10:23:05Z")

</div>

> [@Clochette](#):
>
> A chaque fois que je vois les termes rolling release et Debian associé ça me fait peur.

🤣 idem

---

<div class="post-metadata">

**Author:** ![loicmtp](https://www.debian-fr.org/user_avatar/www.debian-fr.org/loicmtp/32/13315_2.png) [@loicmtp](https://www.debian-fr.org/u/loicmtp)\
**Post date:** [Novembre 16, 2023, 10:23 UTC](https://www.debian-fr.org/t/installation-from-scratch/89165/9 "2023-11-16T10:23:24Z")

</div>

> [@Clochette](#):
>
> Il y a déjà des projets qui font ça bien comme Arch, Manjaro, Opensuse et PureOS (que je ne connais pas mais semble basé sur Debian).

Arch (manjaro etant arch) c’est sûr c’est seamless et pratique

edit: c’est surtout de la curiosité

---

<div class="post-metadata">

**Author:** ![Verner](https://www.debian-fr.org/letter_avatar_proxy/v4/letter/v/34f0e0/32.png) [@Verner](https://www.debian-fr.org/u/Verner)\
**Post date:** [Novembre 16, 2023, 7:51 UTC](https://www.debian-fr.org/t/installation-from-scratch/89165/10 "2023-11-16T19:51:52Z")

</div>

Ça en fait des sujets dans ce sujet un peu fourre-tout…

● Installation from scratch

→ soit **netinstall** en mode expert (option `priority=low` du noyau), sans aucune installation supplémentaire en fin de process, avant reboot.

→ **debootstrap** : Installation d’un système Debian de base, puis **chroot** dans la partition pour compléter l’installation.  
exemple:

```nohighlight
debootstrap --arch amd64 testing /mnt/debinst/ http://ftp.fr.debian.org/debian

```

avantages:  
▪ l’installation se fait à partir de l’environnement en cours d’utilisation, sur une partition libre et formatée;  
▪ ça installe vraiment un système de base, ce qui permet de comprendre ce qui est strictement nécessaire pour un «&nbsp;système de base&nbsp;» (la demande).

inconvénient:  
▪ tout ne marchera pas du premier coup la première fois, mais c’est ce qui permet d’apprendre pour la deuxième fois, et d’apprécier les suivantes.

● kernels ‹&nbsp;comme on le fait avec arch&nbsp;›  
Dans Debian, ce sera comme dans Debian en choisissant son noyau  
` apt-cache search --names-only linux-image`

● Image de démarrage noyau:  
 → **Initramfs** par défaut, configurable `/etc/initramfs-tools/initramfs.conf`  
 → **tiny-initramfs** qui permet de faire une image très petite/minimale  
 → ou faire son image noyau ‹&nbsp;à la main&nbsp;›, à partir de **busybox** , avec **cpio** , ce qui permet d’apprendre le mécanisme de ‹&nbsp; **switch\_root** &nbsp;› entre l’image de démarrage et le système installé.  
—\> franchement pas simple, plein de pièges vicieux, pas insurmontable, puisque je l’ai fait, mais exclusivement pour les amateurs de spéléologie très profonde.  
Il y a un intérêt à faire ça, mais pas à développer ici.

● Bootloader  
 → installation manuelle du grub ? Grub-pc: une usine à gaz, mais possible de tout installer/gérer en manuel

exemple pour orientation, et non référence, les variables étant des chemins à évidemment adapter:

```auto
sudo grub-install --compress=no -d i386-pc-all --target=i386-pc --disk-module=nativedisk \
--modules='ata pata ahci ehci ohci uhci scsi usbms part_msdos fat ext2 minicmd keylayouts echo usb_keyboard at_keyboard minicmd configfile search test probe linux iso9660 loopback play true help' \
--install-modules="$(cat $L)" --boot-directory=$M/boot/ --locale-directory='' --locales='' $D

```

Ensuite faire son **grub.lst** à la mimine.

Sinon, **limine** : pour une configuration limitée à du ext2/3/4, je recommande [limine](https://github.com/limine-bootloader/limine) , qui est une bombe pour sa légereté et simplicité d’installation. Immédiatement adopté en ce qui me concerne.  
Même connu chez arch ! [Limine - ArchWiki](https://wiki.archlinux.org/title/Limine)

● distris pseudo-rolling …  
En maîtrisant très bien dpkg/apt/aptitude (nécessaire), une testing bien surveillée en évolution, avec quelques paquets unstable de temps en temps ne pose aucun problème.  
Mais ça demande une maîtrise totale, de l’attention, gestion exclusive en ligne de commande pour voir ce qui se passe, et pas espérer faire des ‹&nbsp;`apt update/upgrade`&nbsp;› comme une stable… Ce n’est pas le concept.  
Donc une stable sur une partition, et une testing sur une autre: aucun risque en cas de problème.

---

<div class="post-metadata">

**Author:** ![loicmtp](https://www.debian-fr.org/user_avatar/www.debian-fr.org/loicmtp/32/13315_2.png) [@loicmtp](https://www.debian-fr.org/u/loicmtp)\
**Post date:** [Novembre 17, 2023, 4:33 UTC](https://www.debian-fr.org/t/installation-from-scratch/89165/11 "2023-11-17T04:33:58Z")

</div>

> [@Verner](#):
>
> → **debootstrap** : Installation d’un système Debian de base, puis **chroot** dans la partition pour compléter l’installation.  
> exemple:
> 
> ```auto
> debootstrap --arch amd64 testing /mnt/debinst/ http://ftp.fr.debian.org/debian
> 
> ```

Si j’analyse bien, comme sur arch, je pars d’une debian live et j’install debootstrap sur /mnt?

Quel est l’équivalent debian de «&nbsp;base&nbsp;» (arch) et «&nbsp;base-devel&nbsp;» (arch)?

> [@Verner](#):
>
> Bootloader  
> → installation manuelle du grub ? Grub-pc: une usine à gaz, mais possible de tout installer/gérer en manuel

Sérieux le créer manuellement???

---

<div class="post-metadata">

**Author:** ![Verner](https://www.debian-fr.org/letter_avatar_proxy/v4/letter/v/34f0e0/32.png) [@Verner](https://www.debian-fr.org/u/Verner)\
**Post date:** [Novembre 17, 2023, 11:52 UTC](https://www.debian-fr.org/t/installation-from-scratch/89165/12 "2023-11-17T11:52:35Z")

</div>

> [@loicmtp](#):
>
> Si j’analyse bien, comme sur arch

Si tu pouvais éviter le ‹&nbsp;_comme sur arch_&nbsp;›, ça m’éviterait de dire ce que je pense de arch.  
Debian a tout ce qu’il faut, et surtout une notion sérieuse de 'dépôts" inexistante sur arch qui est un foutoir sur ce point (expérience récente… 1 semaine max et on nettoie). Quand une arch casse, ben on ne sait pas vraiment quoi faire, à part «&nbsp;attendre&nbsp;».  
Par contre, la doc Arch est super, il faut le dire. Debian, c’est une autre histoire…  
Voilà, arch c’est fait.

> [@loicmtp](#):
>
> je pars d’une debian live

Même pas, beaucoup plus simple et confortable.  
Dans ta debian (ou même ubuntu !) **en cours d’utilisation** , (ça peut être un liveCD aussi) tu installes deboostrap:  
`apt install debootstrap`

Tu peux lister ce que tu peux installer avec:

`ls /usr/share/debootstrap/scripts/ -1`

Tu peux donc installer ubuntu ou debian dérivés à partir de Debian, ou l’inverse.  
On va prendre le cas de testing pour exemple.

1 - préparation d’une partition /dev/sdX **libre** et **formatée** pour installer testing  
2 - montage de /dev/sdX sur /mnt/debinst que tu crées, ou autre chose aucune importance, c’est du provisoire.

Dans un terminal en **root** :

```auto
debootstrap --arch amd64 testing /mnt/debinst/ http://ftp.fr.debian.org/debian

```

Et c’est parti mon kiki.  
C’est presque fini … ou plutôt ça va commencer à se corser.

> [@loicmtp](#):
>
> grub / Sérieux le créer manuellement???

Tout dépend ce que tu considères un création «&nbsp;manuelle&nbsp;» qui est forcément ambiguë.  
Tu peux aussi fabriquer un core.img en amont, et écrire { **boot** , **core** }.img en début de disque avec `dd` … ce que je ne te dirais jamais de faire, mais en lisant mon [premier sujet sur ce forum](https://www.debian-fr.org/t/grub-pc-usb-keyboard-keymap-fr/74865), tu comprendras mieux ma notion de ‹&nbsp;manuel&nbsp;›.

Utiliser l’exécutable de **grub-install** est une meilleure maîtrise des options d’installation, par exemple pour faire un **core**.img plus robuste en intégrant plus de modules indispensables, qui est un grand confort pour éviter de se retrouver à poil en ‹&nbsp;grub rescue&nbsp;› en cas de gros problème de boot.  
grub-pc est une usine à gaz incroyable, et on se demande bien comment on en a pu en arriver là, mais ce n’est pas le sujet.  
Je n’ai jamais utilisé grub-pc en mode ‹&nbsp;automatique&nbsp;› qui fabrique des grub-cfg ridiculement illisibles (totalement surchargés pour rien).  
Il n’y a pas de règles générales, selon son environnement et niveau de maîtrise du scratch.

En résumé, quand on demande du ‹&nbsp;from scratch&nbsp;›, tout le problème est de comprendre la taille du scratch.

---

<div class="post-metadata">

**Author:** ![loicmtp](https://www.debian-fr.org/user_avatar/www.debian-fr.org/loicmtp/32/13315_2.png) [@loicmtp](https://www.debian-fr.org/u/loicmtp)\
**Post date:** [Novembre 17, 2023, 3:11 UTC](https://www.debian-fr.org/t/installation-from-scratch/89165/13 "2023-11-17T15:11:57Z")

</div>

> [@Verner](#):
>
> Si tu pouvais éviter le ‹ _comme sur arch_ ›, ça m’éviterait de dire ce que je pense de arch.

?  
Franchement … aller, merci quand meme mais bon…
