Heim  >  Artikel  >  System-Tutorial  >  So erstellen Sie ein Linux-ISO-Image von Grund auf (grafisches Tutorial)

So erstellen Sie ein Linux-ISO-Image von Grund auf (grafisches Tutorial)

PHPz
PHPznach vorne
2024-01-06 22:21:463118Durchsuche

1. Vorwort

Für ein sehr vereinfachtes Linux-System sind nur drei Teile erforderlich: ein Linux-Kernel, ein Root-Dateisystem und ein Boot. Die folgenden Systeme und Software werden in diesem Artikel zum Erstellen von Linux-ISO-Images verwendet:

Betriebssystem: Ubuntu 20
Software: xorriso

2. Linux-Kernel erstellen

1. Zuerst müssen Sie auf die offizielle Website gehen, um eine erforderliche Version auszuwählen und sie herunterzuladen. Die offizielle Website-Download-Adresse: https://www.php.cn/link/293835c2cc75b585649498ee74b395f5

2. Entpacken Sie es mit tar, geben Sie dann sein Verzeichnis ein und konfigurieren Sie dann den Kernel. Zu den allgemeinen Konfigurationen gehören die folgenden:
a、make defconfig – Standardkonfiguration
b. make allyesconfig – Erstellen Sie eine Konfiguration, die es Ihnen ermöglicht, „Ja“ auszuwählen, wählen Sie einfach „Ja“. c. make allnoconfig – Erstellen Sie eine Konfiguration, in der Sie „Nein“ wählen können, wählen Sie einfach „Nein“. d.make menuconfig – Ncurser-basierte grafische Schnittstellenkonfiguration
Hier können Sie den Befehl make defconfig verwenden, um die Standardeinstellung zu verwenden, wie in der Abbildung unten gezeigt:

如何从零开始制作一个linux iso镜像(图文教程) 3. Verwenden Sie dann den Befehl

, um den Kernel zu kompilieren, wie in der Abbildung unten gezeigt:

make bzImage

如何从零开始制作一个linux iso镜像(图文教程) Die kompilierte Kerneldatei befindet sich im entsprechenden Architekturordner des

-Ordners, wie in der folgenden Abbildung dargestellt:

arch

如何从零开始制作一个linux iso镜像(图文教程)3. Erstellen Sie ein Root-Dateisystem

1. Wir verwenden Busybox, um ein Root-Dateisystem zu erstellen. Busybox kann einfach als eine Sammlung von Linux-Tools verstanden werden. Laden Sie zunächst Busybox herunter, offizielle Download-Adresse der Website:

https://www.php.cn/link/890ff058169b5a1d1a7f07d467f1f57b

2. Die Schritte zum Kompilieren von Busybox sind im Grunde die gleichen wie beim Kompilieren des heruntergeladenen komprimierten Pakets, geben Sie dann den Ordner ein und konfigurieren Sie die Standardkompilierungsoptionen mit

, wenn nicht, fügen Sie „Das ist es“ hinzu, wie im Bild unten gezeigt:

.config配置文件中,需要设置CONFIG_STATIC=y

如何从零开始制作一个linux iso镜像(图文教程)

如何从零开始制作一个linux iso镜像(图文教程) 3. Verwenden Sie dann den Ordner

, wie unten gezeigt:

make busybox install命令编译busybox,编译好后会在当前目录下面生产一个_install

如何从零开始制作一个linux iso镜像(图文教程)

如何从零开始制作一个linux iso镜像(图文教程) 4. Erstellen Sie dann eine

-Datei. Der Inhalt der Datei ist wie folgt:

rootfs文件夹,并将_install文件夹下面除linuxxrc以外的所有文件及文件夹都拷贝到rootfs文件夹下面,最后创建dev等文件夹,最后在根目录下面创建init

如何从零开始制作一个linux iso镜像(图文教程)

如何从零开始制作一个linux iso镜像(图文教程) 5. Verwenden Sie abschließend den Befehl

, um das Dateisystem zu packen. An diesem Punkt wird ein Dateisystem erstellt, wie in der folgenden Abbildung dargestellt:

find . | cpio -R root:root -H newc -o | gzip > ../rootfs.gz

4. BIOS

1. Hier verwenden wir die syslinux来创建bios引导的一个linux iso镜像,syslinuxoffizielle Download-Adresse wie folgt: https://www.php.cn/link/364c32263dd3f0df5095b65321f3cd79

