博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
自动化安装linux
阅读量:6844 次
发布时间:2019-06-26

本文共 2592 字,大约阅读时间需要 8 分钟。

 个人使用的linux的安装没有太多难度,但是一旦到生产环境内,那种随性而装系统的,将会给服务器管理员带来极大的麻烦,这里需要对生产系统进行一定的定制,定制取决于公司的计算机的类型,公司的计算机往往都是一个类型一个型号。这里定制就很方便了,把分区都设置一样,这样可以批量部署大批的机器。

 linux安装原理

  回忆一下手动安装一个系统的步骤:1选择语言,2选择键盘布局,3分配分区,4选择安装类型,5选择额外的包,6选择时区,7设置root密码。安装时候的主观感受是配置一步系统执行一步,其实不然,等所有的配置都配置完后,安装进程才开始,只有分配分区是实时执行的。

  安装的进程叫anaconda,使用anaconda安装系统后,在root目录下会生成一个文件anaconda-ks.cfg文件,这个文件就是安装当前系统时的全部配置信息,分区情况的那几行被注释掉了。以下简称ks文件,我们可以直接去掉分区那几行的注释,直接使用这个配置安装一个和当前系统一模一样的系统。

 ks文件

 1 ks文件格式

配置文件分为三段:

第一段是主要定义的是分区、grub密码、用户及密码等等,格式如下(这里的配置内容仅适合我的网络环境):

install

url--url=http://172.16.0.1/cobbler/ks_mirror/6/

lang en_US.UTF-8

keyboard us

network --onbootyes --device eth0 --bootproto dhcp --noipv6

# Reboot afterinstallation

reboot

firewall--disabled

authconfig --useshadow  --passalgo=sha512

selinux--disabled

timezoneAsia/Shanghai#part /boot --fstype=ext4 --size=200

#part pv.008002--size=61440

#volgroup vg0--pesize=8192 pv.008002

#logvol /--fstype=ext4 --name=root --vgname=vg0 --size=20480

#logvol swap--name=swap --vgname=vg0 --size=2048

#logvol /usr--fstype=ext4 --name=usr --vgname=vg0 --size=10240

#logvol /var--fstype=ext4 --name=var --vgname=vg0 --size=20480

repo--name="CentOS" --baseurl=http://172.16.0.1/cobbler/ks_mirror/6/ --cost=100

#开头的这几行就是我的分区情况

第二段定义的是安装的包组和安装的包

%packages

@                 代表包组

                     代表包

%end

第三段定义的是系统安装前和安装后的执行的脚本,格式如下

%pre

这部分定义的安装前脚本

%end

%post

这部分定义的是安装后脚本

%end

配置文件生成

  配置文件的格式比较简单也比较好理解,但是靠手写定制一个ks文件还是有一定难度,linux中有一个基于图形界面定制ks文件的工具。

安装ks文件生成工具kisckstart

yum install system-config-kickstart -y

运行kisckstart

system-config-kickstart

这个界面我们按照linux的界面基本类似,只有两个部分不一样,一个是display configuration,这里选择是否安装图形界面,不安装图形界面的话就是最小安装;另一个是package selection,这里是选择安装的包。

centos7使用这个是会有一点问题,可以参考我的另一博客:

 ks文件的使用

 1 手动输入ks文件位置

  安装linux的时候,在最开始的选择安装还是升级系统那一个界面按exc,进入命令行模式,输入linux ks=ks文件的位置

这个ks文件可以是在http服务器、ftp服务器或本地文件系统上。位于本地文件系统的格式(这个格式只适用我,要用的话需要适当的变更):

ks=cdrom:/myks.cfg

位于网络的格式(同样这个格式只适用我)

ks=http://172.16.29.1/myks.cfg

ks=ftp://172.16.29.1/pub/myks.cfg

  2 开机自动安装系统

这里我们需要定制引导盘,定制步骤如下:

  • cp /media/cdrom/isolinux//tmp/myiso/

  • vim/tmp/myiso/isolinux/isolinux.cfg

  • timeout 600               这一行是开机后选择安装等待的时间,600=60s

  • initrd=initrd.img textks=cdrom:/myks.cfg     text是以字符样子安装系统

  • cp /root/myks.cfg /tmp/myiso/

  • cd /tmp

  • mkisofs -R -J -T -v--no-emul-boot --boot-loadsize 4 --boot-info-table -V "CentOS 7.2 x86_64boot" -b isolinux/isolinux.bin -c isolinux/boot.cat -o /root/boot.isomyiso/

这时会在/root/目录下生成boot.iso文件,我们把这个文件发送到windows中就可以使用了,或者直接使用dd命令把这个文件写到光盘或u盘,就可以自动化安装系统了。

总结

  这一节主要是为了实现自动化安装linux,大规模部署linux。首先我们要有一个ks文件,使用system-config-kisckstart定义我们想要安装的系统样式;然后就是制作引导光盘boot.iso

      本文转自Ailu0li 51CTO博客,原文链接:http://blog.51cto.com/oldking/1880509,如需转载请自行联系原作者
你可能感兴趣的文章
未来,曙光说要像搭积木一样搭建数据中心
查看>>
惠州云计算智能终端产值 力争5年后达3000亿
查看>>
RocketMQ架构模块解析
查看>>
物联网时代需要开放、好用及可信的平台
查看>>
Android Monkey测试
查看>>
Intel芯将整合雷电技术 未来MBP因此便宜点
查看>>
常见物联网近距离无线通信技术解析
查看>>
《嵌入式 Linux C 语言应用程序设计(修订版)》——2.2 嵌入式Linux编辑器vi的使用...
查看>>
黑客发现 Adobe Flash 播放器第二个零日漏洞
查看>>
Docker —— 用于统一开发和部署的轻量级 Linux 容器 【已翻译100%】
查看>>
《初级会计电算化应用教程(金蝶KIS专业版)》——1.3 电算化会计信息系统
查看>>
Android 开发者应该使用 FlatBuffers 替代 JSON ?
查看>>
《拥抱变化——社交网络时代的企业转型之道》一找准组织目标和企业文化
查看>>
《Arduino奇妙之旅:智能车趣味制作天龙八步》一3.2 构建小发明
查看>>
《Cisco安全防火墙服务模块(FWSM)解决方案》——第2章防火墙服务模块概述
查看>>
Go语言项目(kingshard)性能优化实例剖析
查看>>
安全预警:ImageMagick 图象处理软件存在远程代码执行(CVE-2016-3714)
查看>>
Google 为什么要把最重要的秘密开源?
查看>>
《Hadoop大数据分析与挖掘实战》——1.5节餐饮服务中的大数据应用
查看>>
《ANSYS Workbench 14有限元分析自学手册》——2.5 体操作
查看>>