Voici un topic prise de tête , je n'ai plus trop les messages d'erreurs en tête, celà fait plusieurs semaines que je tourne en rond.
But recherché: créer un iso livecd contenant des utilitaires CLI pour dépanner/réparer voir réinstaller un os en utilisant uniquement l'iso.
Contraintes:
- Avoir un système à jour (kernel récent >6.8) prêt à être utilisé
- pas de serveur graphique, pas d'application gtk/qt, uniquement du CLI ou curses.
- base devuan/antix pour apt/aptitude
- pas de systemd, de préférence une distrib mère qui blacklist systemd, ou au moins qui propose des alternatives
- idéalement, pouvoir construire un iso depuis n'importe quelle distrib, n'importe quelle architecture
- les dépendances utilisées pour la construction de l'iso (si incluses dans l'iso) doivent être utiles à l'exécution de l'os
- 700Mo ou moins pour permettre la gravure sur CD, quelle que soit l'architecture sélectionnée (i386, amd64)
- inclure tous les paquets pour ne pas avoir de dépendance à internet.
Rappel de mon expérience passée sur l'année précédente:
Avec le temps j'ai téléchargé pas mal d'iso plus ou moins basées sur debian, et pour différentes utilisations (tests, curiosités, avoir plusieurs iso pour différents bureaux), ou même ayant un but bien précis (récupération/réparation de système), mais au final peu étaient réellement utilisées car çà ne me convenait pas totalement à chaque fois, et télécharger plusieurs Go à chaque fois était pénible.
Mon premier but était de trouver la distrib minimale la plus proche de mes attentes, en vain (il y a toujours des paquets en trop que je vais devoir déinstaller, et rajouter les paquets que je veux).
Aussi avec le temps, j'ai eu des problèmes avec quelques paquets systemd* (bootloop sur plusieurs pc ), ce qui m'a poussé à trouver une "solution" pour éviter ces bootloops mais qui n'en ai réellement pas une, c'est juste une temporisation avant que ça ne pète réellement. J'utilise spirallinux sur les pc qui ont subit ce problème de bootloop: base debian en btrfs et snapshots, donc en cas de problème redémarrage sur l'ancien snapshot, et ca devrait être bon.
Sauf que... grub-btrfs/snapper ont finit par péter aussi lors d'un rollback, et je devais modifier à la main chaque snapshot à utiliser lors de grosses mises à jour, sous peine de redémarrer sur l'ancien snapshot avant mise à jour. Et de temps en temps, grub n'était pas content non plus, je devais donc sortir mon iodd ou clef usb ventoy pour lancer refind et relancer le pc sur un snapshot existant (mais pas forcément le plus récent, dû au problème de grub-btrfs/snapper/snapshots déphasés). Bref, c'est pas pratique du tout, et ca fini toujours pas coincer quelque part.
Du coup, nouvelle solution. Me passer complétement de systemd en espérant ne plus avoir de bootloop (can't mount /tmp ou /home et équivalent) et ne plus me prendre la tête avec btrfs/snapshots qui peuvent eux aussi être problématiques.
Donc retour aux sources avec un système plus simple.
Pour l'instant, et pour ce sujet, j'ai tenté :
- bootcd : paquet debian qui permet de créer un iso à partir du système actuel.
+: peu de dépendances non souhaitées
+: taille contenue, donc qui pourra rester sur l'iso finale
-: l'iso générée n'est pas bootable, du moins lors de mes premiers tests sur un système qui vit depuis des mois.
-: possibilité de réinstaller l'iso ?
- https://gitlab.com/antiX-Linux/Build-iso :
+: scripts qui semblent être utilisés pour construire des iso de Antix linux, rassurant à première vue (c'est testé depuis des années)
-: semble nécessiter un pc tournant déjà sur antix... (s'obstine à sélectionner un kernel *-antix* malgré mes tentatives de modification de scripts/config)
-: j'ai essayé de "personnaliser" les scripts et config pour avoir ma liste de paquets, mais ça fini toujours en erreur lors du debootstrap (problème avec /tmp pas trouvé alors qu'il existe
- https://github.com/MX-Linux/build-i [...] /build-iso :
+: semble être maintenu plus fréquemment que les scripts antix
-: mais trop de dépendance à systemd ou aux outils mx-*, nécessite plus de travail pour nettoyer le tout
- https://penguins-eggs.net/ :
-: dépendances (lua) trop lourde pour la taille CD visée
-: humour/language/lexique/FAQ en italien utilisé qui nécessite aussi de l'apprentissage (eggs, wardrobe, etc...)
- refractainstaller/refractasnapshot:
-: plutôt buggé et ne prend pas en charge des initramfs de type cpio archive https://dev1galaxy.org/viewtopic.php?id=3764&p=2, j'ai tenté le fix proposé de cette page, sans succès.
-: l'outil refractasnapshot semble fonctionner en plusieurs étapes, mais je n'ai pas réussi à générer un iso qui ai une taille "normale", soit la doc ou les infos affichées lors de l'exécution de la commande sont erronées, soit je ne comprends pas.
- mx-iso-snapshot (équivalent CLI de mx-snapshot):
-: outil CLI qui a une dépendance sur un libQT...
- https://github.com/antiX-Linux/antix-snapshot-cli :
-: dépendance à des outils antix, incompatible lors d'un chroot/debbostrap sur pc qui n'exécute pas déjà antix*
-: force ext4 pour le nouveau snapshot, ce qui peut être problématique si un autre système de fichier est utilisé (ce n'est pas un vrai snapshot donc)
- https://git.devuan.org/devuan/installer-iso :
-: build-sudo.sh: erreurs sur localdeb
-: nécessite trop de dépendances à installer sur le système hôte, avant construction de l'iso
- https://www.devuan.org/os/distro-kit pointe sur live-sdk https://git.devuan.org/devuan-sdk/live-sdk.git :
+: correspond à ce que je veux réaliser
-: nécessite d'installer deboostrap issu des repo devuan pour avoir les scripts nécessaires pour créer les distrib
-: le paragraphe "Quick Start" est trop simpliste, je ne connais pas zsh, les commandes load devuan amd64 et build_iso_dist sont introuvables.
Il y a une solution à ce problème c'est sur, des iso sont construites automatiquement tous les jours par certaines distrib ou utilisateurs, pourquoi est-ce aussi compliqué de trouver toute la procédure pour le faire manuellement ?
J'ai tenté de faire un snapshot personnalisé basé sur antix core ou https://sourceforge.net/projects/mx [...] ns/MX-CLI/ mais étrangement au démarrage la config réseau/resolvconf devait être ajustée à chaque fois alors que ca ne posait pas de problème avant snapshot.
D'autres liens en vrac:
https://www.willhaley.com/blog/cust [...] vironment/
https://forum-debian.fr/viewtopic.php?t=879
https://kaisenlinux.org/documentati [...] m-iso.html (pas testé et je n'ai pas vérifié l'init utilisé)
https://live-team.pages.debian.net/ [...] ex.fr.html (trop long, pas la motivation)
https://www.willhaley.com/blog/cust [...] vironment/
https://help.ubuntu.com/community/M [...] iskInstall
Je n'ai pas essayé la virtualisation car je pense qu'on ne devrait pas avoir besoin d'émuler un os pour construire l'iso qui va être utilisé pour démarrer un autre pc/architecture. On ne doit pas avoir besoin d'une roue pour réinventer la roue.
J'ai les idées et neurones en vrac, si vous avez des idées, ou alternatives, ou déjà rencontrés certains des problèmes rencontrés, je suis preneur.