Linux自动化部署操作系统

    最近工作比较不是很忙,自己部署了一套Linux自动化部署操作系统,现将操作步骤记上,加深印象。

一、环境

准备两台虚拟机,其中一台已以Desktop、BASE SERVER 的方式安装好了,操作系统是CentOS6.5-x86_64,作为服务端使用;另一台只安装了虚拟机,未安装操作系统,用于自动化部署测试使用;


注:必须安装桌面图形化,要不然后面用到的kickstart无人值守的功能,没办法启动配置;


需要用到的主要软件:

http

dhcp

xinetd

tftp-server

tftp

syslinux

system-config-kickstart


以上这些软件,都可以直接使用yum安装使用,非常方便;


二、安装配置DHCP

yum -y install dhcp

chkconfig dhcpd on

cd /etc/dhcp/

mv dhcpd.conf dhcpd.conf.bak

cp /usr/share/doc/dhcp*/dhcpd.conf.sample ./dhcpd.conf

vim dhcpd.conf    //编辑DHCP服务的主体配置文件;

大约在11行下新增如下内容:

filename "pxelinux.0";    //PXE网络引导程序;

next-server 192.168.1.231;    //IP为本机的IP地址,即服务端的IP地址;


更改大约49-57行的内容如下(根据您的实际情况进行调整):

subnet 192.168.1.0 netmask 255.255.255.0 {
   range 192.168.1.241 192.168.1.245;
   option domain-name-servers 192.168.1.1;
   option domain-name "example.com";
   option routers 192.168.1.1;
   option broadcast-address 192.168.1.255;
   default-lease-time 600;
   max-lease-time 7200;
 }


最后保存退出;


vim /etc/rsyslog.conf    //定义DHCP日志;

在文件中间位置增加如下内容:

local7.*                                                /var/log/dhcpd.log


service dhcpd configtest    //测试配置文件是否异常;

service rsyslog restart    //重启日志服务;

service dhcpd restart    //重启DHCP服务;


防火墙开启TCP/UDP 67端口;


三、安装配置TFTP

yum -y install xinetd tftp-server tftp syslinux

chkconfig xinetd on

chkconfig tftp on

service xinetd restart

cp /usr/share/syslinux/pxelinux.0 /var/lib/tftpboot/


mkdir /mnt/share

mkdir /mnt/centos6

mount -t cifs -o usernaem=administrator,password=123456 //192.168.1.77/ISO /mnt/share/    //linux访问windows共享的ISO文件夹的目录;


[root@localhost tftpboot]# ll /mnt/share/

total 4363264

-rwxr-xr-x 1 root user1 4467982336 Mar  3 10:48 centos6.5x86_64.iso


mount -o loop /mnt/share/centos6.5x86_64.iso /mnt/centos6    //挂载iso到相应目录;


防火墙开启TCP/UDP 69端口;


四、安装配置HTTP

yum -y install httpd

chkconfig httpd on

mkdir /var/www/html/pub

mount --bind /mnt/centos6/ /var/www/html/pub/

service httpd start


防火墙开启TCP 80端口;


五、安装配置kickstart

yum -y install system-config-kickstart

system-config-kickstart    //启动图形化配置界面,此处省略,最后生成文件"ks.cfg"保存至/var/www/html/ 目录下,内容大概如下:

[root@localhost html]# cat ks.cfg 

# Reboot after instal#platform=x86, AMD64, or Intel EM64T
#version=DEVEL
# Firewall configuration
firewall --disabled
# Install OS instead of upgrade
install
# Use network installation
url --url="http://192.168.1.231/pub"
# Root password
rootpw --iscrypted $1$GywDU125$2FuR.r57g/J7bKHX7F6pk1
# System authorization information
auth  --useshadow  --passalgo=sha512
# Use text mode install
text
firstboot --disable
# System keyboard
keyboard us
# System language
lang en_US
# SELinux configuration
selinux --disabled
# Installation logging level
logging --level=infolation
reboot
# System timezone
timezone --isUtc Asia/Shanghai
# Network information
network  --bootproto=dhcp --device=eth0 --onboot=on
# System bootloader configuration
bootloader --location=mbr
# Clear the Master Boot Record
zerombr
# Partition clearing information
clearpart --all  
# Disk partitioning information
part /boot --fstype="ext4" --size=100
part swap --fstype="swap" --size=2000
part / --fstype="ext4" --grow --size=1


打开浏览器,输入:http://192.168.1.231/ks.cfg 正常即可查阅文件;


六、配置PXE

cd /var/lib/tftpboot/

mkdir pxelinux.cfg

cp /mnt/centos6/isolinux/* /var/lib/tftpboot/

cp isolinux.cfg ./pxelinux.cfg/default

vim ./pxelinux.cfg/default    //编辑PXE配置文件,在大约22行下增加一个label,内容如下:

label centos6.5
   menu label ^Install CentOS6.5-x86_64 system
   kernel vmlinuz
   append initrd=initrd.img ks=http://192.168.1.231/ks.cfg


service xinetd restart


    最后 就打开未安装操作系统的虚拟机,开机后,选择我们自定义的label进行安装,约等15分钟,系统全自动的安装好了。



本文出自 “方寸小山” 博客,请务必保留此出处http://63638790.blog.51cto.com/513514/1617666

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。