OS: ubuntu 20
Perisian: xorriso
https://www.php.cn/link/293835c2cc75b585649498ee74b395f5
2. Gunakan tar untuk membuka zipnya, kemudian masukkan direktorinya, dan kemudian konfigurasikan konfigurasi biasa termasuk yang berikut:
a、buat defconfig - konfigurasi lalai
b. buat allyesconfig - buat konfigurasi yang membolehkan anda memilih ya, hanya pilih ya
c. buat allnoconfig - Buat konfigurasi di mana anda boleh memilih tidak, hanya pilih tidak
d.make menuconfig - konfigurasi antara muka grafik berasaskan ncurser
Di sini anda boleh menggunakan arahan make defconfig untuk menggunakan yang lalai, seperti yang ditunjukkan dalam rajah di bawah:
3. Kemudian gunakan arahan
untuk menyusun kernel, seperti yang ditunjukkan dalam rajah di bawah: make bzImage
Fail kernel yang disusun berada di bawah folder seni bina yang sepadan folder
, seperti yang ditunjukkan dalam rajah di bawah: arch
3. Buat sistem fail akar
https://www.php.cn/link/890ff058169b5a1d1a7f07d467f1f57b
2. Langkah-langkah untuk menyusun busybox pada asasnya adalah sama seperti menyusun kernel Unzip pakej termampat yang dimuat turun, kemudian masukkan folder dan gunakan make defconfig untuk mengkonfigurasi pilihan kompilasi lalai tidak, tambah Itu sahaja, seperti yang ditunjukkan dalam gambar di bawah:
.config
配置文件中,需要设置CONFIG_STATIC=y
3. Kemudian gunakan folder
, seperti yang ditunjukkan di bawah:
make busybox install
命令编译busybox,编译好后会在当前目录下面生产一个_install
4. Kemudian buat fail
Kandungan fail adalah seperti di bawah:
rootfs
文件夹,并将_install
文件夹下面除linuxxrc
以外的所有文件及文件夹都拷贝到rootfs
文件夹下面,最后创建dev
等文件夹,最后在根目录下面创建init
5. Akhir sekali, gunakan arahan
untuk membungkus sistem fail Pada ketika ini, sistem fail dicipta, seperti yang ditunjukkan dalam rajah di bawah:
find . | cpio -R root:root -H newc -o | gzip > ../rootfs.gz
1. Di sini kami menggunakan syslinux
来创建bios
引导的一个linux iso镜像,syslinux
alamat muat turun rasmi seperti berikut: https://www.php.cn/link/364c32263dd3f0df5095b65321f3cd79
2. Letakkan folder syslinux
解压,然后创建文件夹isobios
,将解压后的syslinux
文件夹下面的bios/core/isolinux.bin
、bios/com32/elflink/ldlinux/ldlinux.c32
复制到isobios
yang dimuat turun di bawah, seperti yang ditunjukkan dalam rajah di bawah:
3. Pada isobios
文件夹下面创建配置文件isolinux.cfg
, kandungan fail adalah seperti berikut:
4. Akhir sekali, jana fail imej iso dalam isobios
文件夹下面使用命令xorriso -as mkisofs -o ../testbios.iso -b isolinux.bin -c boot.cat -no-emul-boot -boot-load-size 4 -boot-info-table ./
, seperti yang ditunjukkan dalam rajah di bawah:
5. Gunakan mesin maya vmware
Buat mesin maya, seperti gambar rajah di bawah, beginilah rupa imej iso linux yang kami cipta semasa ia berjalan.
1. uefi digunakan di sini di bawah direktori system-boot
和syslinux
配合来制作,首先,创建两个文件夹isouefi
和tmp
,其中,isouefi
用来挂载设备,tmp
文件夹用来临时存放文件以计算大小,然后在tmp
文件夹下面创建EFI/BOOT
和loader/entries
目录,接着,将解压后的systemboot
下面的uefi_boot/EFI/BOOT/BOOTx64.EFI
文件拷贝到tmp/EFI/BOOT
, seperti yang ditunjukkan dalam rajah di bawah:
2. Seterusnya, di bawah direktori tmp/loader
目录下面,创建文件loader.conf
配置文件,第一行表示默认配置是entries
目录下那个文件,第二行设置默认超时时间;然后在entries
文件夹下面创建相应的配置文件,这里是mll-x86_64.conf
,文件内容和bios
的差不多,不在单独细说,最后再将前面准备好的内核和文件系统拷贝到tmp
, seperti yang ditunjukkan di bawah:
3. Pada masa ini, anda boleh klik pada direktori tmp
文件夹的总大小创建一个相同大小的img
文件了,这里的tmp
是11M
,为了稳妥起见,这里创建一个12M
的img
文件,命令为truncate -s 12M uefi.img
,然后使用losetup -f
命令寻找一个当前未使用的逻辑设备,然后使用losetup
命令将我们前面创建的img
文件虚拟成改逻辑设备,接着利用mkfs.vfat
将该设备格式化成vfat
系统,接着使用mount
命令将其挂载到isouefi
文件夹下面,最后将tmp
文件夹下面所有文件及其文件夹拷贝到isouefi
, seperti gambar rajah di bawah:
4. Kemudian gunakan fail umount
命令取消挂载,这样我们就得到一个包含内核
、文件系统
等的img
文件,接着创建一个iso
文件夹,并且在该文件夹下面将创建一个boot
文件夹,然后将img
复制到iso/boot
下面,最后利用xorriso
工具生成iso
, seperti yang ditunjukkan di bawah:
5. Akhir sekali, cipta mesin maya baharu, pilih uefi untuk but, dan mulakannya, seperti yang ditunjukkan dalam rajah di bawah:
pautan github: https://www.php.cn/link/e32c6c0d76c602ec48a1ec030982eb85
Atas ialah kandungan terperinci Bagaimana untuk membuat imej iso linux dari awal (tutorial grafik). Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!