|

楼主 |
发表于 2008-3-21 00:36:54
|
显示全部楼层
已试验成功使用NFS部署CLFS临时系统,完全实现在Windows系统上构建Linux系统。
我博客中的排版较好:http://linuxman.blog.ccidnet.com ... -itemid-268379.html
2008年03月20日 21:59:08
在Windows上构建Linux系统——后传一:用NFS部署目标系统
在部署用Windows系统构建的CLFS临时系统时,使用NFS可以不需要目标机器安装任何操作系统,完全实现在Windows系统上构建Linux系统。使用NFS部署CLFS临时系统,也是CLFS文档推荐的一种方法。实现在Windows系统下用NFS部署CLFS目标系统,关键是找到Windows系统下的NFS的Server端软件。现在,这个问题已解决。
一、安装、设置Windows系统下的NFS Server软件
按照《Windows上的NFS Server 软件》(http://linuxman.blog.ccidnet.com ... 处不再重复。
二、安装、设置PXE网络启动软件
按照《PXE网络启动的Server端软件(windows系统)》(http://linuxman.blog.ccidnet.com ... 处不再重复。
三、配置、编译内核,支持NFS根文件系统
要想让CLFS临时系统能够使用NFS根文件系统,内核需要做相应的配置:
|---Networking --->
| |
| ---Networking support
| |
| ---Networking options --->
| |
| ---TCP/IP networking
| |
| ---IP: kernel level autoconfiguration
| |
| ---IP: DHCP support (NEW)
| |
| ---IP: BOOTP support (NEW)
|---Device Drivers -->
| |
| ---Network device support --->
| |
| ---Ethernet (10 or 100Mbit) --->
| |
| ---EISA, VLB, PCI and on board controllers
| |
| ---Broadcom 4400 ethernet support (EXPERIMENTAL)
| (注:根据网卡的实际类型选择。)
|---File systems --->
|
---Network File Systems --->
|
---NFS file system support
|
---Root file system on NFS
上表的配置项之间按缩进方式表示包含(子项)关系。这些配置项必须编译进内核,不能编译成模块。
四、配置NFS网络启动项
1、把编译好的内核拷贝到PXE网络启动文件根目录(如 c:\tftpboot),改名为bzImage-nfs
2、在pxelinux.cfg/default配置文件中增加CLFS的启动项:
label clfs
kernel bzImage-nfs
append root=/dev/nfs rw nfsroot=192.168.0.100:/clfs ip=dhcp
注意:上面的nfsroot参数按实际的网络地址和CLFS临时系统的网络共享目录设置。
3、修改Windows系统上CLFS临时系统的 /etc/fstab 文件
(1)把根目录的文件系统改为NFS,例如: 192.168.0.100:/clfs / nfs defaults 0 0
注意:同上面pxelinux.cfg/default配置文件中的一样,网络地址和共享目录的路径都要根据实际情况设置。
(2)把交换分区的描述项注释掉。
五、设置目标机器的BIOS,使网络启动为第一启动顺序。重新启动目标机器,目标机器网络引导成功,进入CLFS的临时系统。
六、向目标机器硬盘部署CLFS临时系统
目标机器网络启动成功后,在目标机器上完成下面的工作完成向目标机器硬盘部署CLFS临时系统:
1、用fdisk在目标硬盘分区。假定要部署CLFS的分区是 /dev/sdb1,交换分区是 /dev/sdb2。
2、在sdb1分区上创建ext2文件系统
mke2fs /dev/sdb1
3、创建交换分区,并激活
mkswap -v1 /dev/sdb2
swapon /dev/sdb2
4、按照目标硬盘的CLFS分区
mount /dev/sdb1 /mnt
5、向目标硬盘复制系统
cd /
cp -a bin boot etc home lib media opt root sbin srv tmp tools usr var /mnt
cp -a sources/*.{patch,bz2,gz,tgz} /mnt/sources
cd /mnt
mkdir {mnt,proc,sys,dev}
mknod -m 600 dev/console c 5 1
mknod -m 666 dev/null c 1 3
6 、使目标硬盘可启动
按CLFS文档 7.19.Make the Temporary System Bootable 的描述操作。
7、检查 /mnt/etc/fstab 和 /boot/grub/menu.lst 文件内容,确保与目标硬盘的分区、文件系统、启动项选项相一致。
七、重新启动目标机器,设置BIOS,使硬盘启动第一启动顺序。目标机器从硬盘上的CLFS启动项启动后,系统进入CLFS临时系统,就可以按照CLFS的文档说明继续完成最终的CLFS系统的构建了。
Tags: NFSroot PXE NFS |
|