Kickstart實現CentOS 6.5的網絡自動安裝

1.KickStart

KickStart是一種無人職守安裝方式。KickStart的工作原理是通過記錄典型的安裝過程中所需人工干預填寫的各種參數,并生成一個名為ks.cfg的文件;在其后的安裝過程中(不只局限于生成KickStart安裝文件的機器)當出現要求填寫參數的情況時,安裝程序會首先去查找KickStart生成的文件,當找到合適的參數時,就采用找到的參數,當沒有找到合適的參數時,才需要安裝者手工干預。這樣,如果KickStart文件涵蓋了安裝過程中出現的所有需要填寫的參數時,安裝者完全可以只告訴安裝程序從何處取ks.cfg文件,然后去忙自己的事情。等安裝完畢,安裝程序會根據ks.cfg中設置的重啟選項來重啟系統,并結束安裝。

PXE + KickStart安裝的條件

2.實驗環境

組件:

 dhcp:動態分配Ip地址 

 httpd:基于web訪問centos鏡像文件

 tftp:存放linux pxe引導文件

 syslinux:syslinux是一個功能強大的引導加載程序

服務器:

  主機centos6.5  IP:192.168.180.130

 安裝:dhcp httpd tftp syslinux服務

3.操作步驟

一.安裝相關組件

[root@localhost ~]#yum -y install dhcp* httpd* tftp* syslinux*

掛載CentOS6.5DVD光盤,并復制第一張光盤下的所有內容(文件和文件夾)到/var/www/html/centos(centos目錄需要自己創建)下(apache默認網站根目錄)

[root@localhost ~]#mount /dev/cdrom  /mnt/
[root@localhost ~]#cp -rf /mnt/* /var/www/html/centos

二、配置apache

[root@localhost ~]#service httpd start

三、配置tftp

[root@localhost ~]#vim /etc/xinetd.d/tftp
修改14行disable = no

[root@localhost ~]#/etc/init.d/xinetd start

四、配置dhcp

[root@localhost ~]#vim /etc/dhcp/dhcpd.conf
ddns-update-style  interim;
default-lease-time 216000;
filename "/pxelinux.0";
max-lease-time 43200;
next-server 192.168.180.130;
subnet 192.168.180.0 netmask 255.255.255.0 {
         option   subnet-mask 255.255.255.0;
         option   routers      192.168.180.2;
         range dynamic-bootp 192.168.180.2 192.168.180.200;
         default-lease-time 21600;
}

五、配置支持PXE啟動

我已經把第一張光盤的內容復制到/var/www/html目錄中了,所以所需要的文件我只需要從/var/www/html目錄中復制就行了

1、進入tftpboot文件夾,沒有就建一個,有了就不用建了。
[root@localhost ~]#cd /var/lib/tftpboot/

2、把pxelinux.0復制到/tftpboot/中
[root@localhost ~]#cd  /usr/share/syslinux 
[root@localhost ~]#cp pxelinux.0 /var/lib/tftpboot
[root@localhost ~]#cp vesamenu.c32 /var/lib/tftpboot

3、把Linux第一張安裝光盤上/images/pxeboot/initrd.img和vmlinux復制到/tftpboot/中
[root@localhost ~]#cp /var/www/html/images/pxeboot/initrd.img   /var/lib/tftpboot
[root@localhost ~]#cp /var/www/html/images/pxeboot/vmlinux   /var/lib/tftpboot

