服务环境:

[root@localhost ~]# uname -a    #服务器必须是图形页面的才可以安装无人值守
Linux localhost.localdomain 2.6.32-358.el6.x86_64 #1 SMP Tue Jan 29 11:47:41 EST 2013 x86_64 x86_64 x86_64 GNU/Linux

网络环境:

[root@localhost ~]# cat /etc/sysconfig/network-scripts/ifcfg-eth0 
DEVICE=eth0
HWADDR=00:0C:29:A3:38:13
TYPE=Ethernet
UUID=c4f52fd7-10a2-4aa4-b1f6-3f093e167d9f
ONBOOT=yes
NM_CONTROLLED=yes
BOOTPROTO=static
IPADDR=192.168.16.18
NETMASK=255.255.255.0
GATEWAY=192.168.16.18

要求:搭建一台无人值守安装linux的服务器,使客户端在无人的情况下能够自动安装安装要求视情况而定,根据要求安装。

安装前准备:

[root@localhost ~]# service iptables stop
[root@localhost ~]# setenforce 0
setenforce: SELinux is disabled

搭建本地yum源

[root@localhost ~]# vim/etc/yum.repos.d/rhel-source.repo
……………………………………………………….省略部分…………………………………………………………………………
baseurl=file:///mnt/sr0
enabled=1
gpgcheck=0
……………………………………………………….省略部分…………………………………………………………………………
[root@localhost ~]# mkdir /mnt/sr0/
[root@localhost ~]# mount /dev/cdrom/mnt/sr0/

安装vsftpd服务

[root@localhost ~]# yum -y  install vsftpd
[root@localhost ~]# mkdir /var/ftp/pub/dvd           #建立一个共享的文件
[root@localhost ~]# chmod 777/var/ftp/pub/dvd#给这个文件777的权限

安装tftp

[root@localhost ~]# yum -y install tftptftp-server dhcp syslinux
#安装tftp和tftp-server是为了有tftp配置文件,有的是安装tftp有有的是安装tftp-server有,dhcp服务,syslinux安装会产生关于内核相关的引导程序
[root@localhost ~]# vi /etc/xinetd.d/tftp
……………………………………….省略部分……………………………………………………………………….
       server_args             = -s/tftpboot      #为了简单配置把路径修改的简单点
       disable                 = no              #开启tftp服务
…………………………………………省略部分…………………………………………………………………………
[root@localhost ~]# service xinetd restart     #因为tftp是基于xinetd的服务,所以重启的时候要重启xinetd服务
[root@localhost ~]# mkdir /tftpboot       #创建tftp服务的文件
[root@localhost ~]# chmod 777 /tftpboot      #给个权限

安装dhcp服务

[root@localhost ~]# yum -y install dhcp
[root@localhost ~]# cp/usr/share/doc/dhcp-4.1.1/dhcpd.conf.sample /etc/dhcp/dhcpd.conf #配置dhcp服务
cp:是否覆盖"/etc/dhcp/dhcpd.conf"? y
[root@localhost ~]# vi /etc/dhcp/dhcpd.conf
…………………………………………………省略部分……………………………………………………………………
subnet 192.168.16.0 netmask 255.255.255.0 {
 range 192.168.16.20 192.168.16.50;          #这里初始IP不能是0,如果是0没有被占用导致获取到0的主机不能找到
 option domain-name-servers 192.168.16.11;              #DNS
 option routers 192.168.16.11;             #网关
 default-lease-time 600;
 max-lease-time 7200;
  filename"pxelinux.0";          #指定文件名
  next-server192.168.16.11;                   #指定tftp服务器的位置
}
…………………………………………………省略部分……………………………………………………………………
[root@localhost ~]# service dhcpd restart
关闭 dhcpd:                                              [确定]
正在启动 dhcpd:                                           [确定]

配置共享系统源:

[root@localhost ~]# umount /dev/cdrom        #先把已经挂载好的系统盘卸载掉
[root@localhost ~]# mount /dev/cdrom/var/ftp/pub/dvd/    #把系统盘挂载到ftp共享的目录
mount: block device /dev/sr0 iswrite-protected, mounting read-only
[root@localhost ~]# service vsftpd restart
[root@localhost ~]# cp/usr/share/syslinux/pxelinux.0 /tftpboot # pxelinux.0是个引导文件
[root@localhost ~]# mkdir/tftpboot/pxelinux.cfg           #建立配置默认引导文件
[root@localhost ~]# cp/var/ftp/pub/dvd/isolinux/isolinux.cfg /tftpboot/pxelinux.cfg/default #把系统的引导文件拷贝到共享目录下并且必须改名为default
[root@localhost ~]# cd/tftpboot/pxelinux.cfg/
[root@localhost pxelinux.cfg]# ls
default
[root@localhost pxelinux.cfg]# chmod 644default         #为了不然别人更改给赋予权限
[root@localhost pxelinux.cfg]# cp/var/ftp/pub/dvd/isolinux/* /tftpboot/ #把光盘的引导相关文件都拷贝到tftp的工作目录里

