Linux操作篇之自动化安装操作系统(二)

上一篇文章记录了标准PXE的安装配置过程,但存在一些缺点。如多台设备也只能单一的选择安装一种操作系统,不能多个选择。

一、提前配置。

关闭SELinux,关闭防火墙并禁止开机启动。

网卡设置的静态地址(192.168.159.200)

 二、安装过程。

1、安装yum源。

  1.1、由于所需要的软件在原系统repo中并不带有,所以需要安装带有所需软件的repo,并重新生成yum缓存。

  yum -y install epel-release

  yum makecache

2、安装配置。

2.1、安装所需要的全部软件。

  yum -y install cobbler  cobbler-web pykickstart debmirror  xinetd  dhcp  system-config-kickstart  cman  fence-agents

  (cman可能会提示没有,忽略即可)

2.2、修改tftp服务器,使tftp服务开机启动。

  vi  /etc/xinetd.d/tftp

2.3、修改DHCP配置文件,使其分配可使用地址。

  vi  /etc/dhcp/dhcpd.conf  

  (在文件最后追加以下代码:)    
  option domain-name-servers 192.168.159.2,8.8.8.8;   #DNS服务器的地址
  default-lease-time 43200;              #默认租约时间
  max-lease-time 86400;               #最大租约时间
  log-facility local7;                 #定义日志文件,可在日志配置文件中查看日志存放位置
  subnet 192.168.159.0 netmask 255.255.255.0 {    #定义DHCP的网段与掩码
        range 192.168.159.121 192.168.159.199;   #定义DHCP可分配地址范围(121-199)
        option routers 192.168.159.2;        #定义DHCP服务的网关地址    
  }
  next-server 192.168.159.2;                       #下一个访问的地址。客户端获取ip后,访问的服务器地址。
  filename="pxelinux.0";                            #访问服务器中的文件。

2.4、修改cobbler配置文件。

  openssl passwd -1 -salt $(openssl rand -hex 4)

  输入上面的命令,会提示你输入密码,这个就是在安装过程中给系统设定的密码,这个是加密过的。

  vi  /etc/cobbler/settings

  复制粘贴过程中一定要复制全。

  找到下面两个参数,将修改IP地址。

  next_server: 127.0.0.1  后面的IP地址改为本机IP地址
  server: 127.0.0.1    同上

2.5、修改debmirror配置文件

  vi  /etc/debmirror.conf

  

   此处使用#将标出的两行注释,将不常用的注释掉。

2.6、启动所需服务并加入开机启动。

  HTTP服务:systemctl restart httpd && systemctl enable httpd

  cobbler服务:systemctl restart cobblerd && systemctl enable cobblerd

  DHCP服务:systemctl restart dhcpd  &&  systemctl restart dhcpd

  TFTP服务:systemctl restart tftp && systemctl enable tftp

  xinetd服务:systemctl restart xinetd && systemctl enable xinetd

  rsync服务:systemctl restart rsyncd  && systemctl enable rsyncd

2.7、补充升级检查cobbler相关的文件及配置。

  cobbler  get-loaders

  cobbler  sync

  cobbler  check

3、导入镜像文件(为了能看到可选择系统安装,我这里试验两个版本的centos系统)

3.1、导入centos7.5

  mkdir -p /mnt/cdrom

  mount /dev/cdrom /mnt/cdrom

  cobbler import --name="centos7.5"  --path=/mnt/cdrom

3.2、导入centos6.8

  mkdir -p /mnt/cdrom

  mount /dev/cdrom /mnt/cdrom

  cobbler import --name="centos6.8"  --path=/mnt/cdrom

  导入完成可以使用 cobbler list 查看, 也可以登录web进行查看

这个时候,就可以选择版本进行安装操作系统,但是还没有导入ks文件,所以不会自动化安装。

4、关联ks文件,使其自动化安装。(因为6与7操作一样,我这里只记录一个7的操作过程)。ks文件名:7ks.cfg

4.1、查看修改ks文件。可复制上面网页中的地址。

