Outils pour créer votre propre distribution Linux

Outils pour créer votre propre distribution Linux
Cet article décrit les outils les plus populaires pour créer votre propre distribution Linux.

Si vous devez créer une distribution Linux, ce tutoriel clarifiera les problèmes importants tout en donnant une vue rapide sur les processus de création.

Cet article se concentre sur Linux à partir de Scratch et Ubuntu Live comme moyens de créer votre distribution Linux personnalisée. LFS (Linux à partir de zéro) est une excellente méthode pour les utilisateurs avancés, tandis qu'Ubuntu Live est bon pour les inexpérimentés.

Les étapes et les commandes indiquées ne sont pas censées être fonctionnelles mais pour représenter le niveau de difficulté de chaque processus.

Linux à partir de zéro

LFS (Linux à partir de zéro) est l'outil le plus populaire pour créer des distributions Linux personnalisées à partir de la source. La création de votre propre distribution Linux peut inclure certains avantages (et des inconvénients aussi). Parmi les avantages, pendant le processus, vous apprendrez beaucoup sur Linux. Vous saurez comment les modules Linux interagissent et comment personnaliser le système.

La taille du système d'exploitation est également un avantage en fonction de vos ressources matérielles ou de l'utilisation que vous souhaitez donner au système.

Sur leur site Web LFS, les développeurs disent qu'ils ont créé un serveur Web pour travailler avec Apache sur une taille de 5 Mo. Avec Gentoo Linux, Linux à partir de zéro est le moyen le plus flexible de configurer un système Linux. Le construire est assez simple et le processus est décrit étape par étape. Nous ne montrerons que les étapes initiales pour représenter une idée de la difficulté et un lien vers la documentation officielle du stade du bâtiment.

Pour commencer avec Linux à partir de zéro, vous devez d'abord créer une partition (un processus de compilation minimum de 3 Go). Il est également recommandé de créer une partition d'échange ou de partager votre existant (pour des instructions sur le partitionnement, vérifier les partitions de partitionnement dure sous Debian / Ubuntu et les partitions de redimensionnement).

Une fois que vous avez créé la partition, créez la variable $ LFS en exécutant la commande suivante:

exporter LFS = / mnt / lfs

Vous pouvez le vérifier en exécutant la commande suivante:

Echo $ lfs

Créez le répertoire comme indiqué dans ce qui suit:

sudo mkdir -pv $ lfs

Note: Remplacer pour votre partition.

mont -v -t ext3 / dev / $ Lfs

Ensuite, courez pour la partition d'échange:

/ sbin / swapon -v / dev /

Vous devez télécharger les packages dans un répertoire spécifique appelé LFS / Sources. Pour créer le répertoire, exécutez la commande suivante:

sudo mkdir -v $ lfs / sources

Rendez-le écrite et collant.

sudo chmod -v a + wt $ lfs / sources

Télécharger et enregistrer dans le répertoire tous les packages à partir de
https: // www.LinuxFromsCratch.org / LFS / View / Development / Chapter03 / Packages.html

Et de https: // www.LinuxFromsCratch.org / LFS / View / Development / Chapter03 / Patches.html

Alternativement, vous pouvez utiliser la liste WGET: https: // www.LinuxFromsCratch.org / LFS / View / Development / Wget-list

Créez le répertoire des outils et le lien symbolique en exécutant le Commnand suivant:

sudo mkdir -v $ lfs / outils

Ensuite, exécutez la commande suivante:

sudo ln -sv $ lfs / outils /

Exécutez les commandes suivantes pour créer l'utilisateur LFS, ce qui donne des droits sur les répertoires d'outils et de sources. Tapez le mot de passe lorsque vous êtes demandé comme indiqué dans la capture d'écran suivante:

Sudo Groupadd LFS
sudo useradd -s / bin / bash -g lfs -m -k / dev / null lfs
sudo passwd lfs
sudo chown -v lfs $ lfs / outils
sudo chown -v lfs $ lfs / sources
Sudo Su - LFS

Connectez-vous en tant qu'utilisateur LFS et exécutez la commande suivante:

chat> ~ /.bash_profile << "EOF"

Ensuite, exécutez ce qui suit:

exec env -i home = $ home term = $ Term ps1 = '\ u: \ w \ $' / bin / bash

Enfin, tapez la commande suivante:

Eof

Créez un nouveau Bashrc en exécutant la commande suivante:

chat> ~ /.bashrc << "EOF"
Set + H
umask 022
Lfs = / mnt / lfs
LC_ALL = POSIX
Lfs_tgt = $ (uname -m) -lfs-linux-gnu
Chemin = / outils / bin: / bin: / usr / bin
Exporter LFS LC_ALL LFS_TGT Path
Eof

