构建自己的 LINUX 系统(一)

来源:互联网 发布:linux查看当前用户名 编辑:程序博客网 时间:2024/04/20 15:01

实验目标:基于 Tiny Core 构建一款迷你的 Linux 发行版系统。

这里写图片描述

技能要点:

  • 解构、重构 Linux 文件系统
  • 解析、构建 Tiny Core 的文件系统和软件包
  • 制作支持U盘引导的ISO镜像
  • 使用虚拟机 QEMU 测试系统
  • SYSLinux 构建启动引导
  • Makefile 编写

准备工具:一个 Linux 开发环境(如:Ubuntu、Debian ……)、Makefile 在内的常用开发工具、虚拟机(QEMU 或 VirtualBox 都可以)、syslinux-utils(Debian、Ubuntu 可用 APT 工具安装)、Python(可选)、Gimp之类的绘图工具(可选)。

PS:如果你是用的是主流 Linux 发行系统,那么很多工具你都已经有了。

准备工作空间和“原材料(这里用 TinyCore)”

mkdir mylinux/{template,boot,cde,extends,tools,release} -pcd mylinux# 下载 TinyCore Linux 作为定制的模板wget http://tinycorelinux.net/7.x/x86/release/TinyCore-7.2.iso -O template/tinycore.iso

复制必要文件到指定目录

# 挂载 tinycoremkdir tmpsudo mount -o loop template/tinycore.iso tmp/# 拷贝重要的文件cp tmp/boot/* boot/ -afcp tmp/cde/* cde/ -af# 取消挂载sudo umount tmp/# 递归查看项目目录ls -R

编写 Makefile,重新构建 TinyCore

touch Makefile
QEMU:=qemu-system-i386out.iso: boot/ cde/    mkdir build/    cp boot/ build/ -af    cp cde/ build/ -af    mkisofs -D -r -V "mylinux v0.01" -cache-inodes -J -l \    -b boot/isolinux/isolinux.bin -c boot/isolinux/boot.cat \    -no-emul-boot -boot-load-size 4 -boot-info-table -o out.iso build/    isohybrid out.iso    cp -fv out.iso release/mylinux.isorun: out.iso    ${QEMU} -cdrom out.iso -boot d -m 256clean:    rm -rf out.iso build/

PS: 其中 QEMUqemu-system-i386 的别名;mkisofs 是用来创建 iso 镜像的,-V 用来指定版本名,具体细节可以参考文档;isohybrid 用来产生一个可以制作 U 盘启动盘的 iso 镜像。

重构 TinyCore

安装工具(Debian 系列)

sudo apt-get install syslinux-utilssudo apt-get install qemu

开始构建,并运行

sudo makemake run

这里写图片描述

清理

sudo make clean
1 0
原创粉丝点击