4、 復制第一張安裝光盤上的isolinux/*.msg到/tftpboot/中
[root@localhost ~]#cp /var/www/html/isolinux/*.msg   /var/lib/tftpboot

5、 在tftpboot中新建一個pxelinux.cfg目錄
[root@localhost ~]#mkdir pxelinux.cfg

6、 把Linux第一張安裝光盤上isolinux目錄中的isolinux.cfg復制到pxelinux.cfg目錄中,并同時更改文件名稱為default
[root@localhost ~]# cd pxelinux.cfg
[root@localhost ~]# cp /var/www/html/isolinux/isolinux.cfg   /var/lib/tftpboot/pxelinux.cfg/default
[root@localhost ~]# vim /var/lib/tftpboot/pxelinux.cfg/default
把22行注釋掉,在下面添加:
append initrd=initrd.img ks=http://192.168.180.130/ks.cfg

六、修改/var/www/html/ks.cfg文件,指定讀取ks.cfg的方法

#platform=x86, AMD64, or Intel EM64T
#version=DEVEL
# Firewall configuration
firewall --disabled
# Install OS instead of upgrade
install
# Use CDROM installation media
url --url=http://192.168.180.130/centos/
# Root password
rootpw --iscrypted $1$mR96CBFs$tpDEL7evE3eL2UjJ5PjG2.
# System authorization information
auth  --useshadow  --passalgo=sha512
# Use graphical install
graphical
firstboot --disable
# System keyboard
keyboard us
# System language
lang en_US
# SELinux configuration
selinux --disabled
# Installation logging level
logging --level=info
# Reboot after installation
reboot
# System timezone
timezone  Asia/Shanghai
# Network information
network  --bootproto=dhcp --device=eth0 --onboot=on
# System bootloader configuration
bootloader --append="crashkernel=auto rhgb quiet" --location=mbr --driveorder="sdb"
# Clear the Master Boot Record
zerombr
# Partition clearing information
clearpart --all --initlabel 
# Disk partitioning information
part /boot --fstype="ext4" --size=200
part swap --size=4096
part / --fstype="ext4" --size=40960
%pre
echo "start install"
%end

%post
echo "install end"
%end
#程序包段
%packages
@chinese-support
@development
@X Window System
@remote-desktop-clients
%end

七、設置服務開機自啟動:

[root@localhost ~]# chkconfig httpd on
[root@localhost ~]# chkconfig xinetd on
[root@localhost ~]# chkconfig dhcpd on

八.設置bios為網卡啟動,啟動后,就會進入到安裝界面,并自行安裝。

wKiom1PY2SfRSt0IAACxjGMXu60908.jpg

wKioL1PY2l6xlTfPAACCoZlPM4U767.jpg

原創文章,作者:a295053193,如若轉載,請注明出處:http://www.www58058.com/53336

(0)
a295053193a295053193
上一篇 2016-10-24
下一篇 2016-10-24

相關推薦

  • yum命令的用法

    1.列出所有可更新的軟件清單命令:yum check-update 2.安裝所有更新軟件命令:yum update 3.僅安裝指定的軟件命令:yum install <package_name> 4.僅更新指定的軟件命令:yum update <package_name> 5.列出所有可安裝的軟件清單命令:yum list 用YUM安…

    Linux干貨 2017-08-11
  • Nginx+Keepalived實現站點高可用

    Nginx+Keepalived實現站點高可用 vrrp 虛擬路由冗余協議(Virtual Router Redundancy Protocol,簡稱VRRP)是由IETF提出的解決局域網中配置靜態網關出現單點失效現象的路由協議,1998年已推出正式的RFC2338協議標準。VRRP廣泛應用在邊緣網絡中,它的設計目標是支持特定情況下IP數據流量失敗轉移不會引…

    Linux干貨 2016-11-07
  • 用戶和組相關配置文件

    1. /etc/passwd文件詳解 輸入vi /etc/passwd 可以查看此文件的內容 [root@localhost ~]# vi /etc/passwdroot:x:0:0:root:/root:/bin/bash root:x:0:0:root:/root:/bin/bash bin:x:1:1:bin:/bin:/…

    Linux干貨 2016-10-23
  • 磁盤管理

    linux的哲學思想:一切皆文件; 設備類型: 塊(block):隨機訪問,交換數據單位是“塊”; 字符(character):線性訪問,數據交換單位是“字符”; 設備文件:FHS /dev     設備文件:關聯至設備驅動程序;設備的訪問入口;       &nbsp…

    Linux干貨 2016-08-30
  • PHP通過Thrift操作Hbase

    HBase是一個開源的NoSQL產品,它是實現了Google BigTable論文的一個開源產品,和Hadoop和HDFS一起,可用來存儲和處理海量column family的數據。官方網址是:http://hbase.apache.org 一 、HBase訪問接口 1.  Native Java API,最常規和高效的訪問方式,適合Hadoop …

    Linux干貨 2015-05-18
  • N22-妙手-第九周課程練習

    1、寫一個腳本,判斷當前系統上所有用戶的shell是否為可登錄shell(即用戶的shell不是/sbin/nologin);分別這兩類用戶的個數;通過字符串比較來實現;: #!/bin/bash # declare -i numberOfLoginUser=0 declare -i numberOfUnloginUs…

    Linux干貨 2016-10-19
欧美性久久久久