Kickstart 无人值守安装RHEL5系统

Kickstart 无人值守安装RHEL 5系统

我们知道RH 中的Kickstart 可以实现RedHat 光盘启动后的自动安装,如果把ks.cfg RPM 安装文件考到一台HTTP NFS 服务器上,就可以实现网络自动安装,但还是需要RedHat 的启动盘来启动机器,但加上DHCP TFTP PXELinux 及支持PXE 的网卡,噢,那就可以实现远程启动了。也就是说,有了上面的条件,你只要给一台支持PXE 的客户机上电,然后再打入一个设置好的命令就可以安装好一RedHat 台机器了。
实现上面安装的过程是这样的:PXE 网卡启动 àDHCP 服务器 à 获得IP à TFTP 上下载 pxelinux.0 vmlinuz initrd à 启动系统 à 通过PEXlinux HTTP/NFS 下载ks.cfg 文件 à 跟据ks.cfg HTTP/NFS 下载RPM 包及安装系统------ 完成安装

1).为了方便先做一个yum 升级源

[root@oracle ~]# vi /etc/yum.repos.d/rhel-debuginfo.repo
[rhel]
name=Red Hat Enterprise
baseurl= file://mnt/Server
        file:///mnt/Cluster
        file://mnt/ClusterServer
        file://mnt/VT
enabled=1
gpgcheck=0
[root@oracle ~]#mount /dev/cdrom /mnt

2).安装dhcp

[root@oracle ~]#yum �Cy install dhcp*
安装完成之后,把 dhcp.conf.sample 文件拷贝到 /etc 下面
cp /usr/share/doc/dhcp- 3.0.5 /dhcp.conf-sample /etc/dhcpd.conf
vi /etc/dhcpd.conf
找到
ignore client-updates;
在后面添加上:
next-server 192.168.1.1;
filename "pxelinux.0";
找到并注释:
#option nis-domain "domain.org";
#option domain-name "domain.org";
#option domain-name-server 192.168.1.1;

3).配置网卡

IP 为192.168.1. 1
vi /etc/sysconfig/network-scripts/ifcfg-eth0
找到:
BOOTPROTO=dhcp
:
BOOTPROTO=static
注意IP地址的配置:
IPADDR=192.168.1.1
NETMASK=255.255.255.0
重启网络并启动 dhcp
/etc/init.d/network restart
/etc/ini.d/dhcpd start

4).安装tftpd服务:

yum install -y xinetd  tftp-server
配置 tftp-server
vi /etc/xinetd.d/tftp
找到
disable  = yes
改为
disable = no
重启动 tftp-server
/etc/init.d/xinetd restart
pxelinux.0
pxelinux.0 ,我们在配置 dhcp 的时候,就已经用到了,其实,就是上面提到的 bootstrap 。在 Linux 中,它是由 syslinux 来生成的。我们只要安装了 syslinux ,就会生成一个 pxelinux.0 ,我们只需要将其拷贝到 /tftpboot 下面即可。
yum install -y syslinux
cp /usr/lib/syslinux/pxelinux.0 /tftpboot/

4).启动文件

拷贝内核文件 vmlinuz 以及根文件系统 initrd.img /tftpboot
cp /mnt/images/pxeboot/vmlinuz /mnt/images/pxeboot/initrd.img /tftpboot
创建 /tftpboot/pxelinux.cfg 目录
mkdir /tftpboot/pxelinux.cfg
创建 /tftpboot/pxelinux.cfg/default 文件
touch /tftpboot/pxelinux.cfg/default
文件内容如下:
default linux
prompt  0
label   linux
kernel  vmlinuz
append  ks=nfs:192.168.0.1:/netinstall/ks.cfg initrd=initrd.img

5.1).配置nfs网络安装

拷贝整个安装光盘到 /netinstall
mkdir /netinstall
cp -r /mnt/* /netinstall
安装nfs 服务,并将/netinstall 发布出去
yum install -y nfs-utils
/etc/init.d/portmap start
/etc/init.d/nfs start
vi /etc/export
最后结果如下:
exportfs *:/netinstall

5.2).配置http网络安装

vi /etc/httpd/conf/httpd.conf
# 加入如下行 配下载点 ( 别名 )
Alias /download "/var/www/download"
<Directory "/var/www/download">
    Options Indexes MultiViews
    AllowOverride None
    Order allow,deny
    Allow from all
</Directory>
 
# 贝整个安装光盘
mkdir �Cp /var/www/download
cp -r /mnt/* / var/www/download/
 
# 重启 httpd
Service httpd restart
 

6).ks.cfg文件

拷贝服务器上的 ks 文件到 /netinstall 并重命名为 ks.cfg
cp /root/anaconda-ks.cfg /netinstall/ks.cfg
chmod a+r /netinstall/ks.cfg
找到第一行的 install 将其改为 text
找到 第二行的 cdrom ,改
nfs --server=192.168.0.1 --dir=/netinstall/
找到
clearpart --linux --drives=sda
为:
clearpart --all --drives=sda --initlabel
在上面添加一行
autopart
注意:关闭服 务器端防火墙和 SELINUX

7).最终结果为

#TFTP 目录 内容
/tftpboot
       --initrd.img
       --pxelinux.0
       --vmlinuz
       --pxelinux.cfg
              --default
 
# NFS 发布的目录
/netinstall
       --ks.cfg
       -- redhat 安装盘的内容
 
# 如果是 HTTP 发布
/var/www/download
       --ks.cfg
       -- redhat 安装盘的内容
 

8).常见安装问题

1. 服务器上 cp ks.cfg 不能用
redhat 默认安装了一个专门生成 KickStart 专用 ks.cfg 配置文件的图形工具,可以通过命令 ksconfig 启动
2. 安装时要求再一次输入 hostname 和域
查看是否有别的 DHCP, 如果是虚拟机做实验查看 vmware  dhcp 是否关闭
通过服务器端日志可查出 tail -f
3. 安装又一次要求选语言
可以看到 ks.cfg 第一项就是语言 , 如果要求选语言 , 说明没有读取 ks.cfg 文件
可能在 tftp default 文件没有指定 ks.cfg 或写错文件名把 ks.cfg 写成 ks.conf
4. 再次输入 NFS IP
挂不上 nfs 说明服务器上有关服务没有启动 , 或服务有错误 , 日志中的现像为有挂载请求但挂不起来 ..:
5. 如果日志中有 NFS ,rpc.svcgssd 启不了 , 属正常 .
 
: 附件中有以 http 发布安装所需的 ks.cfg default 两个配置文件
 

你可能感兴趣的:(安装,休闲,kickstart,无人值守,redhatas5)