第十次笔记

自动化运维之自动化安装系统

1 .实现自动化安装6的系统 :(半自动需要手工添加光盘来引导,之后就不需要光盘镜像安装了)

1 实现自动化安装的前提是生成一个应答文件,首先安装生成应答文件的一个小程序用yum来安装就可以。

(如果已经安装好的机器在其root的家目录下会生成一个应答文件anaconda-ks.cfg)

yum install system-config-kickstart 将此包装好后就可以利用此工具来制作应答文件来实现自动化安装。

2 .打开此工具来制作应答文件:(此工具为图形工具需要在图形界面下才能运行)

在图形界面下打开:system-config-kickstart 输入此命令将工具打开进行自定义制作

3.具体选项及详细步骤:

第一项的选择及详细内容

捕获1

第二项的选择及其详细内容:(此IP地址为镜像文件所在的服务器里的地址,安装之前要查看此服务器能否打开,并且查看里面是否有6的镜像文件)

捕获2

第三项的选择及其详细内容:(选择安装显得boot loader ,分区密码可以不用选)

捕获3

第四项的选择及其详细内容:(新建分区的信息)

捕获4

第五项的选择及其详细内容:(此处设置的网络为教学环境下的网络段)

捕获5

第六项的选择及其详细信息:(验证信息)

捕获6

第七项的选择及其详细信息:(防火墙的设置)

捕获7

第八项的选择及其详细信息:

捕获8

第九项的选择及其详细信息:(选择你所需要安装的包)

捕获10

第十项的选择及其详细信息:(上一步为安装前要执行的脚本,一般不用就没有写)

捕获11

最后一步保存(可以重命名)文件到/root/下或者任意目录:

捕获12

在/root/下可以查看所生成的文件,而且可以修改。

用vim打开之后在最后面再添加两个安装包:

@server-policy
@workstation-policy

此应答文件如何使用:

1.将此应答文件放到网络服务器上来调用

2.将此应答文件刻录到光盘文件上和镜像文件在一起。

此处演示将应答文件放到服务器上来调用,以下为具体如何调用

首先将应答文件移动到自己的的http服务里再/var/www/htlm/下 (确保权限,不够的话重新添加,chmod +777  file )

启动本机的httpd服务:service httpd start

然后查看自己的网卡信息。再浏览器上http://192.168.60.2/ksmin6.cfg 或者http://1172.20.49.47/ksmin6.cfg看是否能打开此文件,如果打不开就需要检查自己的网络设置了(例如重启网卡,关闭防火墙),如果可以打开应答文件则进行下一步的操作。

此时启动还是要靠光盘来引导,重新配置一个虚拟的硬件环境;然后将引导光盘挂上。将网卡设为桥接模式以便能连接应答文件所在的服务器地址,点击电源键开始装系统。

进入选择界面后按ESC键进入到/boot界面下写上:

linux     ip=172.20.111.222 netmask=255.255.0.0   ks=http://172.20.49.47/ksmin6.cfg

(172.20.111.222为临时设置的IP地址此地址只要和你的应答文件所在服务器的网段在一起就可以了。起到临时连接应答文件服务器,然后将其下载下来的临时作用,此时应将新建机的虚拟网卡设为桥接模式,因为现在用的是172.的外网网段)

(如果前面的IP地址写为192.168的网段,则后面的IP也要写成自己仅主机的网卡的IP地址,最后新建的虚拟机网卡就不必设定为桥接的网卡了,可以使用仅主机的模式)

此时安装就是靠172.20.0.局域网上服务器的centos6的镜像文件,而不是光盘里的镜像文件了

应答文件有可能自己再更改的时候不小心该坏了,导致装不了系统。可以使用此工具来检查应答文件的语法错误:ksvalidator   ksmin6.cfg   (后面为应答文件)

应答文件再每个主机上都有,可以使用kickstart 工具打开所在机器的应答文件,然后再修改以下不必自己再生成新的应答文件了。

再7上有些许不同需要修改后才能使用

1  在包选择的位置上发现无法选择包了,只需要将自己的yum源的第一个[base]改为[development]就可以了。

2  。如果直接使用原有7上的应答文件对比6上则缺少zero  mbr 这一行添加上去就可以了。

7上的启动和6类似也是按ESC键进入/boot下,具体如下图最小化安装的修改的ks.cfg文件:

捕获1

 

系统光盘中isolinux目录列表 :

solinux.bin:光盘引导程序,在mkisofs的选项中需要明确给出文件路径,这个 文件属于SYSLINUX项目 

isolinux.cfg:isolinux.bin的配置文件,当光盘启动后(即运行isolinux.bin), 会自动去找isolinux.cfg文件

vesamenu.c32:是光盘启动后的安装图形界面,也属于SYSLINUX项目, menu.c32版本是纯文本的菜单

Memtest:内存检测,这是一个独立的程序 

splash.jgp:光盘启动界面的背景图  (光盘启动的图形界面,可以各种选择模式的那个界面)

