Linux运维学习笔记之三十三:批量无人值守安装CentOS

xiaoxiao2021-03-01  19

第七部分其它运维知识

第四十四章 批量无人值守安装CentOS

一、概述

无论是光驱引导安装,还是NFS、HTTP、FTP服务进行网络安装,都需要一个前提:需要安装引导介质(光盘、U盘等)。而自动化批量部署,是通过网络,无需介质,无人值守全自动化安装Linux操作系统。提升工作效率,减少消耗时间和人力成功,并有多种方式实现。本例以PXE+DHCP+NFS+Kickstart方式实现。一般在上千台服务器以内,可以将DHCP、NFS、Kickstart、TFTP放在一台服务器上。

1、什么是PXE

PXE(Pre-boot Execution Environment,预启动执行环境)是由Intel公司开发的最新技术,工作于Client/Server的网络模式,支持工作站通过网络从远端服务器下载映像,并由此支持通过网络启动操作系统,在启动过程中,终端要求服务器分配IP地址,再用TFTP(trivial file transfer protocol)或MTFTP(multicast trivial file transferprotocol)协议下载一个启动软件包到本机内存中执行,由这个启动软件包完成终端基本软件设置,从而引导预先安装在服务器中的终端操作系统。

严格来说,PXE 并不是一种安装方式,而是一种引导方式。进行 PXE 安装的必要条件是在要安装的计算机中必须包含一个 PXE 支持的网卡(NIC),即网卡中必须要有 PXE Client。PXE 协议可以使计算机通过网络启动。此协议分为 Client端和Server 端,而PXE Client则在网卡的 ROM 中。当计算机引导时,BIOS 把 PXE Client 调入内存中执行,然后由 PXE Client 将放置在远端的文件通过网络下载到本地运行。运行 PXE 协议需要设置 DHCP 服务器和 TFTP 服务器。DHCP 服务器会给 PXE Client(将要安装系统的主机)分配一个 IP 地址,由于是给 PXE Client 分配 IP 地址,所以在配置 DHCP 服务器时需要增加相应的 PXE 设置。此外,在 PXE Client 的 ROM 中,已经存在了 TFTP Client,那么它就可以通过 TFTP 协议到 TFTP Server 上下载所需的文件了。

2、什么是Kickstart

Kickstart是一种无人值守的安装方式。它的工作原理是在安装过程中记录典型的需要人工干预填写的各种参数,并生成一个名为ks.cfg的文件。如果在安装过程中(不只局限于生成Kickstart安装文件的机器)出现要填写参数的情况,安装程序首先会去查找Kickstart生成的文件,如果找到合适的参数,就采用所找到的参数;如果没有找到合适的参数,便需要安装者手工干预了。所以,如果Kickstart文件涵盖了安装过程中可能出现的所有需要填写的参数,那么安装者完全可以只告诉安装程序从何处取ks.cfg文件,然后就去忙自己的事情。等安装完毕,安装程序会根据ks.cfg中的设置重启系统,并结束安装。

3、PXE的工作过程

(1)PXE Client 从自己的PXE网卡启动,向本网络中的DHCP服务器索取IP;

(2)DHCP 服务器返回分配给客户机的IP 以及PXE文件的放置位置(该文件一般是放在一台TFTP服务器上) ;

(3)PXE Client 向本网络中的TFTP服务器索取pxelinux.0 文件;

(4)PXE Client 取得pxelinux.0 文件后之执行该文件;

(5)根据pxelinux.0 的执行结果,通过TFTP服务器加载内核和文件系统 ;

(6)进入安装画面, 此时可以通过选择HTTP、FTP、NFS 方式之一进行安装;

4、PXE的工作流程图
5、PXE+Kickstart无人值守安装操作系统完整过程

二、安装实战

1、演示环境

Host

OS

role

remask

192.168.1.225

CentOS6.5_32

DHCP服务器

为客户端自动配置IP

192.168.1.225

CentOS6.5_32

TFTP服务器

