在部署用Windows系统构建的CLFS临时系统时,如果目标机器没有安装任何操作系统,除了使用NFS方式(参考:在Windows上构建Linux系统——后传一:用NFS部署目标系统)外,也可以使用光盘部署,同NFS方式一样,完全实现在Windows系统上构建Linux系统。
有了自力更生型的CLFS部署方式的准备后,我们就可以用CD部署CLFS的临时系统了。本文直接列出完整的命令,详细的分析和说明,请参考自力更生型的CLFS部署方式。
1、制作initramfs
mkdir -p ~/clfs-ins/rootfs
cd ~/clfs-ins
cp -a ~/clfs/{bin,boot,dev,etc,home,lib,media,mnt,opt,proc,root,sbin,srv,sys,tmp,usr,var,tools} rootfs/
cd rootfs
ln -s sbin/init init
确认 etc/fstab文件是否正确,如果有必要,则调整 etc/fstab文件的内容。然后,生成initramfs:
find . | cpio -o -H newc |gzip -9 > ../initramfs.cpio.gz
特别说明:
1)因为CLFS的临时系统命令和库文件等都位于 tools 目录,所以tools目录需要打包到initramfs中。
2)注意 ln -s sbin/init init 命令中init符号连接到 sbin/init,不能是 /sbin/init 。如果连接到 /sbin/init ,则由于cygwin的特点,实际会连接到 /sbin/init.exe,导致initramfs的初始化程序无法运行。
2、制作部署光盘的iso文件
cd ~/clfs-ins
mkdir -p iso/boot/grub
cp ~/clfs/usr/lib/grub/i386-pc/stage2_eltorito iso/boot/grub
vi iso/boot/grub/menu.lst
default 0
timeout 10
color green/black light-green/black
title CLFS install environment
root (cd)
kernel /boot/clfskernel-2.6.17.13
initrd /boot/initramfs.cpio.gz (斜体字为 menu.lst文件的内容)
cp rootfs/boot/clfskernel-2.6.17.13 iso/boot
cp initramfs.cpio.gz iso/boot
因为还需要在目标机器上继续构建CLFS系统,所以还需要把所需的packages和patches拷贝到光盘构建目录:
mkdir iso/sources
cp ~/clfs/sources/* iso/sources
好了,现在可以生成iso文件了:
mkisofs -R -b boot/grub/stage2_eltorito -no-emul-boot -boot-load-size 4 -boot-info-table -o clfs-ins.iso iso
可以用windows下的QEMU虚拟机试验一下刚刚生成的iso文件:
qemu.exe -L Bios -m 384 -cpu pentium3 -hda Images\\linux.img -no-kqemu -cdrom
C:\\cygwin\\home\\yyh\\clfs-ins\\clfs-ins.iso -boot d
特别说明:
1)cygwin中的mkisofs命令属于mkisofs软件包,使用前需要安装这个软件包。mkisofs软件是genisoimage软件包的链接,所以安装mkisofs软件包是会自动安装genisoimage软件包。
2)cygwin中的mkisofs命令的 -boot 参数中的启动文件的路径是相对于iso打包目录的,所以上面mkisofs命令指定为boot/grub/stage2_eltorito ,实际是 iso/boot/grub/stage2_eltorito 。但该参数不能指定为 iso/boot/grub/stage2_eltorito ,否则mkisofs提示不能找到启动文件,这点与Linux系统下的mkisofs命令不同,需注意。
3)QEMU的虚拟机内存大小要指定为384M,256M不够。
4)因为系统从光盘启动后,要从光盘中的sources目录中拷贝packages和patches,所以内核必须支持ISO9660文件系统。文件系统的支持,可以编译进内核,也可以编译成内核模块,在拷贝文件前加载到内核中。
3、向目标系统部署CLFS临时系统
略。具体操作参照:在Windows上构建Linux系统——后传一:用NFS部署目标系统。
分享到:
相关推荐
《深度探索Linux操作系统——系统构建和原理解析》原书全彩完整版,该书对linux内核介绍的非常详细,强烈推荐。
《手把手教你构建自己的Linux系统》以如何使用源代码搭建一套Linux系统这一独特的角度介绍Linux系统的构成,主要内容包括走进GNU/Linux、LFS,Linux系统定制原理,制作GNU/Linux系统的准备工作,本地定制GNU/Linux...
《手把手教你构建自己的Linux系统》以如何使用源代码搭建一套Linux系统这一独特的角度介绍Linux系统的构成,主要内容包括走进GNU/Linux、LFS,Linux系统定制原理,制作GNU/Linux系统的准备工作,本地定制GNU/Linux...
《手把手教你构建自己的Linux系统》以如何使用源代码搭建一套Linux系统这一独特的角度介绍Linux系统的构成,主要内容包括走进GNU/Linux、LFS,Linux系统定制原理,制作GNU/Linux系统的准备工作,本地定制GNU/Linux...
《手把手教你构建自己的Linux系统》以如何使用源代码搭建一套Linux系统这一独特的角度介绍Linux系统的构成,主要内容包括走进GNU/Linux、LFS,Linux系统定制原理,制作GNU/Linux系统的准备工作,本地定制GNU/Linux...
高清文字版的 深度探索Linux操作系统——系统构建和原理解析
所有源码均经过严格测试,可以直接运行,可以放心下载使用。...许多知名的科学计算软件都在Linux上开发和运行,Linux系统在各个领域都有广泛的应用,其强大的功能和灵活性使得它成为许多产品和服务的基础架构。
《手把手教你构建自己的Linux系统》以如何使用源代码搭建一套Linux系统这一独特的角度介绍Linux系统的构成,主要内容包括走进GNU/Linux、LFS,Linux系统定制原理,制作GNU/Linux系统的准备工作,本地定制GNU/Linux...
所有源码均经过严格测试,可以直接运行,可以放心下载使用。...许多知名的科学计算软件都在Linux上开发和运行,Linux系统在各个领域都有广泛的应用,其强大的功能和灵活性使得它成为许多产品和服务的基础架构。
JBPM采购申请系统——05_构建JBPM数据库.7z JBPM采购申请系统——05_构建JBPM数据库.7z JBPM采购申请系统——05_构建JBPM数据库.7z JBPM采购申请系统——05_构建JBPM数据库.7z JBPM采购申请系统——05_构建JBPM...
1.3 安装Linux系统 2 1.4 使用root用户 5 1.5 启用自动登录 5 1.6 挂载实验分区 6 1.7 安装ssh服务器 6 1.8 更改网络模式 7 1.9 安装增强模式 8 1.10 使用Xephyr 8 第2章 工具链 10 2.1 编译过程 10 2.1.1 预编译 12...
全场景AI助力构建智能电网——智慧电力行业解决方案.pdf 全场景AI助力构建智能电网——智慧电力行业解决方案.pdf 全场景AI助力构建智能电网——智慧电力行业解决方案.pdf 全场景AI助力构建智能电网——智慧电力行业...
《深度探索Linux操作系统:系统构建和原理解析》 [1] 是探索Linux操作系统原理的里程碑之作,在众多的同类书中独树一帜。它颠覆和摒弃了传统的从阅读Linux内核源代码着手学习Linux操作系统原理的方式,而是基于实践...
信息安全工程实验二——Windows操作系统安全 理解操作系统安全对电子商务安全的重要性; (二)熟悉操作系统安全机制以及Windows安全策略 ; (三)掌握对Windows操作系统进行安全配置的基本方法和步骤并...
Linux安全操作系统构建方法与技术(第一讲)——构建方法与技术.pdf
《构建嵌入式Linux系统 第2版》PDF版本下载
《手把手教你构建自己的Linux系统》以如何使用源代码搭建一套Linux系统这一独特的角度介绍Linux系统的构成 主要内容包括走进GNU Linux LFS Linux系统定制原理 制作GNU Linux系统的准备工作 本地定制GNU Linux系统 ...
敏捷Acegi、CAS++构建安全的Java系统pdf——part5
构建微服务云原生应用——服务容器化和 Docker Compose 部署.pdf
它颠覆和摒弃了传统的从阅读linux内核源代码着手学习linux操作系统原理的方式,而是基于实践,以从零开始构建一个完整的linux操作系统的过程为依托,指引读者在实践中去探索操作系统的本质。这种方式的妙处在于,让...