第 20 章 引导选项
- 以“等号”(
=
)结尾的选项需要有指定的值,它们不能单独使用。例如:inst.vncpassword=
选项必须还包含一个值(在这里是一个密码)。因此正确的格式为inst.vncpassword=password
。不指定密码单独使用时,这个选项无效。 - 没有 "
=
" 符号的选项不接受任何值或者参数。例如:rd.live.check
选项强制 Anaconda 在开始安装前确认安装介质。如果出现这个选项,就行进行介质检查,否则会跳过介质检查。
20.1. 在引导菜单中配置安装系统
注意
- AMD64 和 Intel 64 系统请查看 第 5.2 节 “引导菜单”
- IBM Power Systems 服务器请查看 第 10.1 节 “引导菜单”
- IBM System z 请查看 第 18 章 IBM System z 中的参数和配置文件
- 在引导菜单的任意位置按 Esc 键即可进入
boot:
提示符。使用这个提示符时,第一个选项必须是指定要载入安装程序映像文件。大多数情况下在这里使用关键词linux
。随后可根据需要指定额外选项。在这个提示符后按 Tab 键会显示帮助信息,为您提供可使用该命令的场所。要使用您所选选项开始安装,请按 Enter 键。要从boot:
提示符返回引导菜单,请重启该计算机并再次使用该安装介质引导。 - 突出显示引导菜单中的条目并按 Tab 键进入使用 BIOS 的 AMD64 和 Intel 64 系统中的
>
提示符。与boot:
提示符不同,这个提示符可让您编辑预先定义的一组引导选项。例如:如果您突出显示标记为 的条目,就会在提示符后显示这个菜单条目可以使用的全部选项,允许您添加您自己的选项。按 Enter 将使用您指定的选项开始安装。要取消编辑并返回引导菜单,请随时按 Esc 键。 - 使用 UEFI 的 AMD64 和 Intel 64 系统中的 GRUB2 菜单。如果您的系统使用 UEFI,则可以通过突出显示一个条目并按 e 键编辑引导选项。完成编辑后,请按 F10 或者 Ctrl+X 使用您指定的选项开始安装。
dracut.cmdline(7)
man page。
注意
inst.
作为前缀。目前这个前缀是可选的,例如:resolution=1024x768
与 inst.resolution=1024x768
的效果完全相同。但预期将在未来的发行本中强制使用 inst.
前缀。
指定安装源
inst.repo=
- 指定安装源 - 即安装程序可以找到映像及所需软件包的位置。例如:
inst.repo=cdrom
目标必须是:- 可安装树,其目录结构包含该安装程序映像、软件包和 repodata 以及可用
.treeinfo
文件。 - DVD(系统 DVD 驱动器中的物理磁盘)
- 完整 Red Hat Enterprise Linux 安装 DVD ,保存在硬盘中或者安装系统可以访问的网络位置。
这个选项允许使用不同格式配置不同安装方法。语法请见下表。表 20.1. 安装源
安装源 选项格式 任意 CD/DVD 驱动器 inst.repo=cdrom
具体 CD/DVD 驱动器 inst.repo=cdrom:device
硬盘驱动器 inst.repo=hd:device:/path
HTTP 服务器 inst.repo=http://host/path
HTTPS 服务器 inst.repo=https://host/path
FTP 服务器 inst.repo=ftp://username:password@host/path
NFS 服务器 inst.repo=nfs:[options:]server:/path
[a][a] 这个选项默认使用 NFS 协议版本 3。要使用不同版本,请在 options 添加+nfsvers=X
。注意
在之前的 Red Hat Enterprise Linux 发行本中,NFS(nfs
选项)可访问的可安装树有不同的选项,同时在 NFS 源(nfsiso
选项)中有一个 ISO 映像。在 Red Hat Enterprise Linux 7 中,安装程序可以自动探测该源是可安装树,还是包含 ISO 映像的目录,同时淘汰了nfsiso
选项。可使用以下格式指定磁盘设备名称:- 内核设备名称,例如:
/dev/sda1
或者sdb2
- 文件系统标签,例如:
LABEL=Flash
或者LABEL=RHEL7
- 文件系统 UUID,例如:
UUID=8176c7bf-04ff-403a-a832-9557f94e61db
非字母数字字符必须以\xNN
形式显示,其中 NN 是使用十六进制代表的字符。例如:\x20
为空格 (" inst.stage2=
- 指定要载入的安装程序运行时映像位置。其语法与 指定安装源 相同。这个选项需要包含有效
.treeinfo
文件的目录路径;如果发现这个文件,则会从这个文件中读取运行时映象位置。如果.treeinfo
文件不可用,Anaconda 会尝试从LiveOS/squashfs.img
中载入该映象。注意
默认情况下,inst.stage2=
引导选项是用于安装介质,并为其设定特定标签(例如:inst.stage2=hd:LABEL=RHEL7\x20Server.x86_64
)。如果要修改包含运行时映象文件系统的默认标签,或如果使用自定义过程引导安装系统,则必须保证为这个选项设定为正确值。 inst.dd=
- 如果要在安装过程中执行驱动程序更新,请使用
inst.dd=
选项。这个选项可多次使用。可使用 指定安装源 中所示任意格式指定这个驱动程序 RPM 软件包位置。除inst.dd=cdrom
选项外,都必须指定设备名称。例如:inst.dd=/dev/sdb1
使用这个选项不添加任何参数时(只使用inst.dd
)将提示安装程序以互动菜单形式要求您提供驱动程序更新磁盘。警告
鉴于已知问题,在安装过程中尝试使用inst.dd=
引导选项执行驱动程序更新,且多次指定该选项载入多个驱动程序更新映象时,Anaconda 会忽略所有参数实例,最后一个除外。要临时解决这个问题,可在安装后安装附加驱动程序,也可以使用其他方法指定驱动程序更新映象,比如driverdisk
Kickstart 命令,或者将多个驱动程序更新映象合并为一个映象。有关在安装过程中更新驱动程序的详情 第 4 章 在 AMD64 和 Intel 64 系统中执行安装时更新驱动程序(AMD64 and Intel 64 系统),或者 第 9 章 在 IBM POWER 系统执行安装的过程中更新驱动程序(IBM Power Systems 服务器)。
kickstart 引导选项
inst.ks=
- 给出用来执行自动安装的 Kickstart 文件位置。您可以使用
inst.repo
的有效格式指定位置。详情请查看 指定安装源。如果您只指定设备而没有路径,该安装程序将会查找指定设备中/ks.cfg
指定 Kickstart 文件。如果您使用这个选项而没有指定设备,安装程序会使用以下选项:inst.ks=nfs:next-server:/filename
在上述示例中,next-server 是 DHCPnext-server
选项或者 DHCP 服务器本身的 IP 地址,同时 filename 是 DHCPfilename
选项,或者/kickstart/
。如果给定文件名称以/
字符结尾,则请添加ip-kickstart
。例如:表 20.2. 默认 Kickstart 文件位置
DHCP 服务器地址 客户端地址 Kickstart 文件位置 192.168.122.1
192.168.122.100
192.168.122.1
:/kickstart/192.168.122.100-kickstart
另外,从 Red Hat Enterprise Linux 7.2 开始,安装程序会尝试从标记为OEMDRV
的卷中载入名为ks.cfg
的 Kickstart 文件(如存在)。如果您的 Kickstart 在这个位置,则根本不需要使用inst.ks=
引导选项。 inst.ks.sendmac
- 在外出
HTTP
请求中添加标头,其中包括所有网络接口的 MAC 地址。例如:X-RHN-Provisioning-MAC-0: eth0 01:23:45:67:89:ab
这在使用inst.ks=http
为系统提供资源时有用。 inst.ks.sendsn
- 在外出
HTTP
请求中添加标头。这个标头将包含从/sys/class/dmi/id/product_serial
中读取系统的序列号。该标头语法如下:X-System-Serial-Number: R8VA23D
控制台、环境和显示选项
console=
- 这个内核选项指定了在主控制台使用的设备。例如:要在第一个串行端口使用控制台,请使用
console=ttyS0
。这个选项应与inst.text
选项一同使用。您可以多次使用这个选项。在这里会在指定控制台中显示引导信息,但最后一个选项将随后由安装程序使用。例如:如果您指定console=ttyS0 console=ttyS1
,则安装程序会使用ttyS1
。 noshell
- 在安装过程中禁用对 root shell 的访问。这在自动(Kickstart)安装时有用。就是说如果您使用这个选项,用户可以查看安装进程,但他们无法通过按 Ctrl+Alt+F2 键进入 root shell 与之互动。
inst.lang=
- 设置在安装过程中使用的语言。语言代码与在
lang
Kickstart 命令中使用的语言代码一致,如 第 23.3.2 节 “Kickstart 命令及选项” 所述。在安装 system-config-language 软件包的系统中,您还可以在/usr/share/system-config-language/locale-list
中找到可用值列表。 inst.geoloc=
- 配置在安装程序中使用的地理位置。地理位置是用来预先设置语言和时区,语法如下:
inst.geoloc=value
可使用以下值替换 value 参数:表 20.3. inst.geoloc 选项的有效值
禁用地理位置 inst.geoloc=0
使用 Fedora GeoIP API inst.geoloc=provider_fedora_geoip
使用 Hostip.info GeoIP API inst.geoloc=provider_hostip
如果指定这个选项,Anaconda 将使用provider_fedora_geoip
。 inst.keymap=
- 指定安装程序使用的键盘布局。局部代码与在
keyboard
Kickstart 命令中所使用的代码一致,如 第 23.3.2 节 “Kickstart 命令及选项” 所述。 inst.text
- 强制安装程序以文本模式而不是图形模式运行。文本用户界面有一定的限制,例如:它不允许您修改分区布局或者设置 LVM。在图像功能有限的机器中安装系统时,建议您使用 VNC,如 启用远程访问 所述。
inst.cmdline
- 强制安装程序以命令行模式运行。这个模式不允许任何互动,所有选项必须在 Kickstart 文件或者命令行中指定。
inst.graphical
- 强制安装程序以图形模式运行。这个模式是默认模式。
inst.resolution=
- 指定图形模式中的屏幕分辨率。格式为 NxM,其中 N 为屏幕宽度,M 为屏幕宽度(单位为像素)。最低分辨率为
800x600
。 inst.headless
- 指定要安装系统的机器没有任何显示硬件。换而言之,这个选项可防止安装程序探测显示屏。
inst.xdriver=
- 指定在安装过程中以及安装的系统中使用
X
驱动程序名称。 inst.usefbx
- 让安装程序使用帧缓存
X
驱动程序,而不是具体硬件的驱动程序。这个选项与inst.xdriver=fbdev
相当。 modprobe.blacklist=
- 将一个或者多个驱动程序列入黑名单(完全禁用)。使用这个选项禁用的驱动程序(mods)将无法在安装开始时以及安装完成后载入,安装的系统将保留这些设置。您可以在
/etc/modprobe.d/
目录中找到放入黑名单的驱动程序。使用由逗号分开的列表禁用多个驱动程序。例如:modprobe.blacklist=ahci,firewire_ohci
inst.sshd
- 在安装过程中启动
sshd
服务,这样就可以在安装过程中使用SSH
连接到系统并监控其进度。有关 SSH 的详情请查看ssh(1)
man page 以及《Red Hat Enterprise Linux 7 系统管理员指南》的相关章节。注意
inst.kdump_addon=
- 启用或禁用安装程序中的 Kdump 配置页面(附加组件)。默认启用这个页面;使用
inst.kdump_addon=off
禁用该页面。注:禁用该附加组件会在图形和文本界面中禁用 Kdump 页面以及%addon com_redhat_kdump
Kickstart 命令。
网络引导选项
dracut.cmdline(7)
man page。有关联网的附加信息请查看《Red Hat Enterprise Linux 7 联网指南》。
ip=
- 配置一个或者多个网络接口。要配置多个接口,请多次使用
ip
选项 - 每次配置一个接口。如果配置多个接口,则必须使用rd.neednet=1
选项,同时必须使用bootdev
选项指定主引导接口,如下所述。另外,可使用ip
选项一次,然后使用 Kickstart 设置其他接口。这个选项接受几个不同格式。最常用的格式请参考 表 20.4 “网络接口配置格式”。表 20.4. 网络接口配置格式
可使用以下值替换method
参数:表 20.5. 自动接口配置方法
自动配置方法 值 DHCP dhcp
IPv6 DHCP dhcp6
IPv6 自动配置 auto6
iBFT (iSCSI 引导固件表) ibft
注意
如果您使用需要网络访问的引导选项,比如inst.ks=http://host:/path
,但却没有指定ip
选项,则安装程序会使用ip=dhcp
。重要
要自动连接到 iSCSI 目标,则必须激活用来访问该目标的网络设备。建议使用ip=ibft
引导选项完成此操作。在上表中,ip 参数指定客户端 IP地址。可用方括号将IPv6
地址括起指定它们,例如:[2001:DB8::1]
。gateway 参数是默认网关。这里也可以使用 IPv6 地址。netmask 参数是要使用的子网掩码。这可以是完整子网掩码(例如255.255.255.0
)或者前缀(例如64
)。hostname 参数是客户端系统的主机名。这个参数是可选的。 nameserver=
- 指定名称服务器地址。这个选项可多次使用。
rd.neednet=
- 如果使用多个
ip
选项,则必须使用选项rd.neednet=1
。另外,还可使用ip
选项一次设置多个网络接口,然后使用 Kickstart 设置其他接口。 bootdev=
- 指定引导接口。如果您使用一个以上
ip
选项,则必须使用这个选项。 ifname=
- 为使用给定 MAC 地址的网络设备分配给定接口名称。您可以多次使用这个选项。语法为
ifname=interface:MAC
。例如:ifname=eth0:01:23:45:67:89:ab
注意
使用ifname=
选项是唯一支持的在安装过程中设置自定义网络接口的方法。 inst.dhcpclass=
- 指定 DHCP 销售商等级识别符。
dhcpd
服务将这个值视为vendor-class-identifier
。默认值为anaconda-$(uname -srm)
。 vlan=
- 在适应给定名称的指定接口中设置虚拟 LAN(VLAN)。语法为
vlan=name:interface
。例如:vlan=vlan5:em1
上述命令将在em1
接口中设置名为vlan5
的 VLAN 设备。name 可使用以下格式之一:表 20.6. VLAN 设备命名规则
命名方案 示例 VLAN_PLUS_VID vlan0005
VLAN_PLUS_VID_NO_PAD vlan5
DEV_PLUS_VID em1.0005
.DEV_PLUS_VID_NO_PAD em1.5
. bond=
- 使用以下语法设置捆绑设备:
bond=name[:slaves][:options]
。请使用捆绑设备名称替换 name,用逗号分开的物理(以太网)接口列表替换 slaves,同时使用逗号分开的捆绑选项列表替换 options。例如:bond=bond0:em1,em2:mode=active-backup,tx_queues=32,downdelay=5000
运行modinfo bonding
命令可查看可用选项列表。Using this option without any parameters will assumebond=bond0:eth0,eth1:mode=balance-rr
. team=
- 使用以下语法设置成组设备:
team=master:slaves
。使用主成组设备名称替换 master,并使用逗号分开的作为成组设备中辅助设备的物理(以太网)设备替换 slaves。例如:team=team0:em1,em2
高级安装选项
inst.kexec
- 如果指定这个选项,安装程序将在安装结束时而不是重启时使用 kexec 系统调用。这样会立即载入新系统,并绕过通常有 BIOS 或固件执行的硬件初始化。
重要
由于使用 kexec 引导系统时的复杂性,可单独测试,并保证在每个状态下保证其功能。使用 kexec 时,设备注册(通常完全系统重启后会清除)中仍有数据,可能会对一些设备驱动程序产生潜在影响。 inst.gpt
- 强制安装程序在 GUID分区表(GPT)而不是主引导记录(MBR)中安装分区信息。这个选项对使用 UEFI 的系统没有任何意义,除非采用与 BIOS 兼容的模式。通常使用 BIOS 的系统和兼容 BIOS 的使用 UEFI 的系统会尝试使用 MBR 方案保存分区信息,除非磁盘容积超过 2TB。使用这个选项会更改这个行为,即使磁盘小于 2TB 也允许 GPT 写入。有关 GPT 和 MBR 的详情,请查看 第 6.14.1.1 节 “MBR 和 GPT 注意事项”;有关常规 GPT、MBR 和磁盘分区的详情,请查看 第 A.1.4 节 “GUID 分区表(GPT)”。
inst.multilib
- 为 multilib 软件包配置该系统(即允许在 64 位 x86 系统中安装 32 位软件包)并安装在本小节中指定的软件包。通常在 AMD64 和 Intel 64 系统中,只安装用于整个架构(标记为
x86_64
)的软件包以及用于所有架构(标记为noarch
)软件包。使用这个选项时,将自动安装用于 32 位 AMD 或者 Intel 系统(标记为i686
)的软件包。这只适用于在%packages
部分直接指定的软件包。如果软件包只作为相依性安装,则只会安装指定的相依性。例如:如果要安装软件包 bash,它依赖于软件包 glibc,会在多个变体中安装前一个软件包,而只具体要求的变体中安装后一个软件包。 inst.nosave=
- 这个选项是在 Red Hat Enterprise Linux 7.3 中引进,控制要将哪些 Kickstart 文件和安装日志保存在安装的系统中。它对禁止在执行 OEM 操作系统安装时保存此类数据时,或者使用敏感数据生产映象(比如内部存储库 URL)时特别有帮助,因为这些资源可能会在 kickstart 文件和(/或)映象日志中提及。这个选项的可能值为:
input_ks
- 禁用保存 Kickstart 文件(如果有)输入。output_ks
- 禁止将 Anaconda 生成的输出 Kickstart 文件。all_ks
- 禁止保存输入和输出 Kickstart 文件。logs
- 禁止保存所有安装日志。all
- 禁止保存所有 Kickstart 文件及所有安装日志。可将多个值合并为一个逗号分开的列表,例如:input_ks,logs
inst.zram
- 这个选项控制安装过程中的 zRAM swap 使用。它可在系统 RAM 内部创建压缩块设备,并在 swap 空间而不是硬盘中使用该 RAM。这样可允许安装程序大量增加可用内存数量,这样比使用较低内存更迅速地安装。默认情况下,在使用 2GB 或更少 RAM 的 zRAM 系统中会启用 swap,并在使用 2GB 以上内存的系统中禁用 swap。可使用此选项更改这个行为 - 即 2GB 以上 RAM 的系统,使用
inst.zram=1
启用 swap,并在使用 2GB 或更少内存的系统中使用inst.zram=0
禁用这个功能。
启用远程访问
inst.vnc
- 指定应在
VNC
会话中运行该安装程序的图形界面。如果您指定这个选项,则需要使用可与安装程序互动的 VNC 客户端应用程序连接到该系统。已启用 VNC 共享,因此可同时连接多个客户端。注意
使用 VNC 安装的系统默认以文本模式启动。 inst.vncpassword=
- 为该安装程序使用的 VNC 服务器设置一个秘密。任意尝试连接到该系统的 VNC 客户端都必须提供正确的密码方可获得访问权限。例如:
inst.vncpassword=testpwd
会将密码设定为testpwd
。VNC 密码长度必须在 6-8 个字符之间。注意
如果您指定无效密码(太短或者太长),安装程序都会显示一条信息提示您指定一个新的密码。VNC password must be six to eight characters long. Please enter a new one, or leave blank for no password. Password:
inst.vncconnect=
- 安装开始后在指定主机和端口连接侦听 VNC 客户端。正确的语法为
inst.vncconnect=host:port
,其中 host 为 VNC 客户端主机的地址,port 指定要使用哪个端口。port 参数为自选,如果您没有指定,安装程序就会使用5900
。
调试及故障排除
inst.updates=
- 指定安装程序运行时要使用的
updates.img
文件位置。其语法与inst.repo
选项相同 - 详情请查看 表 20.1 “安装源”。在所有格式中,如果没有指定文件名而只是指定目录,安装程序会寻找名为updates.img
的文件。 inst.loglevel=
- 指定所要记录终端中信息的最低等级。这只适用于终端记录;日志文件总是包含所有等级的信息。这个选项的可能值从低到高的等级为:
debug
,info
,warning
,error
和critical
默认值为info
,就是说默认情况下终端记录中只显示等级在info
到critical
之间的信息。 inst.syslog=
- 开始安装后,这个选项会将日志信息发送到指定主机的 syslog 进程。必须将这个远程 syslog 进程配置为接受进入的连接。有关如何将 syslog 服务配置为接受进入的连接请查看《Red Hat Enterprise Linux 7 系统管理员指南》。
inst.virtiolog=
- 指定
virtio
端口(/dev/virtio-ports/name
中的字符设备)用来转发日志。默认值为org.fedoraproject.anaconda.log.0
,如果显示此端口则会使用它。
20.1.1. 淘汰及删除的引导选项
淘汰的引导选项
注意
inst.
前缀。例如:vnc=
选项已淘汰,取而代之的是 inst.vnc=
选项。在这里没有列出这些变化。
method=
- 配置的安装方法。请使用
inst.repo=
选项替换。 repo=nfsiso:server:/path
- 在 NFS 安装中,指定目标是位于 NFS 服务器中的一个 ISO 映像而不是安装树。不同的是现在可自动探测,就是说它与
inst.repo=nfs:server:/path
的功能相同。 dns=
- 配置的域名服务器(DNS)。请使用
nameserver=
选项替换。 netmask=
,gateway=
,hostname=
,ip=
,ipv6=
- 已将这些选项整合在
ip=
选项中。 ksdevice=
- 选择在安装初期要使用的网络设备。已采用不同选项替换不同值,如下表所示。
表 20.7. 自动接口配置方法
值 目前行为 Not present 所有设备均使用 dhcp
激活,除非使用ip=
选项和(/或者)BOOTIF
选项指定要求的设备及配置。ksdevice=link
类似上面的论述,不同的是总是使用 initramfs 激活网络,无论您需要与否。 ksdevice=bootif
忽略的选项(指定时默认使用 BOOTID= 选项) ksdevice=ibft
使用 ip=ibft
dracut 选项替换ksdevice=MAC
使用 BOOTIF=MAC
替换ksdevice=device
使用 ip=
dracut 选项指定设备名称替换重要
指定 Kickstart 安装时,如果使用本地介质引导,且在本地介质中保存 Kickstart 文件,就不会初始化网络。就是说所有需要网络访问的 Kickstart 选项,比如访问网络位置的预安装或者后安装脚本都会造成安装失败。这是个已知的问题,详情请查看 BZ#1085310。要解决这个问题,可以使用ksdevice=link
引导选项,也可以在 Kickstart 文件的network
命令中添加--device=link
选项。 blacklist=
- 用来禁用指定的驱动程序。目前由
modprobe.blacklist=
选项处理。 nofirewire=
- 禁用的防火墙接口支持。您也可以使用
modprobe.blacklist=
选项禁用防火墙驱动程序(firewire_ohci
):modprobe.blacklist=firewire_ohci
删除的引导选项
askmethod
,asknetwork
- 安装程序的
initramfs
现已完全不需要互动,就是说不会再使用这些选项,而是使用inst.repo=
选项指定安装方法,使用ip=
配置网络设置。 serial
- 这个选项强制 Anaconda 使用
/dev/ttyS0
控制台作为输出。请使用console=/dev/ttyS0
(或者类似选项)替换。 updates=
- 指定安装程序的更新位置。使用
inst.updates=
选项替换。 essid=
,wepkey=
,wpakey=
- 配置无线网络访问。现已使用 dracut 处理网络配置,但它不支持无线网络,提供这些选项毫无意义。
ethtool=
- 之前用来配置附加低层网络设置。所有网络设置现已使用
ip=
选项处理。 gdb
- 允许您 debug 装载程序。使用
rd.debug
替换。 mediacheck
- 开始安装前确认安装介质。使用
rd.live.check
替换。 ks=floppy
- 指定软驱作为 Kickstart 文件源。现已不再支持软盘。
display=
- 配置远程显示。使用
inst.vnc
选项替换。 utf8
- 使用文本模式安装时添加 UTF8 支持。UTF8 支持现在自动工作。
noipv6
- 用来禁用安装程序中的 IPv6 支持。IPv6 现已内嵌如内核,这样就不会在黑名单中添加该驱动程序,但也可以使用
ipv6.disable
dracut 选项禁用 IPv6。 upgradeany
- 已使用不同方法在 Red Hat Enterprise Linux 7 中升级。升级详情请查看 第 26 章 升级当前系统。
vlanid=
- 用来配置虚拟 LAN(802.1q 标签)设备。使用
vlan=
dracut 选项替换。