实现全自动安装linux系统
安装过linux系统的友友们,也许会觉得linux系统的安装并不太麻烦,但是如果我们以后安装linux系统不需要任何操作就能直接安装一个系统是不是很给力啊!特别是在需要批量安装、经常安装系统的时候,自动安装的优势就完全体现出来了,我们只需对现有的镜像、磁盘等等存放这系统安装的东西文件进行稍微的添加修改,就可以让你在安装系统的时候想干啥干啥,不必再被系统安装所束缚。当然这方法可以应用在光盘、磁盘、http、ftp等系统安装的方法上,其实方法大同小异,可以n次重复使用,很牛奔,有木有?!
废话不多说,我们直接开始,此处我们主要针用光盘镜像安装系统进行讲解。
1、创建自动安装linux系统的灵魂--ks文件
要想实现这个功能我们得先生成一个记录我们对安装linux系统时的配置的文件ks,也就是说,这个ks文件记录了我们将对安装的linux系统的配置,安装系统时将读取这个文件,对安装的系统进行相应的设置。
我们要用到 system-config-kickstart 软件,通过这个软件我们就可以在图形化界面中进行操作
(1)安装system-config-kickstart 软件,使用命令:yum install system-config-kickstart
(2)安装成功之后直接使用system-config-kickstart命令启动这个软件,开启图形话界面。
(3)在各个选项中进行对将要安装的linux系统配置
(4)最后点击“file”-->“save file”-->选择需要保存的名字及路径(名字必须是以.cfg结尾,默认为ks.cfg)
然后就在相应目录下生成了一个保存着我们对将要安装的linux系统配置的ks文件,
2、将我们的“灵魂”赋予自己的ISO镜像。
(1)挂载镜像系统mount -o loop name.iso /mnt
因为在我们挂载的/mnt目录内的内容是只读的,所以我们再任意创建一个目录新的目录mkdir aaa 将/mnt内的所有东西都考进aaa中:cp /mnt/* aaa 接下来我们就在aaa目录中进行操作。
(2) cd /mnt/aaa 进入aaa目录,我们将发现一个文件和一个目录(我们假设目录的名字为isolinux),我们不用管这些文件和目录,将我们刚保存的ks文件拷贝进aaa目录(也可以拷贝进镜像的目录内,但是这个不方便我们以后指定ks文件的位置)即可。
3、将加入ks文件的目录重新封装为iso镜像。
将aaa整个目录封装为新的iso惊醒,我们将其命名为new.iso
mkisofs -o new.iso -b isolinux/isolinux.bin -c isolinux/boot.cat -no-emul-boot -boot-load-size 4 -boot-info-tabie -R -J -v -T aaa/
这个命令忒长,而且难以理解,下面我就针对这个命令做一些说明。
-o 指定生成镜像的名字
-b 指定哪个文件为光盘光盘自引导启动的文件(目录内以.bin结尾的文件)
-c 将boot.cat文件的配置信息显示出来(目录内以.cat结尾的文件)
-no-emul-boot 不模仿boot这种引导格式(光盘内没有MBR不能进行boot格式的启动)
到此我们的自动安装镜像就创建成功了,可以放在虚拟机上进行实验,当然我们也可以将其刻成光盘吗,在安装系统的boot界面,我们只需要输入ks文件的位置即可,针对我们的镜像,只需输入如下命令: linux ks=cdrom:ks.cfg之后敲回车即可进行自动安装。
有些友友也许发现了,这里面最终要的就是找到我们的ks文件,在boot安装界面指明ks的位置及名字,我不得不说你忒聪明了,无论我们是通过光盘 、磁盘、ftp、http安装系统,只要想进行自动安装就必须指明ks文件的位置及名字,当然针对不同的安装方法,指明ks文件的格式也是不一样的,大家可以参考下图根据自己的实际情况进行文件名和路径的填写,这点很重要奥!