|
源代码网推荐
源代码网推荐
一、创建DVD的目录:
#mkdir BUILD_DVD #cd BUILD_DVD #mkdir -p SLES9/CD1 #mkdir -p CORE/CD1 #mkdir -p CORE/CD2 #mkdir -p CORE/CD3 #mkdir -p SP2/CD1 #mkdir -p SP2/CD2 #mkdir yast #mount -o loop /path_to/SLES9_CD1.iso SLES9/CD1 #mount -o loop /path_to/SLES9_CD2.iso CORE9/CD1 #mount -o loop /path_to/SLES9_CD3.iso CORE9/CD2 #mount -o loop /path_to/SLES9_CD4.iso CORE9/CD3
SLES9把安装盘分成两部分,启动盘叫SLES9,其他的盘叫CORE9
#mount -o loop /path_to/SLES9_SP2_CD1.iso SP2/CD1 #mount -o loop /path_to/SLES9_SP2_CD2.iso SP2/CD2 #ln -s SLES9/CD1/content #ln -s SLES9/CD1/control.xml #ln -s SLES9/CD1/media.1 #cp -R SP2/CD1/boot /path_to/BUILD_DVD #cd boot #ln -s ../SLES9/CD1/boot/rescuefloppy 在/path_to/BUILD/yast下建立两个文件,
文件名:order,内容为:
/SLES9/CD1 /SLES9/CD1 /CORE9/CD1 /CORE9/CD1 /SP2/CD1 /SP2/CD1
文件名:instorder,内容为:
/SP2/CD1 /SLES9/CD1 /CORE9/CD1
二、现在还缺少一个安装程序的影像文件,这个要作些手脚。
#mkdir /tmp/INST_IMG #mount -o loop /path_to/BUILD_DVD/SLES9/CD1/boot/root /mnt/image #cd /mnt/image #tar cvf /tmp/root.tar
这个影像文件做得很奇怪,直接cp出来是不行的
#cd /tmp/INST_IMG #tar xvf /tmp/root.tgz #会有一堆"不可信赖的时间"提示,不用理会 #cp /mnt/image/.package . #cp /mnt/image/.timestamp . #cd bin #mkdir secret #mv rpm secret #vi rpm 存盘退出后设置可执行权限:
#chmod 755
现在我们要生成一个包装过的rpm脚本,内容如下:
#!/bin/bash RPM_COMMAND=/bin/secret/rpm YAST_FIRSTBOOT=/usr/lib/YaST2/bin/YaST2.firstboot SRCMGR_DIR=/var/adm/YaST/InstSrcManager $RPM_COMMAND $@ CHK_PKG=`echo $@ | grep yast2-installation | grep -v autoyast2 | grep -v grep` if [ "$CHK_PKG" != "" ];then #Rename the YaST2.firstboot mv /mnt/$YAST_FIRSTBOOT /mnt/${YAST_FIRSTBOOT}_bin #generate a new YaST2.firstboot echo "#!/bin/bash" >> /mnt/$YAST_FIRSTBOOT echo "tar cPf /tmp/inst_source.tar $SRCMGR_DIR" >> /mnt/$YAST_FIRSTBOOT echo "${YAST_FIRSTBOOT}_bin $@" >> /mnt/$YAST_FIRSTBOOT echo "tar xPf /tmp/inst_source.tar 2>&1 1>/tmp/inst_source.log" >> /mnt/$YAST_FIRSTBOOT chmod 755 /mnt/$YAST_FIRSTBOOT fi exit 0
之所以要包装rpm,是因为第一次启动后,YaST2.firstboot会把安装时设置的安装源抹掉。
重新生成安装程序的影像文件:
mkfs.cramfs ./ /path_to/BUILD_DVD/boot/root
三、创建DVD的iso文件
#cd /path_to/BUILD_DVD mkisofs -o /tmp/SLES9_dvd.iso -b boot/loader/isolinux.bin -c boot/loader/boot.cat -no-emul-boot -boot-load-size 4 -boot-info-table -jcharset=cp936 -l -r -P SuSE -V SLES9_x86 .
原理很简单,就是利用SuSE Linux的安装服务器的机制。
源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐
源代码网供稿. |