启动相关服务:

[root@localhost ~]# service dhcpd restart               #重启一下服务
关闭 dhcpd:                                              [确定]
正在启动 dhcpd:                                           [确定]
[root@localhost ~]# service vsftpd restart
关闭 vsftpd:                                              [确定]
为 vsftpd 启动 vsftpd:                                    [确定]
[root@localhost ~]# service xinetd restart
停止 xinetd:                                              [确定]
正在启动 xinetd:                                          [确定]
[root@localhost ~]# chkconfig dhcpd on
[root@localhost ~]# chkconfig vsftpd on
[root@localhost ~]# chkconfig xinetd on

客户端测试需要人工干预没有安装KickStart:

进入BIOS

 Kickstart无人值守安装RHEL6.5_ Kickstart

设置Network boot from Intel E1000为第一启动,保存启动系统,进入系统。系统会获取到IP之后自己进入共享的镜像。安装需要手工选择。测试:

 Kickstart无人值守安装RHEL6.5_ Kickstart_02

这个需要等待60秒。如果不想等待可以在

/tftpboot/pxelinux.cfg/default修改

#prompt 1
timeout 600    #把600修改小点就可以了

 Kickstart无人值守安装RHEL6.5_RHEL6.5_03

取消不用ks.cfg文件

第一步:选择语言。第二步,选择键盘方式

 Kickstart无人值守安装RHEL6.5_ Kickstart_04

 Kickstart无人值守安装RHEL6.5_无人值守_05

第三步:Installation Method,选择URL ok---ok---ftp://192.168.16.11/pub/dvd/p_w_picpaths/install.img  ,选择ok

下面就是安装光驱的安装方式安装。

客户端无人值守测试:

服务器安装KickStart

[root@localhost ~]# yum installsystem-config-kickstart.noarch
[root@localhost ~]#  system-config-kickstart    #必须在图像桌面下运行

 Kickstart无人值守安装RHEL6.5_RHEL6.5_06

基本设置,在引导装载程序选项里可以做安装类型、GRUB选项、安装选项设置这里没有设置

 Kickstart无人值守安装RHEL6.5_ Kickstart_07

安装方法

 Kickstart无人值守安装RHEL6.5_ Kickstart_08

分区信息:如果是新机可以在添加里做分区,如果不是新机要删除现有分区。网络配置里可以设置本机装机后的IP,也可以用静态后面的配置根据自己的需要做相应的配置。

 Kickstart无人值守安装RHEL6.5_无人值守_09

软件包可以感觉自己需要,选择相应的软件包。

设置好后选择文件保存;

 Kickstart无人值守安装RHEL6.5_RHEL6.5_10

把配置的文件保存到root文件夹下:

[root@localhost ~]# ls    #可以看到刚刚配置的
anaconda-ks.cfg  install.log.syslog  公共的  视频  文档  音乐
install.log      ks.cfg              模板    图片  下载  桌面

设置客户端启动配置文件

[root@localhost ~]# cp -a ks.cfg /var/ftp/pub/
[root@localhost ~]# vi/tftpboot/pxelinux.cfg/default
……………………………………………………省略部分………………………………………………………………….
label linux
 menu label ^Install or upgrade an existing system
 menu default
 kernel vmlinuz
 append initrd=initrd.img ks=ftp://192.168.16.18/pub/ks.cfg #指定一下

客户机直接启动,BIOS启动项选择网卡启动

 Kickstart无人值守安装RHEL6.5_无人值守_11

如果报错这个不用管他直接OK

如果设置好安装类型的话这里就会直接安装,我没有设置所以要选择

 Kickstart无人值守安装RHEL6.5_ Kickstart_12

选择使用所有空间下一步,坐等安装完成。

如果有出现一下报错解决方法:

 Kickstart无人值守安装RHEL6.5_无人值守_13

如果出现以上错误应该看以下防火墙,还有客户端的BIOS启动项,

 Kickstart无人值守安装RHEL6.5_无人值守_14

如果是上面的错误建议换个光盘,重新安装