为客户端提供PXE引导文件

192.168.1.225

CentOS6.5_32

NFS服务器

存放Linux安装文件和应答文件

192.168.1.226

CentOS6.5_32

客户端服务器

测试自动安装

2、配置PXE网络安装的说明及步骤

(1)配置NFS服务器(服务端)

(2)配置TFTP服务器(服务端)

(3)配置DHCP服务器(服务端)

(4)配置Kickstart(服务端)

(5)使用PXE功能引导客户机(客户端)

3、创建共享目录(存放Linux的ISO中的所有内容)
(1)创建共享目录

mkdir /data/sys -p

(2)挂载光盘ISO

mount /dev/cdrom /mnt

(3)拷贝ISO中所有内容到/data/sys目录下

cp -a /mnt/* /data/sys/

(4)创建应答文件目录

mkdir -p /data/sys/kickstart

4、安装NFS服务
(1)查看NFS是否已安装(前期已安装)

rpm -qa | grep nfs

nfs4-acl-tools-0.3.3-6.el6.i686

nfs-utils-1.2.3-39.el6.i686

nfs-utils-lib-1.1.5-6.el6.i686

sblim-cmpi-nfsv4-1.1.0-1.el6.i686

sblim-cmpi-nfsv3-1.1.1-1.el6.i686

(2)配置NFS

echo "/data/sys 192.168.0.0/16(ro,sync)" >>/etc/exports

cat /etc/exports

/data/sys 192.168.0.0/16(ro,sync)

(3)重启NFS服务

/etc/init.d/rpcbind restart

Stopping rpcbind:                                         [  OK  ]

Starting rpcbind:                                         [  OK  ]

/etc/init.d/nfs start     

Starting NFS services:                                    [  OK  ]

Starting NFS quotas:                                       [  OK  ]

Starting NFS mountd:                                       [  OK  ]

Starting NFS daemon:                                       [  OK  ]

Starting RPC idmapd:                                       [ OK  ]

(4)配置NFS服务开机启动

chkconfig nfs on

chkconfig rpcbind on

chkconfig --list rpcbind  

rpcbind        0:off   1:off   2:on   3:on    4:on    5:on   6:off

chkconfig --list nfs   

nfs            0:off   1:off   2:on   3:on    4:on    5:on   6:off

(5)检查NFS共享服务是否正常(在服务端和客户端均测试通过)

showmount -e 192.168.1.225

Export list for 192.168.1.225:

/data/sys 192.168.0.0/16

5、安装TFTP服务
(1)安装TFTP

yum install tftp-server* -y

rpm -qa | grep tftp

tftp-server-0.49-7.el6.i686

tftp-0.49-7.el6.i686

rpm -qa | grep xinetd

xinetd-2.3.14-39.el6_4.i686

(2)配置TFTP服务(TFTP服务由xinetd管理,修改/etc/xinetd.d/tftp文件)

vi /etc/xinetd.d/tftp

修改前:

service tftp

{

       socket_type             = dgram

       protocol                = udp

       wait                    = yes

       user                    = root

       server                  =/usr/sbin/in.tftpd

       server_args             = -s/var/lib/tftpboot

        disable                = yes

       per_source              = 11

       cps                     = 100 2

       flags                   = IPv4

}

修改后:

service tftp

{

       socket_type             = dgram

       protocol                = udp

       wait                    = yes

       user                    = root

       server                  =/usr/sbin/in.tftpd

       server_args             = -s/var/lib/tftpboot

        disable                = no

       per_source              = 11

       cps                     = 100 2

       flags                   = IPv4

}

(3)/etc/xinetd.d/tftp文件说明

server_args= -s /var/lib/tftpboot:这是默认的tftp路径,启动文件要放在这里,当客户端连接tftp服务端后,就会从该目录下载启动文件

(4)重启TFTP服务(因为tftp服务是挂载在超级进程xinetd 下的,所以通过启动xinetd 来启动tftp服务)

/etc/init.d/xinetd restart

Stopping xinetd:                                          [  OK  ]

Starting xinetd:                                          [  OK  ]

(5)配置TFTP服务开机启动

chkconfig xinetd on

chkconfig --list xinetd    

xinetd         0:off   1:off   2:on   3:on    4:on    5:on   6:of

6、配置PXE引导和网络启动内核文件
(1)复制pxelinux.0 文件至/var/lib/tftpboot/文件夹中

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

ll /var/lib/tftpboot/                                 

-rw-r--r-- 1 root root 26828 Jul 14 14:26 pxelinux.0

说明:syslinux是一个功能强大的引导加载程序,而且兼容各种介质。更加确切地说:SYSLINUX是一个小型的Linux操作系统,它的目的是简化首次安装Linux的时间,并建立修护或其它特殊用途的启动盘。

(2)复制iso 镜像中的/image/pxeboot/initrd.img和vmlinux 至/var/lib/tftpboot/ 文件夹中

cp /data/sys/images/pxeboot/{initrd.img,vmlinuz} /var/lib/tftpboot/

(3)复制iso 镜像中的/isolinux/*.msg至/var/lib/tftpboot/文件夹中

cp /data/sys/isolinux/*.msg /var/lib/tftpboot/

(4)在/var/lib/tftpboot/ 中新建一个pxelinux.cfg目录

mkdir /var/lib/tftpboot/pxelinux.cfg

(5)将iso 镜像中的/isolinux 目录中的isolinux.cfg复制到pxelinux.cfg目录中改名为default

cp /data/sys/isolinux/isolinux.cfg /var/lib/tftpboot/pxelinux.cfg/default

(6)查看default文件

cat /var/lib/tftpboot/pxelinux.cfg/default                                  

default vesamenu.c32 

#prompt 1              

timeout 600            

 

display boot.msg

 

menu background splash.jpg  

menu title Welcome to CentOS 6.5!  

menu color border 0 #ffffffff #00000000 

menu color sel 7 #ffffffff #ff000000

menu color title 0 #ffffffff #00000000

menu color tabmsg 0 #ffffffff #00000000

menu color unsel 0 #ffffffff #00000000

menu color hotsel 0 #ff000000 #ffffffff

menu color hotkey 7 #ffffffff #ff000000

menu color scrollbar 0 #ffffffff #00000000

 

label linux

  menu label ^Install orupgrade an existing system

  menu default

  kernel vmlinuz

  append initrd=initrd.img

label vesa

  menu label Install systemwith ^basic video driver

  kernel vmlinuz

  append initrd=initrd.imgxdriver=vesa nomodeset

label rescue

  menu label ^Rescue installedsystem

  kernel vmlinuz

  append initrd=initrd.imgrescue

label local

  menu label Boot from ^localdrive

  localboot 0xffff

label memtest86

  menu label ^Memory test

  kernel memtest

  append -

(7)修改default文件

vi /var/lib/tftpboot/pxelinux.cfg/default

default ks

prompt 1

timeout 600

display boot.msg

F1 boot.msg

F2 options.msg

F3 general.msg

F4 param.msg

F5 rescue.msg

label linux

  kernelvmlinuz

  appendinitrd=initrd.img

label text

  kernelvmlinuz

  appendinitrd=initrd.img text

label ks

  kernelvmlinuz

  appendks=nfs:192.168.1.225:/data/sys/kickstart/ks.cfg initrd=initrd.img text

label local

  localboot 1

label memtest86

  kernelmemtest

  append -

7、安装DHCP服务
(1)安装DHCP

yum install dhcp* -y

rpm -qa | grep dhcp

sblim-cmpi-dhcp-1.0-1.el6.i686

dhcp-common-4.1.1-38.P1.el6.centos.i686

dhcp-4.1.1-38.P1.el6.centos.i686

(2)配置DHCP

vi /etc/dhcp/dhcpd.conf

ddns-update-style interim;

ignore client-updates;

filename "pxelinux.0";

next-server 192.168.10.168;

 

subnet 192.168.10.0 netmask 255.255.255.0 {

        optionrouters                  192.168.10.168;

        optionsubnet-mask              255.255.255.0;

        rangedynamic-bootp 192.168.10.200 192.168.10.210;

       default-lease-time 21600;

       max-lease-time 43200;

}

(3)重启DHCP服务

/etc/init.d/dhcpd restart

Starting dhcpd:                                            [  OK  ]

(4)配置DHCP服务开机启动

chkconfig dhcpd on

chkconfig --list dhcpd

dhcpd          0:off   1:off   2:on   3:on    4:on    5:on   6:off

8、生成ks.cfg文件(本例采用方法二)
(1)方法一:通过Kickstart软件生成

a、安装Kickstart

yum install system-config-kickstart

b、图形界面下配置Kickstart,生成ks.cfg应答文件,保存在/data/sys/kickstart目录下

system-config-kickstart

(2)方法二:通过修改/root/anaconda-ks.cfg文件生成

a、复制生成ks.cfg文件

cp /root/anaconda-ks.cfg /data/sys/kickstart/ks.cfg

b、修改ks.cfg文件权限(原anaconda-ks.cfg的权限为 600)

ll /data/sys/kickstart/

-rw------- 1 root root 2500 Jul 15 20:48 ks.cfg

chmod 644 /data/sys/kickstart/ks.cfg

ll /data/sys/kickstart/             

-rw-r--r-- 1 root root 2500 Jul 15 20:48 ks.cfg

vi /data/sys/kickstart/ks.cfg

# Kickstart file automatically generated byanaconda.

 

#version=DEVEL

install

nfs --server=192.168.10.168 --dir=/data/sys

lang en_US.UTF-8

keyboard us

network --onboot no --device eth0 --bootproto dhcp--noipv6 --hostname vm01

rootpw --iscrypted $6$jdFlCE66gYgSD47H$HAlaC4FApIg1fM9bnjt7T8hyCm/.WgmKWGG9MXdPVK5Abr6dtpaftd6Stwc/9Lo/HV8Skv221DuNm4CdJkAeP1

firewall --disabled

authconfig --enableshadow --passalgo=sha512

selinux --disabled

timezone --utc Asia/Shanghai

bootloader --location=mbr --driveorder=sda--append="crashkernel=auto rhgb quiet"

# The following is the partition information yourequested

# Note that any partitions you deleted are notexpressed

# here so unless you clear all partitions first,this is

# not guaranteed to work

#clearpart --linux --drives=sda

clearpart --all

part /boot --fstype=ext4 --size=200

part swap --size=2048

part / --fstype=ext4 --grow --size=200

%packages

@base

@core

@basic-desktop

@x11

c、说明

clearpart --all--initlabel 此条命令必须添加,不然系统会让用户手动选择是否清除所有数据,这就需要人为干预了,从而导致自动化过程失败。

(3)方法三:通过下载网上文件修改后生成
9、客户端安装
(1)新建虚拟机

自动化安装系统配置完毕,下面启动一台新的机器进行测试,网络连接模式选择NAT模式。

新建虚拟机,选择自定义(高级)

选择“稍后安装操作系统”

选择客户机操作系统类型

启动虚拟机,选择从网卡启动,DHCP 服务器正在给客户机分配IP地址。(由于是新虚机,没有任何其它启动选项,就会按启动顺序,自动从网卡启动)

(2)安装过程中遇到的错误

a、错误代码

PXE-E11 ARP timeoutPXE-E12 could not locate boot Server

PXE-E32:TFTP open timeout

b、原因

客户机找不到下载映象的服务器,无法从TFTP下载镜像。根本原因是由于在安装时,服务器和客户机网络都是选择提仅主机模式,不能互通。

c、处理

将网络改为NAT模式,同时将dhcpd.conf、ks.cfg和exports文件中相应的IP全部改过来,否则会出现DHCP错误或找不到NFS文件的错误。

三、相关配置文件详解

1、/etc/xinetd.d/tftp文件
(1)样例

service tftp

{

       socket_type             = dgram

       protocol                = udp

       wait                    = yes

       user                    = root

       server                  =/usr/sbin/in.tftpd

       server_args             = -s/var/lib/tftpboot

        disable                = no

       per_source              = 11

       cps                     = 100 2

       flags                   = IPv4

}

(2)参数说明

server:服务程序路径

server_args:服务程序参数(这里指可以访问的tftpd服务器下的目录)

disable:是否开机启动

2、/var/lib/tftpboot/pxelinux.cfg/default文件

# 默认启动的是 'labellinux' 中标记的内核

default linux

 

# 显示 'boot: ' 提示符。

# 为 '0' 时则不提示,将会直接启动 'default' 参数中指定的内容。

prompt 1

 

# 在用户输入之前的超时时间,单位为1/10 秒。

timeout 600

 

# 显示某个文件的内容,注意文件的路径。默认是在 /tftpboot 目录下。

# 也可以指定位类似'install/rhel4.4-inst/boot.msg' 这样的,路径+文件名。

display boot.msg

 

# 按下 'F1' 这样的键后显示的文件。注意路径。默认是 /tftpboot。

# 注:syslinux 官方网站上说目前只能使用 F1-F10。

F1 install/rhel4.4-inst/boot.msg

F2 install/rhel4.4-inst/options.msg

#...

F10 install/rhel4.4-inst/snake.msg

 

# 'label' 指定你在'boot:' 提示符下输入的关键字。

# 比如:

#     boot: linux[ENTER]

# 这个会启动 'labellinux' 下标记的 kernel 和 initrd.img 文件。

# 这里还定义了其它几个关键字:

#     boot: text

#     boot: ks

#

# kernel 参数指定要启动的内核。同样要注意路径,默认是 /tftpboot 目录。

# append 指定追加给内核的参数,能够在 gurb 里使用的追加给内核的参数,在这里也

#        都可以使用。

label linux

  kernelinstall/rhel4.4-inst/vmlinuz

  appendinitrd=install/rhel4.4-inst/initrd.img ramdisk_size=8192

 

label text

  kernel vmlinuz

  appendinitrd=install/rhel4.4-inst/initrd.img text ramdisk_size=8192

label expert

  kernel vmlinuz

  append expertinitrd=install/rhel4.4-inst/initrd.img ramdisk_size=8192

 

# 使用 kickstart 安装。

# 可以在 ks 参数后直接指定 kickstart 文件的位置。

# 关于 kickstart 的更多参数和设置,请参考各版本的 RHEL 的 Installation Guide:

# * http://www.redhat.com/docs/manuals/enterprise/

#     Installation Guide--> Advanced Installation and Deployment

 

label ks basic

  kernelinstall/rhel4.4-inst/vmlinuz

  appendks=ftp://192.168.10.251/install/rhel4.4_basic.cfginitrd=install/rhel4.4-inst/initrd.img ramdisk_size=8192

 

label lowres

  kernel vmlinuz

  appendinitrd=install/rhel4.4-inst/initrd.img lowres ramdisk_size=8192

label local

  localboot 1

label memtest86

  kernel memtest

  append -

3、/etc/dhcp/dhcpd.conf文件

ddns-update-style interim:动态DNS的更新方式

ignore client-updates:

allow booting:定义能够PXE启动

allow bootp:定义支持bootp

next-server 192.168.175.133:tftp 服务器ip地址

filename "pxelinux.0":pxe启动文件位置

subnet 192.168.175.0 netmask 255.255.255.0 {

option routers                 192.168.175.2:默认网关

option subnet-mask             255.255.255.0:子网掩码

range dynamic-bootp 192.168.175.10 192.168.175.254:地址池范围

default-lease-time 21600;

max-lease-time 43200;

4、/data/sys/kickstart/ks.cfg文件

每个项目都由关键字来识别;关键字可跟一个或多个参数;如果某选项后面跟随了一个等号(=),它后面就必须指定一个值。

install  (可选)

    明确指定系统次次进行的是全新安装系统;是默认项;

cdrom  (可选)

    以本地CD-ROM为源安装系统;

harddrive  (可选)

    以硬盘分区中包含的镜像为源(安装树)安装新系统;当以该种方式安装系统时,即使指定clearpart--all项,源所在分区也不会被重新抹去;

    --partition=    指定分区

    --dir=        指定包含镜像的目录

    例:

    harddrive  --partition=/dev/sdb2  --dir=/data/iso

nfs  (可选)

    指定从NFS服务器上获取安装树;

    --server=    指定NFS服务器,主机名称或IP

    --dir=        包含安装树的目录

    --opts=        可以指定挂载NFS的目录时的挂载选项

    例:

    nfs  --server=192.168.1.254  --dir=/data/iso

url  (可选)

    指定通过FTP或HTTP从网络获取安装树;

    --url    指定资源位置

    例:

    url  --url ftp://<username>:<password>@install.example.com/iso

    url  --url http://install.example.com/iso

bootloader (必需)

    设定boot loader安装选项;

    --append=        可以指定内核参数

    --driveorder=    设定设备BIOS中的开机设备启动顺序

    --location=        设定引导记录的位置; mbr:默认值;partition:将boot loader安装于包含kernel的分区超级快中;none:不安装boot loder。

    示例:

    bootloader  --location=mbr  --append=“rhgb quiet” --driveorder=sda,sdb

   

clearpart (可选)

    在建立新分区前清空系统上原有的分区表,默认不删除分区;

    --all      擦除系统上原有所有分区;

    --drives    删除指定驱动器上的分区

    --initlabel    初始化磁盘卷标为系统架构的默认卷标

    --linux        擦除所有的linux分区

    --none(default)不移除任何分区

  例:

  clearpart  --drives=hda,hdb --all  --initlabel

 

zerombr  (可选)

    清除mbr信息,会同时清空系统用原有分区表

 

drivedisk (可选)

    如果使用特殊存储方式时,需要指定驱动程序盘位置以便加载存储驱动;

  1.  将驱动盘拷贝到本地硬盘某分区根目录:

    drivedisk<partition> [ --type=<fstype> ]

  2.  也可以指定一个网络位置加载驱动程序盘

    drivedisk  --source=ftp://path/to/drive.img

    drivedisk  --source=http://path/to/drive.img

    drivedisk  --source=nfs:host://path/to/drive.img

firewall (可选)

    配置系统防火墙选项;

    firewall–enable|--disable  [ --trust ]<device> [ --port= ]

    --enable        拒绝外部发起的任何主动连接;

    --disable        不配置任何iptables防御规则;

    --trust        指定完全信任网卡设备;

    --port        使用port:protocol格式指定可以通过防火墙的服务;

    示例:

    firewall --enable --trusteth0  --trust eth1  --port=80:tcp

selinux (可选)

    设置系统selinux状态;默认为启用并处于enforcing模式;

    selinux [--disabled|–enforcing|--premissive ]

reboot (可选)

    在系统成功安装完成后默认自动重启系统(kickstart方法时);在收到你敢装系统完成后,会提示按任意键进行重启;

    在本文件中没有明确指明其他方法时就默认完成方式为reboot;

    使用 reboot 选项可能会导致安装的死循环,这依赖于安装介质和方法。需要特别注意;

halt  (可选)

    在系统成功安装完成后关机;默认为reboot;

    其他选项还有shutdown、poweroff,需要使用请自行参考官方文档。

graphical (可选)

    默认值,在图形模式下进行kickstart方式安装;

text (可选)

    以文本方式进行kickstart安装;默认为图形界面

key  (可选)

    设置一个安装码(installration number),用于获取RedHat官方的支持服务;

    --skip    跳过key设置,不进行设置;如果不设置可能跳转到交互模式让用户选取动作;

keyboard (必需)

    设置键盘类型;一般设置为us;

lang (必需)

    设置安装过程使用的语言及系统的缺省语言;文本模式安装时可能不支持某些语言(中、韩...),所以可能仍以默认的英文方式安装;默认en_us,装中文时,需要后期%packages部分装上中文支持组件;

    例:

    lang en_US

timezone (可选)

    设置系统的时区;

    timezone  [ --utc ] <timezone>

    例:

    timezone  --utc Asia/Shanghai

auth/authconfig  (必需)

    设置系统的认证方式;默认为加密但不隐藏(shadow);

    --enablemd5    使用MD5加密方式

    --useshadow或—enableshadow    使用隐藏密码;

    --enablenis=    使用NIS认证方式

    --nisdomain=    NIS域

    --nisserver=      NIS服务器

    还可以设置LDAP、SMB及Kerberos 5认证方式,详细请参考官方文档;

    例:

    authconfig  --useshadow --enablemd5

rootpw (必需)

    设置系统root账号的密码;

    rootpw [ --iscrypted]  <passwd>

    --iscrypted    表示设置的密码为加密过的串;

    例:

    rootpw pa4word

    rootpw --iscrypted  $1$RPYyxobb$/LtxMNLJC7euEARg2Vu2s1

network (可选)

    配置网络信息;在网络安装(NFS/HTTP/FTP)时必须指定;

   --bootproto=dhcp|bootp|static    指定ip获取方式,默认为dhcp/bootp;

    --device=    设置安装时激活来进行系统安装的网卡设备;该参数只在kickstart文件为本地文件时有效;若kickstart配置文件在网络上,安装程序会先初始化网卡然后去寻找kickstart文件;

    --ip=    ip设置

    --gateway=  网关

    --nameserver=  DNS设置

    --nodns        不设置DNS

    --netmask=  掩码

    --hostname= 设置安装后主机名称

    --onboot=    设置是否在系统启动时激活网卡

    --class=        设置DHCP的class值

    --noipv4        禁用该设备的ipv4功能

    --noipv6        禁用该设备的ipv6功能

    如将网络模式设置为静态模式,则必须在一行内写上ip,netmask、dns、gateway等信息;

    例:

    network –bootproto=static–ip=1.1.1.1 --metmask=255.0.0.0 --gateway=1.1.1.254 --nameserver=1.1.1.2

    netmask--bootproto=dhcp  --device=eth0

skipx (可选)

    如果该项存在,就不对系统的X进行设置;

xconfig (可选)

    配置X window ;如果不给出选项,在安装过程中需要手动调整设置;当然不安装X时不应该添加该项;

  --driver            为显卡设置X驱动

  --videoram=    设置显卡的RAM大小

  --defaultdesktop=    设置GNOME/KDE作为默认桌面;假定这两个桌面环境在%packages例已经安装

  --startxonboot  使用图形界面登录系统

  --resolution=    设置图形界面的分辨率;可用值有640*480、800*600、1024*768等;确保设置指适合于显示卡及显示器;

  --depth=          设置显示色深;可用值有8/16/24/32;确保设置值适合于显示设备;

    例:

    xconfig    --startxonboot  --resolution=800*600 --depth=16

services (可选)

    设置禁用或允许列出的服务;

    --disabled 设置服务为禁用

    --enabled  启动服务

    例:

    services --disabledautid,cups,smartd,nfslock  服务之间用逗号隔开,不能有空格

   

iscsi(可选)

    指定额外的ISCSI设备;

    issci --ipaddr=ipaddr  [options].

      --target

      --port=

      --user=

      --password=

part/partition  (install模式必须)

    建立新分区;

    part  <mntpoint>|swap|pv.id|rdid.id  options

    mntpoint:挂载点,是在创建普通分区时指定新分区挂载位置的项;挂载点需要格式正确

    swap: 创建swap分区;

    raid.id:  表示创建的分区类型为raid型;必须用id号进行唯一区别;

    pv.id: 表示所创建的分区类型为LVM型;必须用唯一id号进行区别;

    --size=  设置分区的最小值,默认单位为M,但是不能写单位;

    --grow  让分区自动增长利用可用的磁盘空间,或是增长到设置的maxsize值;

    --maxsize 设置分区自动增长(grow)时的最大容量值,以M为单位,但不能写单位;

    --onpart=/--usepart=    设置使用原有的分区;

    --noformat    设置不格式化指定的分区,在跟—onpart一同使用时,可以避免删除原有分区上的数据,在新安装的系统中保留使用数据;

    --asprimary    强制制定该分区为主分区;若指定失败,分区会失败,导致安装停止;

    --fstype=    新增普通分区时指定分区的类型,可以为ext2、ext3、ext4、swap、vfat及hfs;

    --ondisk=/--ondrive=    设定该分区创建在一个具体的磁盘上;

    --start  指定分区以磁盘上那个磁道开始;需要跟--ondisk参数一块使用;

    --end    指定分区以磁盘上那个磁道结束;需要跟上述两个参数一起使用;

    --recommended:让系统自行决定分区的大小;在创建swap分区时,若RAM<2G,则分区大小为2*RAM;若RAM>=2G时,分区大小为RAM+2G;

    --bytes-pre-inode=    指定分区格式化时inode的大小;默认值为4096

    --fsoptions=    指定创建fstab文件时该分区挂载参数项;

    例:

    part  /boot --fstype=“ext3” --size=100

    part  swap --fstype=“swap” –size=512 

    part  / --bytes-pre-inode=4096 --fstype=“ext4”--size=10000

    part  /data   --onpart=/dev/sdb1  --noformat

    part  raid.100 --size=2000

    part  pv.100   --size=1000

raid  (可选)

    设置RAID。

    raid 挂载点 --level=<level> --device=<mddevices_name> <raid组成分区>

    挂载点:   选取根/时,注意尽量避免/boot在RAID内,除非为RAID1;

    --level=    设置RAID级别

    --device=  RAID设备名称,如md0,md1...

    --byte-pre-inode=    设置该RAID分区上inode大小;若分区文件系统类型不支持该参数,会静默忽略参数;

    --spares=  设置RAID的热备盘

    --fstype=  设置文件系统类型

    --fsoptions=  设置挂载该文件系统时自定义的一些参数,参数写入fstab文件;

    --useexisting  使用现有的RAID设备并且重新格式化原设备

    --noformat    在使用现有的RAID设备时不格式化原有RAID设备

    例:完整创建一个RAID1设备示例;

    part  raid.10 --size=1000  --ondisk=/dev/sdb

    part  raid.11 --size=1000  --ondisk=/dev/sdc

    raid  /data --level=1  --device=md0  raid.10 raid.11

volgroup  (可选)

    创建一个LVM卷组VG;

    volgroup  vg_name partition  [options]

    --useexiting  使用现有的VG并且重新格式化

    --noformat    使用现有的VG时不做格式化

    --pesize          设置PE(physical extents)块大小

    例:

    part pv.11  --size=2000

    volgroup  myvg pv.11

logvol  (可选)

    创建一个LVM逻辑卷LV;

    logvel  mnt_point --vgname=vg_name --size=lv_size  --name=lv_name  [options]

    --useexiting  使用现有的LV并且重新格式化

    --noformat  使用现有的LV时不做格式化

    --fstype=      指定RAID分区类型

    --fsoptions=  设置挂载该文件系统时自定义的一些参数,参数写入fstab文件;

    --byte-pre-inode=    设置该RAID分区上inode大小;

    --precent=    设定LV大小为VG可用空间的比例;

    例:

    part pv.20  --size=5000

    volgroup  mvvg pv.20

    logvol    /data --vgname=myvg  --size=3000  --name=mydata

转载请注明原文地址: https://www.6miu.com/read-3200138.html

最新回复(0)