如何制作自己的LINUX系统?
来源:百度知道 编辑:UC知道 时间:2024/06/20 17:13:47
1楼你好,本人是LINUX门外汉,用win好几年了,不想这么不稳定下去,希望找一款终身使用的系统,而且不是想学学LINUX的使用就好了,还想学内核,知道它的构造,去掉多余的功能,这样才不会老是被攻击什么的
2楼你好,请问要学多久
自己定制linux系统这个是需要非常了解和理解linux内核和其他系统代码方面知识才能完成的(以下是知识准备):
Linux的启动过程原理
initramfs的本质,如何编译内核,制作OpenStack镜像的根本原理
initramfs, 内核,镜像之间的关系
chroot的根本原理,以及网上将linux安装在arm的安卓手机的基本原理
简要说下系统定制的基本流程(步骤):
创建工作目录
使用busybox生成根文件系统中的bin等目录
创建服务启动脚本与inittab文件与fstab文件
创建根文件系统的init脚本(initrc使用linuxrc,而initramfs使用init脚本,所以先删除busybox为initrc生成的默认的linuxrc文件,rm-rf$LINUX/linuxrc),init文件可以是任何ELF格式的可执行性文件,例如如果是一个编译过的C程序也是可以的,记得安装编译c文件要用到的库:sudoyum install -y glibc-static libstdc++-static。
使用chroot在未make内核之前就可以先测试initramfs
构建initramfs,先配置支持Generalsetup -> Initial RAM filesystem and RAM disk (initramfs/initrd)support (默认就是支持的),再将linux内核的CONFIG_INITRAMFS_SOURCE(Generalsetup -> initramfs sourcefile(s))指向这个目录,然后执行make命令内核就会自动构建生成initramfs了(是一个压缩过的cpio档案文件),并且将它链接到内核镜像中。
调试验证。可以使用物理机验证,也可以采用qemu虚机验证。如果使用物理机来验证的