Maison > Article > Tutoriel système > Comment créer une image ISO Linux à partir de zéro (tutoriel graphique)
Pour un système Linux très simplifié, cela ne nécessite que trois parties, à savoir un noyau Linux, un système de fichiers racine et un démarrage. Voici les systèmes et logiciels utilisés dans cet article pour créer des images ISO Linux :
Système d'exploitation : Ubuntu 20
Logiciel : xorriso
1. Tout d'abord, vous devez vous rendre sur le site officiel pour sélectionner une version requise et la télécharger. L'adresse de téléchargement du site officiel : https://www.php.cn/link/293835c2cc75b585649498ee74b395f5
. 2. Utilisez tar pour le décompresser, puis entrez dans son répertoire, puis configurez le noyau. Les configurations courantes sont les suivantes :
a、make defconfig - configuration par défaut
b. make allyesconfig - créez une configuration qui vous permet de sélectionner oui, sélectionnez simplement oui
c. make allnoconfig - Créez une configuration dans laquelle vous pouvez choisir non, choisissez simplement non
d.make menuconfig - configuration de l'interface graphique basée sur ncurser
Ici, vous pouvez utiliser la commande make defconfig pour utiliser celle par défaut, comme le montre la figure ci-dessous :
3. Utilisez ensuite la commande make bzImage
pour compiler le noyau, comme indiqué dans la figure ci-dessous :
Le fichier du noyau compilé se trouve dans le dossier d'architecture correspondant du dossier arch
, comme le montre la figure ci-dessous :
1. Nous utilisons Busybox pour créer un système de fichiers racine. Busybox peut être simplement compris comme une collection d'outils Linux. Tout d'abord, téléchargez Busybox, adresse de téléchargement du site officiel : https://www.php.cn/link/890ff058169b5a1d1a7f07d467f1f57b
2. Les étapes pour compiler busybox sont fondamentalement les mêmes que pour compiler le noyau. Décompressez le package compressé téléchargé, puis entrez dans le dossier et utilisez make defconfig pour configurer les options de compilation par défaut. Il convient de noter ici que dans le .config
配置文件中,需要设置CONFIG_STATIC=y
généré, si. non, ajoutez Ça y est, comme le montre l'image ci-dessous :
3. Utilisez ensuite le dossier make busybox install
命令编译busybox,编译好后会在当前目录下面生产一个_install
, comme indiqué ci-dessous :
4. Créez ensuite un rootfs
文件夹,并将_install
文件夹下面除linuxxrc
以外的所有文件及文件夹都拷贝到rootfs
文件夹下面,最后创建dev
等文件夹,最后在根目录下面创建init
fichier. Le contenu du fichier est tel qu'indiqué ci-dessous :
5. Enfin, utilisez la commande find . | cpio -R root:root -H newc -o | gzip > ../rootfs.gz
pour empaqueter le système de fichiers. À ce stade, un système de fichiers est créé, comme le montre la figure ci-dessous :
1. Ici, nous utilisons l'adresse de téléchargement syslinux
来创建bios
引导的一个linux iso镜像,syslinux
officielle comme suit : https://www.php.cn/link/364c32263dd3f0df5095b65321f3cd79
2. Placez le dossier téléchargé syslinux
解压,然后创建文件夹isobios
,将解压后的syslinux
文件夹下面的bios/core/isolinux.bin
、bios/com32/elflink/ldlinux/ldlinux.c32
复制到isobios
ci-dessous, comme indiqué dans la figure ci-dessous :
3. En isobios
文件夹下面创建配置文件isolinux.cfg
, le contenu du fichier est le suivant :
4. Enfin, générez le fichier image iso dans isobios
文件夹下面使用命令xorriso -as mkisofs -o ../testbios.iso -b isolinux.bin -c boot.cat -no-emul-boot -boot-load-size 4 -boot-info-table ./
, comme indiqué dans la figure ci-dessous :
5. Utilisez une machine virtuelle vmware
Créez une machine virtuelle, comme le montre la figure ci-dessous, voici à quoi ressemble l'image ISO Linux que nous avons créée lorsqu'elle s'exécute.
1. uefi est utilisé ici sous le répertoire system-boot
和syslinux
配合来制作,首先,创建两个文件夹isouefi
和tmp
,其中,isouefi
用来挂载设备,tmp
文件夹用来临时存放文件以计算大小,然后在tmp
文件夹下面创建EFI/BOOT
和loader/entries
目录,接着,将解压后的systemboot
下面的uefi_boot/EFI/BOOT/BOOTx64.EFI
文件拷贝到tmp/EFI/BOOT
, comme le montre la figure ci-dessous :
2. Ensuite, sous le répertoire tmp/loader
目录下面,创建文件loader.conf
配置文件,第一行表示默认配置是entries
目录下那个文件,第二行设置默认超时时间;然后在entries
文件夹下面创建相应的配置文件,这里是mll-x86_64.conf
,文件内容和bios
的差不多,不在单独细说,最后再将前面准备好的内核和文件系统拷贝到tmp
, comme indiqué ci-dessous :
3. A ce moment, vous pouvez cliquer sur le répertoire tmp
文件夹的总大小创建一个相同大小的img
文件了,这里的tmp
是11M
,为了稳妥起见,这里创建一个12M
的img
文件,命令为truncate -s 12M uefi.img
,然后使用losetup -f
命令寻找一个当前未使用的逻辑设备,然后使用losetup
命令将我们前面创建的img
文件虚拟成改逻辑设备,接着利用mkfs.vfat
将该设备格式化成vfat
系统,接着使用mount
命令将其挂载到isouefi
文件夹下面,最后将tmp
文件夹下面所有文件及其文件夹拷贝到isouefi
, comme le montre la figure ci-dessous :
4. Utilisez ensuite le fichier umount
命令取消挂载,这样我们就得到一个包含内核
、文件系统
等的img
文件,接着创建一个iso
文件夹,并且在该文件夹下面将创建一个boot
文件夹,然后将img
复制到iso/boot
下面,最后利用xorriso
工具生成iso
, comme indiqué ci-dessous :
5. Enfin, créez une nouvelle machine virtuelle, sélectionnez uefi pour le démarrage et démarrez-la, comme indiqué dans la figure ci-dessous :
lien github : https://www.php.cn/link/e32c6c0d76c602ec48a1ec030982eb85
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!