pxe自動安裝linux

配置自動安裝操作系統

1.網卡應支持pxe技術,由網卡作為dhcp的客戶端向dhcp服務器請求一個IP地址,dhcp會將ip,網關等信息和的tftp服務器的地址應加載的文件名提供給客戶端

2.根據dhcp服務器提供的信息網卡上內置的tftp客戶端向tftp服務器發出請求,將文件下載至內存,包括bootloader(可能有選單),initrd,內核等(內核和initrd應該是專用于pxe的版本,就是具有相應功能的沒有過度裁剪的內核)

3.加載完內核會讀取kickstart文件,該文件會指明倉庫的位置和要安裝的程序包 

anaconda是紅帽系列的安裝系統,不同系統的安裝系統不同,anaconda可以通過讀取kickstart實現自動安裝

要通過ftp,http等提供系統安裝的倉庫,注意版本

tftp是一個非獨立進程,監聽udp的69端口 tftp的程序的服務端由tftp-server提供,客戶端有tftp提供

tftp的啟動

CentOS 7:

systemctl start tftp.socket

CentOS 6:

chkconfig tftp on

service xinetd restart

默認的文件根目錄:/var/lib/tftpboot/

注意:有些系統的tftp后會有不能下載大文件的問題造成不能通過tftp下載內核和initrd文件導致自動安裝失敗,建議布置好tftp服務后先驗證能否通過tftp下載對應文件

注意,安裝完程序后要記得開啟,防止出現問題

syslinux是一個提供多種引導程序的安裝包,pxelinux.0是此處需要使用的文件,在centos6上使用rpm -ql不能查看所有

1.安裝dhcp并提供配置文件并開啟

yum install dhcp -y

配置文件

option domain-name "hehehe.com";

option domain-name-servers 10.1.1.1, 8.8.8.8;

default-lease-time 3600;

max-lease-time 7200;

subnet 10.1.0.0 netmask 255.255.0.0 {

range 10.1.5.5 10.1.5.10;

filename ”pxelinux.0“;(文件名必須寫在雙引號內,必須以;結尾)

next—server 10.1.1.1;

}

service dhcpd start

2.安裝tftp并開啟

systemctl start tftp.socket

3.安裝syslinux,并將pxelinux.0,menu.c32(提供選單),mboot.c32(能夠通過內存引導),memdisk(將內存模擬為磁盤),chain.c32(基于bootloader引導系統)復制到/var/lib/tftpboot/下

yum install syslinux  -y 

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

cp /usr/share/syslinux/{chain.c32,memdisk,menu.c32,mboot.c32} /var/lib/tftpboot/

4.從安裝光盤復制vmlinuz和initrd.img到tftp的根目錄下

cp vmlinuz initrd.img /var/lib/tftpboot/

5.創建菜單加載的配置文件信息,在tftp的根目錄下創建pxelinux.cfg目錄,在pxelinux.cfg目錄下創建default

mkdir pxelinux.cfg

default配置文件

default menu.c32

        prompt 5 (此處為選單出現后幾秒內沒有動作選擇默認選項)

        timeout 30(設定選單超時時間)

        MENU LABEL THIS IS CENTOS(選單的大標題)

        LABEL linuxzidong (在命令行下直接輸入此處定義字符能啟動該選項)

        MENU LABEL install(選單的選項)

        KERNEL vmlinuz 

        APPEND initrd=initrd.img inst.repo=ftp://10.1.1.1/pub/centos (安裝文件路徑)ks=ftp://10.1.1.1/pub/centos7.cfg (應答文件路徑)

6.在ftp的共享目錄創建上面定義的目錄,并將光盤掛載

mkdir centos

mount /dev/sr0 /var/ftp/pub/centos/                                                                                                                                         

7.在/root下的anaconda-ks.cfg是保存了本機安裝系統時選擇的應答文件

本次采用的應答文件centos7.cfg,只包含了最基礎的安裝包

# Keyboard layouts

# old format: keyboard us

# new format:

keyboard –vckeymap=cn –xlayouts='cn'

# Reboot after installation

reboot

# Root password

rootpw –iscrypted $1$HDHf2v4i$LMo.xGHfxQDOf8e043C.g/

# System timezone

timezone Asia/Shanghai

# Use network installation

url –url="ftp://10.1.1.1/pub/centos"

# System language

lang zh_CN

user –groups=wheel –name=mageedu –password=$6$1eWrOetY$DfLZgquGiOaNkwpEF4ItMipz.1kpn7Q.s6oXyoW2bALkWesRWHCCACICkJ.2zBXDbwEw0ibR.wxSt

LI41ZhfF1 –iscrypted –gecos="MageEdu"

# Firewall configuration

firewall –disabled

# Network information

network  –bootproto=dhcp –device=eth0

# System authorization information

auth  –useshadow  –passalgo=sha512

# Use text mode install

text

firstboot –disable

# SELinux configuration

selinux –permissive

ignoredisk –only-use=sda

# System bootloader configuration

bootloader –location=mbr –boot-drive=sda

# Clear the Master Boot Record

zerombr

# Partition clearing information

clearpart –all –initlabel

# Disk partitioning information

part /boot –asprimary –fstype="xfs" –size=512

part swap –fstype="swap" –size=2048

part /usr –fstype="xfs" –size=20480

part / –fstype="xfs" –size=20480

%packages

@base

@core

8.將應答文件復制到ftp的根所在的目錄

mv centos7.cfg  /var/ftp/pub/

9.將服務器和要安裝系統的機器配置在同一個網絡內通過網卡啟動要安裝系統的機器就可以完成自動安裝

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

(0)
zzzzz1357x1zzzzz1357x1
上一篇 2016-11-11
下一篇 2016-11-11

相關推薦

  • Linux命令基礎

    Linux命令基礎

    2018-03-25
  • 計算機運維基礎知識 Linux版

    計算機系統由硬件系統和軟件系統組成 第一代計算機   電子管時代 第二代計算機   晶體管時代 第三代計算機   集成電路時代 第四代計算機   大規模集成電路時代 1964年,世界第一代計算機ENICA。用來計算彈道軌跡。 馮諾依曼  計算機之父 運算器,控制器,存儲器,輸入設備,輸出設備。 巨型計算機,大…

    Linux干貨 2016-08-04
  • Linux RPM 命令參數使用詳解

    rpm 執行安裝包: 二進制包(Binary)以及源代碼包(Source)兩種。二進制包可以直接安裝在計算機中,而源代碼包將會由 RPM自動編譯、安裝。源代碼包經常以src.rpm作為后綴名。 -ivh # 安裝顯示安裝進度–install–verbose–hash。 使用方法如下:   &n…

    2017-04-18
  • 初識MySQL(一)

        數據庫(DATABASES)      數據庫是一個單位或是一個應用領域的通用數據處理系統,存儲有企業和事業部門、團體和個人的有關數據的集合,該集合中數據是從全局觀點出發建立的,按一定的數據模型進行組織、描述和存儲。其結構基于數據間的自然聯系,從而可提供一切必要的存取路徑,且數據不…

    Linux干貨 2015-08-24
  • 馬哥教育網絡班22期+第5周課程練習

    1、顯示當前系統上root、fedora或user1用戶的默認shell;cat /etc/passwd | grep "^\<root\>"cat /etc/passwd | grep "^\<fedora\>"cat /etc/passwd | grep "^\<user1\…

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