Ensuite, exécutez la commande suivante:

source ~ /.bash_profile
Set Makeflags = '- J 2'

Ensuite, vous pouvez enregistrer les outils pour commencer à construire votre distribution Linux en suivant les étapes de https: // www.LinuxFromsCratch.org / LFS / View / Development / Chapter05 / Introduction.html.

Après avoir terminé, modifiez la propriété du répertoire des outils en exécutant la commande suivante:

sudo chown -r racine: root $ lfs / outils

La documentation officielle pour construire votre distribution, préparer le noyau. Le logiciel de base peut être trouvé ici. C'est une séquence d'étapes dont vous avez besoin pour créer une distribution personnalisée. Les étapes suivantes sont:

  • Préparer un système de fichiers de noyau virtuel
  • Gestion des forfaits
  • Entrer dans l'environnement de chroot
  • Créer des répertoires
  • Création de fichiers et de liens symboliques essentiels
  • Installation de logiciels supplémentaires répertoriés ici
  • Se déshabiller à nouveau
  • Nettoyer

Pour commencer à personnaliser le système, visitez les chapitres suivants:

  • LFS-Bootscripts-20220723
  • Comment fonctionnent ces bootscripts?
  • Création du script setlock
  • Configuration de la console Linux
  • Configuration du script sysklogd
  • Création du fichier / etc / inputrc
  • Les fichiers de démarrage de Shell Bash
  • Gestion des appareils et modules sur un système LFS
  • Créer des liens systématiques personnalisés sur les appareils
  • Configuration du script localnet
  • Personnalisation du fichier / hosts / hosts
  • Personnalisation générale du réseau
  • Création du fichier / etc / fstab
  • Installation du noyau

Enfin, installez Grub à l'aide de Grub pour configurer le processus de démarrage et suivre les étapes avant de redémarrer pour la première fois.

Création de votre propre distribution Linux basée sur Ubuntu

La création d'un Linux personnalisé basé sur Ubuntu est assez facile. Cela peut être fait très rapidement. C'est extrêmement simple par rapport au Linux à partir de zéro mais il n'est pas du tout flexible. Vous pourrez ajouter le logiciel et personnaliser l'arrière-plan et quelques détails. Mais les personnalisations de base comme l'édition du menu Applications ne sont pas prises en charge.

sudo debootstrap

Ajouter la commande suivante:

--Arch = AMD64
--variante = minbase
bionique
$ Home / live-ubuntu-from-scratch / chroot

Réglez les points de montage.

Sudo Mount - Bind / Dev $ Home / Live-Ubuntu-From-Scratch / Chroot / Dev
Sudo Mount - Bind / Run $ Home / Live-Ubuntu-From-Scratch / Chroot / Run
sudo chroot $ home / live-ubuntu-from-scratch / chroot
Mont aucun -t proc / proc
Mont aucun -t sysfs / sys
Mont aucun -t Devpts / Dev / PTS
Exporter à la maison = / root
exporter lc_all = c
Echo "Ubuntu-fs-live"> / etc / hostname

Ensuite, vous devrez mettre à jour les référentiels et exécuter la mise à jour APT en utilisant la commande suivante:

APT-Get Installer -y Systemd-Sysv
dbus-uuidgen> / etc / machine-id
ln -fs / etc / machine-id / var / lib / dbus / machine-id
dpkg-divert - local --rename --add / sbin / initctl
ln -s / bin / true / sbin / initctl
APT-Get Installer -y Ubuntu-standard Casper Lupin-Casper Discover ordinateur portable-détection OS-Prober Network-Manager ResolvConf Net-Tools Wireless-Tools Wpagui LindS-Generic Linux-Generic

Lorsque vous invitez les écrans de configuration comme Grub, appuyez sur Entrée dans les choix par défaut pour continuer. Ensuite, exécutez la commande suivante:

sudo apt install -y ubiquity ubiquity-cakeper ubiquity-frontend-gtk ubiquity-slideshow-ubuntu ubiquity-ubuntu-artwork

Installez n'importe quel gestionnaire de fenêtres X que vous souhaitez.

sudo apt install -y plymouth-thème-ubuntu-logo ubuntu-gnome-desktop ubuntu-gnome-wallpapers

Ajoutez tout logiciel supplémentaire que vous souhaitez dans votre distribution. Ensuite, exécutez ce qui suit:

Mise à jour Sudo apt-get
sudo apt-get install -y code

Sélectionnez vos localités et reconfigurez le résolv.CONF et gestionnaire de réseau.