vmlinuz是内核映像 initrd.img是ramfs (先cpio,再gzip压缩

制作引导光盘和U盘:(将应答文件还有引导程序刻录到一起实现自动化安装)

1 自做一个boot.iso (包含引导文件和应答文件),具体方法和步骤:

首先在/data/下新建一个文件夹 myiso

2 再将光盘文件里的isolinux文件夹复制过去:cp -r /media/CentOS_6.9_Final/isolinux/ /data/myiso

3 最后在/data/myiso/下新建一个应答文件夹ksdir然后将应答文件复制到此目录下:

cp /var/www//html/ksmin6.cfg /data/myiso/ksdir/

此时的目录结构:/data/有两个目录一个存放引导文件;另一个存放应答文件的文件夹

然后开始修改启动菜单:vim /data/myiso/isolinux/isolinux.cfg  文件:

捕获1

此文件属于只读的需要强制保存退出就可以 了

最后制作成光盘的iso 文件了。通过以下的 命令来实现:

mkisofs -R -J -T -v –no-emul-boot –boot-load-size 4 –boot-info-table -V “CentOS 6.9 x86_64 boot” -b isolinux/isolinux.bin -c isolinux/boot.cat -o /root/boot.iso /app/myiso/

生成的文件名为boot.iso 放在/root的家目录里了。

最后将boot.iso上传到windows里面。在新建虚拟机的时候将此文件挂载上去就可以了。

开机重装系统,选择cdrom drive 来启动之后进到菜单可以选择带图形的安装和最小化安装两种方式。

想要将boot.iso文件刻到u盘里使用dd命令就可以

dd  if=/root/boot.iso  of=/dev/sdc    (就可以了,要复制到u盘上只能使用dd命令)

以上方法可用来使用搭建的http服务器来批量安装服务器的系统。

3 .将引导文件,应答文件,镜像文件放到一起  (适合单个或多个服务器的系统安装

例如在6上:将光盘的所有内容都复制到/data/目录下的centos6文件夹下

cp -rv /mnt/cd    /data/centos6/  (格式如此命令所写的方式)

在/data/centos6/下面新建一个应答文件的文件夹

mkdir /data/centos6/ksdir

在将应答文件复制到此目录下面

cp /var/www/html/ksmin6.cfg /data/centos6/ks.dir/ks6.cfg/  (如果此文件不存在可以使用上文中的软件生成一个或者直接用系统已有的在/root/下的anaconda.cfg文件作模板来修改)

再将6的第二张盘挂载上将其里面的所有文件复制到/data/centos目录下面

umount /media/CentOS_6.9_Final  (重新挂上第二张光盘)

cp /misc/cd/*   /data/centos6/

进入到/data/centos6/repodata下将第二项先移走(在7里不是第二项,找到和6相同结尾的后缀就可以了),然后清空 此文件下的内容

cp  43d8fd068164b0f042845474d6a22262798b9f0d1f49ad1bf9f95b953089777d-c6-x86_64-comps.xml  /root/

删除之后将此条记录重新移回来就可以了:

p /root/43d8fd068164b0f042845474d6a22262798b9f0d1f49ad1bf9f95b953089777d-c6-x86_64-comps.xml  /data/centos6.iso/repodata

返回到/data/centos6/目录下创建。yum的repodata

createrepo -g repodata/43d8fd068164b0f042845474d6a22262798b9f0d1f49ad1bf9f95b953089777d-c6-x86_64-comps.xml   .  (.点代表在当前目录下生成repodata)

重新查看元数据又重新生成了:ls repodata/

将TRANS.TBL文件查找并删除:find -name TRANS.TBL -exec rm {}   \;

再次修改应答文件:

将原有走网络的镜像文件改为:cdrom

cd isolinux/    进入此目录

cp /root/isolinux.cfg .     将以前复制到root下的此文件重新覆盖现有的文件即可。(此文件为装系统时的菜单选择文件)(或者直接将从光盘里拷过来的此引导文件直接修改就可以了,可以按照上图来修改,如果怕出错可以只修改一项也可以。)

回到root的家目录下,烧成文件就可以了.

mkisofs -R -J -T -v –no-emul-boot –boot-load-size 4 –boot-info-table -V “CentOS 6.9 x86_64 boot” -b isolinux/isolinux.bin -c isolinux/boot.cat -o /root/6.iso /data/centos6/

 

 

 

 

 

 

 

 

 

 

 

 

本文来自投稿,不代表Linux运维部落立场,如若转载,请注明出处:http://www.178linux.com/99195

(0)
无所谓无所谓
上一篇 2018-05-24 08:49
下一篇 2018-05-24

相关推荐

  • 第4周作业

     1、复制/etc/shel目录为/home/tuser1,要求/home/tuser1及其内部文件的属组和其它用户均没有任何访问权限。 [root@localhost ~]# cp -r /etc/shel /home/tuser1 [root@localhost ~]# chmod -R 700 /home/tuser1  2、编辑/etc/group文…

    Linux笔记 2018-06-04
  • Linux根文件系统和目录结构及bash特性

    1、Linux上的文件管理类命令都有哪些,其常用的使用方法及其相关示例演示 cp命令:copy 源文件;目标文件; 单源复制:cp [OPTION]… [-T] SOURCE DEST 多源复制:cp [OPTION]… SOURCE… DIRECTORY cp [OPTION]… -t DIRECTORY S…

    2018-06-29
  • 课堂实验

    实验:实现Gelera cluster 三台主机1 yum安装[mariadb]name = MariaDBbaseurl = https://mirrors.tuna.tsinghua.edu.cn/mariadb/mariadb-5.5.60/yum/centos7-amd64/gpgcheck=0 httpd2.2 order deny,allow a…

    2018-06-24
  • Linux 中获取命令帮助

    获取命令帮助 内部命令:用 help COMMAND; 外部命令:方法一  COMMAND –help;   方法二    manual manual :文件路径为 /usr/share/man 使用方法:# man COMMAND SECTION:  NAME:功能性说明;SYNOPSIS:语法格式;DESCRIPTION:描述;       …

    Linux笔记 2018-06-24