[Openwrt编译] 4. Target Images里面都有什么?
这是make menuconfig篇的第二篇,本篇将围绕Target Images选项,这个选项主要设定输出固件的相关信息。
这个页面的内容会根据设备类型改变,本篇以x86_64类型做示例。没提到的选项就代表我也不清楚功能
EXT4
勾选后会在编译时额外打包一个ext4分区类型的固件,这种固件类似于windows,完全可读写,没有恢复出厂设置功能。
squashfs
勾选后会额外打包一个squashfs固件,特点是分区只读,可以恢复出厂设置,原理大概为:首次启动时将分区内容复制到一个新的可写区域内,之后的插件的安装卸载,配置的修改等等都在这个新的分区内操作,原分区不改变,如需要恢复出厂设置就直接清空新分区,再重新从原分区复制数据。
Build GRUB images
将会打包BIOS/Legacy类型引导的固件,引导类型与主板相关,老式主板一般只支持这种引导
Build GRUB EFI images
将会打包支持UEFI引导的固件,较新的主板都已支持UEFI引导
Use Console Terminal (in addition to Serial)
默认为勾选状态,勾选后会在屏幕上输出类似下面的信息:
这些信息其实是内核日志,在这个页面按下回车会进入openwrt的控制台,如果你不希望输出这些跑码信息,取消勾选即可。
Build LiveCD image (ISO)
勾选后会额外打包一个iso格式的固件。
Build PVE/KVM image files (QCOW2)
勾选后会额外打包PVE或者是KVM虚拟机可用的虚拟磁盘文件qcow2。
Build VirtualBox image files (VDI)
勾选后会额外打包VirtualBox虚拟机可用的虚拟磁盘文件vdi。
Build VMware image files (VMDK)
勾选后会额外打包VMware产品(如:ESXi,VMware Workstation)可用的虚拟磁盘文件vmdk。
Build Hyper-V image files (VHDX)
勾选后会额外打包Hyper-V虚拟机的虚拟磁盘文件vhdx。
Kernel partition size (in MiB)
可设定内核分区的大小,单位是MB,不用太大,嫌小可以改为32或者64
Root filesystem partition size (in MiB)
可设定文件系统分区的大小,如果你需要增大软件包可用空间 / 需要扩容,那么可以适当最大这个选项的数值,单位是MB。
设定时要考虑实际安装时的硬盘大小,防止固件大于硬盘空间,过大的固件可能造成太长的写入固件时间,需要更大的磁盘空间建议安装后扩容,而不是调整文件系统分区大小
Kernel partition size和Root filesystem partition size如果设置的太大就会在编译时占用大量磁盘空间,而过大的空间占用可能会造成编译失败。
Kernel partition size建议默认或者是32MB
Root filesystem partition size建议控制在4000MB以下