Sudo DPKG-Reconfigure Lays
Sudo DPKG-Reconfigure Resolv.confli
Sudo DPKG-Reconfigure-Manager

Ensuite, exécutez ce qui suit:

truncate -s 0 / etc / machine-id
RM / SBIN / INITCTL
APT-Get Clean
rm -rf / tmp / * ~ /.bash_history

Décournez tous les systèmes de fichiers.

umount / proc
umount / sys
umount / dev / pts
exporter histsize = 0Exit
sudo umount $ home / live-ubuntu-from-scratch / chroot / dev
sudo umount $ home / live-ubuntu-from-scratch / chroot / run

Créez les répertoires et copiez le noyau et les binaires.

cd $ home / live-ubuntu-from-scratch
MKDIR -P Image / Casper, IsoLinux, Installer
Sudo CP CHROOT / BOOT / VMLINUZ - ** - ** - Image générique / Casper / VmlinUz
sudo cp chroot / boot / initrd.IMG - ** - ** - Image générique / Casper / initrd
sudo cp chroot / boot / memtest86+.Image / installation de bac / memtest86+
wget --progress = dot https: // www.memtest86.com / téléchargements / memtest86-usb.zip -o image / install / memtest86-usb.Zipunzip -p Image / Install / Memtest86-USB.zip memtest86-USB.IMG> Image / Install / Memtest86rm Image / Install / Memtest86-USB.zipper

Pour terminer, configurez Grub en exécutant ce qui suit:

cd $ home / live-ubuntu-from-scratch
Sudo Mksquashfs Chroot Image / Casper / Système de fichiers.squashfs
printf $ (sudo du -sx --block-size = 1 chroot | Cut -F1)> Image / Casper / Système de fichiers.taille
cd $ home / live-ubuntu-from-scratch
CD $ Home / Live-Ubuntu-from-Scratch / Image
grub-mkstandalone - format = x86_64-efi --output = isInUX / bootx64.efi - licales = "" --fonts = "" "boot / grub / grub.cfg = ishinux / grub.CFG "
grub-mkstandalone - format = i386-pc --output = isLinux / noyau.IMG --install-modules = "Linux16 Linux normal iso9660 biosdisk memdisk search Tar ls" --modules = "linux16 linux normal iso9660 biosdisk search" - licales = "" --fonts = "" "boot / grub / grub / grub /.cfg = ishinux / grub.CFG "
chat / usr / lib / grub / i386-pc / cdboot.IMG ISOLINUX / CORE.IMG> ISOLINUX / BIOS.IMG
sudo / bin / bash -c "(trouver . -Tapez F -print0 | xargs -0 md5sum | grep -v "./ md5sum.txt "> md5sum.SMS)"
Sudo xorriso -As Mkisofs -Iso-level 3 -full-Iso9660-Filenames -Volid "" -eltorito-boot Boot / Grub / BiOS.IMG -NO-EMUL-BOOT -boot-wad-size 4 -boot-info-table --eltorito-catalog Boot / grub / boot.chat
--grub2-boot-info --grub2-mbr / usr / lib / grub / i386-pc / boot_hybrid.img -eltorito-alt-boot -e efi / efiboot.IMG -NO-EMUL-BOOT -APPEND_PARTITION 2 0XEF ISOLINUX / EFIBOOT.img -output "… /.ISO "-Graft-Points"."/ boot / grub / bios.IMG = IsoLinux / BIOS.IMG / EFI / EFIBOOT.IMG = IsoLinux / Efiboot.IMG

Comme vous pouvez le voir, le processus avec Ubuntu Live est beaucoup plus rapide et plus facile. Mais ce n'est pas plus qu'une distribution Ubuntu avec des personnalisations de lumière contrairement à Linux à partir de zéro qui est entièrement personnalisable.

Conclusion

Comme vous pouvez le voir, la création d'une distribution Linux peut être une tâche très difficile, mais un bon objectif pour obtenir une compréhension complète du fonctionnement des systèmes Linux. Cela se produit surtout avec la première méthode décrite basée sur Linux à partir de zéro. L'alternative Ubuntu est également un bon point de départ pour les nouveaux utilisateurs qui recherchent une distribution Linux personnalisée basée sur Ubuntu. Le processus LFS est désordonné; N'abandonnez pas avant les erreurs qui sont courantes lors du début. Après tout, vous créez un système d'exploitation.

Nous espérons que vous avez trouvé ce tutoriel utile. Continuez à suivre Linuxhint pour des conseils et des mises à jour supplémentaires sur Linux et la mise en réseau.