2. Platzieren Sie den heruntergeladenen syslinux解压,然后创建文件夹isobios,将解压后的syslinux文件夹下面的bios/core/isolinux.binbios/com32/elflink/ldlinux/ldlinux.c32复制到isobios-Ordner unten, wie in der Abbildung unten gezeigt:

如何从零开始制作一个linux iso镜像(图文教程)

3. Bei isobios文件夹下面创建配置文件isolinux.cfg lautet der Dateiinhalt wie folgt:

如何从零开始制作一个linux iso镜像(图文教程)

4. Generieren Sie abschließend die ISO-Image-Datei in isobios文件夹下面使用命令xorriso -as mkisofs -o ../testbios.iso -b isolinux.bin -c boot.cat -no-emul-boot -boot-load-size 4 -boot-info-table ./, wie in der Abbildung unten gezeigt:

如何从零开始制作一个linux iso镜像(图文教程)

5. Verwenden Sie eine virtuelle Maschine vmwareErstellen Sie eine virtuelle Maschine, wie in der Abbildung unten gezeigt. So sieht das von uns erstellte Linux-ISO-Image aus, wenn es ausgeführt wird.

如何从零开始制作一个linux iso镜像(图文教程)

5. UEFI

1. uefi wird hier im system-bootsyslinux配合来制作,首先,创建两个文件夹isouefitmp,其中,isouefi用来挂载设备,tmp文件夹用来临时存放文件以计算大小,然后在tmp文件夹下面创建EFI/BOOTloader/entries目录,接着,将解压后的systemboot下面的uefi_boot/EFI/BOOT/BOOTx64.EFI文件拷贝到tmp/EFI/BOOT-Verzeichnis verwendet, wie in der folgenden Abbildung dargestellt:

如何从零开始制作一个linux iso镜像(图文教程)

2. Als nächstes im Verzeichnis tmp/loader目录下面,创建文件loader.conf配置文件,第一行表示默认配置是entries目录下那个文件,第二行设置默认超时时间;然后在entries文件夹下面创建相应的配置文件,这里是mll-x86_64.conf,文件内容和bios的差不多,不在单独细说,最后再将前面准备好的内核和文件系统拷贝到tmp, wie in der Abbildung unten gezeigt:

如何从零开始制作一个linux iso镜像(图文教程)

如何从零开始制作一个linux iso镜像(图文教程)

如何从零开始制作一个linux iso镜像(图文教程)

3. Zu diesem Zeitpunkt können Sie auf das Verzeichnis tmp文件夹的总大小创建一个相同大小的img文件了,这里的tmp11M,为了稳妥起见,这里创建一个12Mimg文件,命令为truncate -s 12M uefi.img,然后使用losetup -f命令寻找一个当前未使用的逻辑设备,然后使用losetup命令将我们前面创建的img文件虚拟成改逻辑设备,接着利用mkfs.vfat将该设备格式化成vfat系统,接着使用mount命令将其挂载到isouefi文件夹下面,最后将tmp文件夹下面所有文件及其文件夹拷贝到isouefi klicken, wie in der Abbildung unten gezeigt:

如何从零开始制作一个linux iso镜像(图文教程)

如何从零开始制作一个linux iso镜像(图文教程)

4. Verwenden Sie dann die umount命令取消挂载,这样我们就得到一个包含内核文件系统等的img文件,接着创建一个iso文件夹,并且在该文件夹下面将创建一个boot文件夹,然后将img复制到iso/boot下面,最后利用xorriso工具生成iso-Datei, wie unten gezeigt:

如何从零开始制作一个linux iso镜像(图文教程)

5. Erstellen Sie abschließend eine neue virtuelle Maschine, wählen Sie UEFI zum Booten aus und starten Sie sie, wie in der Abbildung unten gezeigt:

如何从零开始制作一个linux iso镜像(图文教程)

如何从零开始制作一个linux iso镜像(图文教程)

6. Verwandte Links

Github-Link: https://www.php.cn/link/e32c6c0d76c602ec48a1ec030982eb85

Das obige ist der detaillierte Inhalt vonSo erstellen Sie ein Linux-ISO-Image von Grund auf (grafisches Tutorial). Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Dieser Artikel ist reproduziert unter:jb51.net. Bei Verstößen wenden Sie sich bitte an admin@php.cn löschen