4.2、复制ks文件至指定目录中,并关联相关镜像文件。

  mkdir -p /var/lib/cobbler/test

  mv  /var/lib/cobbler/kickstarts/*   /var/lib/cobbler/test/

  cp 7ks.cfg /var/lib/cobbler/kickstarts/

  移除profile:cobbler  profile remove --name=centos7.5-x86_64

  新建profile,并与ks文件进行关联: cobbler profile add --name=centos7.5-basic  --distro=centos7.5-x86_64  --kickstart=/var/lib/cobbler/kickstarts/7ks.cfg

4.3、检查文件合规性,并移除旧的不能自动安装的profile。

  cobbler sync

5、测试。

  新建虚拟机进行测试。

 

 选择centos7.5-basic是已配置ks自动安装的。

三、遇到的问题。

这个是由于实验测试的虚拟机内存太小(至少需要2GB的内存才能正常运行)。

四、扩展。

cobbler也可以自动安装Windows系统,步骤流程大体记录。

1、操作步骤

2、工作流程

3、相关命令(以win7、Samba为例)

copype amd64 C:winpe  #使用copype命令创建C:winpe目录,并在该目录下生成Win PE预安装所需的文件。
imagex /mountrw c:winpewinpe.wim 1 c:winpemount  #使用imagex命令挂载c:winpewinpe.wim文件到c:winpemount目录下,以便后续进行修改,因为Windows系统的很多核心文件都被打包压缩在这个文件里面,所以我们需要挂载才能读写修改。
echo net use z: \xxx.xxx.xxx.xxxshare >> C:winpemountWindowsSystem32startnet.cmd  #修改挂载后的wim文件,向C:winpemountWindowsSystem32startnet.cmd文件中写入一些脚本命令。
echo Z: >> C:winpemountWindowsSystem32startnet.cmd  #同上
echo cd win7 >> C:winpemountWindowsSystem32startnet.cmd  #同上
echo setup.exe /unattend:Autounattend.xml >> C:winpemountWindowsSystem32startnet.cmd  #同上(Autounattend.xml这个就是制作好的自动应答文件)
imagex /unmount c:winpemount /commit  #完成修改后,提交保存修改并去除挂载。
copy c:winpewinpe.wim c:winpeISOsourcesoot.wim  #拷贝修改后的winpe.wim到指定目录并重命名。
oscdimg -n -bC:winpeetfsboot.com c:winpeISO c:winpewin7pe.iso  #生成Win PE ISO镜像工具,路径及名称为C:winpewin7pe4.iso。

4、使用AIK或者ADK制作WinPE(win7称为AIK;win10称为ADK)。PE相当于一个简易系统,可以通过命令连接到cobbler服务器,进行真正的镜像文件下载并安装。

5、制作的PE要对应版本,如官网适用于win7的AIK工具,可适用于win7版本,却不适用win7 sp1(也有适用于sp1版本的AIK,要注意)。否则启动PE连接cobbler服务器后,无法执行setup程序[0x5]。

6、AIK或ADK可制作Windows自动应答文件,包括选择版本、设置语言、磁盘分区、新建本地用户及密码(也可使用administrator用户登录且不设置密码,但本地用户一定要建立,否则不会自动跳过)、输入key(找一个对应版本的key即可,不需要可用,但一定要有,安装过程不会进行验证)。

7、第6步制作的自动应答文件完成后,保存到镜像家目录中即可。

cobbler服务器端配置命令:

cobbler distro add --name=windows7 --kernel=/var/lib/tftpboot/memdisk --initrd=/root/win7pe.iso --kopts="raw iso"  #将win7pe导入cobbler的distro中。
上面命令有时可能会报错,提示“memdisk 没有”,使用cobbler sync 命令即可。
touch /var/lib/cobbler/kickstarts/win7pe.xml  #创建win7pe.xml文件,使distro与profile关联。
cobbler profile add --name=windows7_pro  --distro=windows7  --kickstart=/var/lib/cobbler/kickstarts/win7pe.xml  #将上面创建win7pe.xml文件(profile)与distro(PE)进行关联。
8、设置完成,建立测试机测试。
原文地址:https://www.cnblogs.com/641055499-mozai/p/13155299.html