Red Hat Training
A Red Hat training course is available for Red Hat Enterprise Linux
章 20. 開機選項
Red Hat Enterprise Linux 安裝系統包含了各種開機選項,供管理員使用來透過啟用(或停用)特定功能,以修改安裝程式的預設特性。若要使用開機選項,請將選項附加至開機指令列上,如〈節 20.1, “在開機選單下配置安裝系統”〉中所述。若要使用多重選項,這些選項必須以單一空格區隔開來。
本章中描述了兩種基本類型的選項:
- 以「等號」(
=
)作為結尾的選項需要以一個值來指定 - 它們無法獨立使用。比方說,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 的參數和配置檔案〉
在開機選單(您以安裝媒介開機後出現的選單)中編輯開機選項的方法有幾種:
boot:
提示,透過在開機選單中任何位置上按下 Esc 鍵。當使用此提示時,第一個選項必須總是指定欲載入的安裝程式映像檔。在大部分情況下,映像檔能透過使用linux
關鍵字來指定。在那之後,則必須視需求指定額外選項。在此提示上按下 Tab 鍵將會顯示協助畫面,說明在適當情況下能使用哪些指令。若要以您的選項開始進行安裝,請按下 Enter 鍵。若要由boot:
提示返回至開機選單,請重新啟動電腦,並再次由安裝媒介開機。- 在以 BIOS 為基礎的 AMD64 和 Intel 64 系統上,
>
提示能藉由在開機選單中,以 Tab 鍵選取想要的項目。和boot:
提示不同,此提示允許您編輯一組預定義的開機選項。比方說,若您選取了標記為「測試此媒介 & 安裝 Red Hat Enterprise Linux 7.0」的項目,此選單項目所能使用的完整選項將會顯示在提示上,以讓您加入欲使用的選項。按下 Enter 將會使用您所指定的選項開始進行安裝。若要取消編輯並返回開機選單,請在任何時候按下 Esc 鍵。 - 在基於 UEFI 的 AMD 64 和 Intel 64 系統上的 GRUB2 選單。若您的系統使用 UEFI,您可藉由選取某個項目並按下 e 鍵,以編輯開機選項。當您完成編輯後,請按下 F10 或 Ctrl+X 來使用您所指定的選項開始進行安裝。
除了描述於本章中的選項,開機提示亦接受 dracut kernel 選項。欲查看這些選項,請參閱
dracut.cmdline(7)
man page。
注意
在本指南中,安裝程式特屬的開機選項總是會以
inst.
作為起始。目前此前綴乃選用性的,比方說,resolution=1024x768
的功能會和 inst.resolution=1024x768
完全相同。然而,在未來的發行版中,inst.
前綴將會是必要的。
指定安裝來源
inst.repo=
- 指定安裝來源 — 也就是安裝程式能夠找到其所需之映像檔和套件的位置。例如:
inst.repo=cdrom
目標必須是:- 一個可安裝的目錄樹,此為一個包含了安裝程式映像檔、套件和軟體庫資料,以及一個有效的
.treeinfo
檔案的目錄結構。 - DVD(放置在系統 DVD 光碟機中的實體磁碟)
- 完整 Red Hat Enterprise Linux 安裝 DVD 的 ISO 映像檔,放置在安裝系統能存取的硬碟或是網路位置上
此選項能讓您使用不同格式來配置不同的安裝方式。語法詳述於以下表格中。表格 20.1. 安裝來源
注意
在先前的 Red Hat Enterprise Linux 發行版中,可安裝的目錄樹擁有各別的獨立選項,並能以 NFS(nfs
選項)存取,以及一個位於 NFS 來源(nfsiso
選項)上的 ISO 映像檔。在 Red Hat Enterprise Linux 7 中,安裝程式能自動偵測來源是否是個可安裝的目錄樹,或是一個包含了 ISO 映像檔的目錄,並且nfsiso
選項已被淘汰。磁碟裝置名稱能透過使用下列格式指定:- Kernel 裝置名稱,例如
/dev/sda1
或是sdb2
- 檔案系統標籤,例如
LABEL=Flash
或是LABEL=RHEL7
- 檔案系統 UUID,例如
UUID=8176c7bf-04ff-403a-a832-9557f94e61db
非數字字母的字元必須以\xNN
來表示,NN 為字元的十六進位代表。比方說,\x20
代表空格(「 inst.stage2=
- 指定欲載入之安裝程式 runtime 映像檔的位置。語法與〈指定安裝來源〉中所示的相同。此選項會忽略所有項目,除了映像檔本身之外,您無法使用它來指定套件的位置。
inst.dd=
- 若您需要在安裝時進行驅動程式更新,請使用
inst.dd=
選項。它能多次重複使用。驅動程式 RPM 套件的位置能使用〈指定安裝來源〉中所描述的任何格式來指定。除了inst.dd=cdrom
選項之外,裝置名稱在任何情況下皆必須指定。例如:inst.dd=/dev/sdb1
若在未使用任何參數的情況下使用此選項(僅使用inst.dd
),這將會提示安裝程式以一個互動式的選單要求您提供驅動程式更新磁碟。欲取得更多有關於在安裝時進行驅動程式更新上的相關資訊,請參閱〈章 4, 在 AMD64 和 Intel 64 Systems 上進行安裝時更新驅動程式〉(AMD64 和 Intel 64 系統)和〈章 9, 在 IBM Power System 上進行安裝時更新驅動程式〉(IBM Power Systems 伺服器)。
Kickstart 開機選項
inst.ks=
- 提供 Kickstart 檔案的位置,以使用來自動化安裝程序。位置能透過使用任何對於
inst.repo
有效的格式來指定。詳情請參閱〈指定安裝來源〉。若您僅指定裝置而未指定路徑,安裝程式將會在指定裝置的/ks.cfg
中尋找 Kickstart 檔案。若您在未指定裝置的情況下使用此選項,安裝程式將會使用:inst.ks=nfs:next-server:/filename
在以上範例中,next-server 代表 DHCP 的next-server
選項或是 DHCP 伺服器本身的 IP 位址,而filename則為 DHCP 的filename
選項,或是/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
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=
- 此 kernel 選項能指定裝置被使用來作為主要主控台。比方說,若要在第一個序列埠上使用主控台,請使用
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=值
值 參數能夠是以下任何項目:表格 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 則代表畫面高度(解析度)。支援的最小解析度為
640x480
。 inst.headless
- 指定欲進行安裝的機器不搭載任何顯示硬體。換句話說,此選項會避免安裝程式嘗試偵測螢幕。
inst.xdriver=
- 指定欲在進行安裝時,以及在已安裝之系統上使用的
X
驅動程式名稱。 inst.usefbx
- 告知安裝程式使用 frame buffer
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 系統管理員指南〉中的相關章節。注意
進行安裝時,root
帳號就預設值沒有密碼。您可如〈節 23.3.2, “Kickstart 指令和選項”〉中所描述的,透過sshpw
Kickstart 指令設置一組在進行安裝時所使用的 root 密碼。
網路開機選項
網路初始化是由 dracut 來處理的。此部分僅列出了部分常用的選項;欲取得完整的清單,請參閱
dracut.cmdline(7)
man page。有關於網路的額外資訊亦能從《Red Hat Enterprise Linux 7 網路作業指南》中取得。
ip=
- 配置一或更多個網路介面卡。若要配置多重介面卡,請使用
ip
多次 — 一個介面卡一次。若配置了多個介面卡,您必須透過以下描述的bootdev
選項指定主要的開機介面卡。此選項接受多種不同的格式。最常見的格式詳述於〈表格 20.4, “網路介面卡配置格式”〉中。表格 20.4. 網路介面卡配置格式
method
參數能夠是以下任何值:表格 20.5. 自動介面卡配置方式
自動配置方式 數值 DHCP dhcp
IPv6 DHCP dhcp6
IPv6 自動配置 auto6
iBFT(iSCSI Boot Firmware Table) ibft
注意
若您使用需要存取網路的開機選項(例如inst.ks=http://host:/路徑
)而卻沒指定ip
選項的話,安裝程式將會使用ip=dhcp
。在以上表格中,ip 參數指定了客戶端的 IP 位址。IPv6
位址能透過將其放置在正括號中來指定,例如[2001:DB8::1]
。閘道器參數為預設的閘道器。在此也接受 IPv6 位址。子網路遮罩參數乃將被使用的子網路遮罩。這能夠是完整的子網路遮罩(例如255.255.255.0
)或是一個前綴(例如64
)。主機名稱參數代表客戶端的主機名稱。此參數為選用性的參數。 nameserver=
- 指定名稱伺服器的位址。此選項能重複使用多次。
bootdev=
- 指定開機介面卡。若您使用超過一個
ip
選項,此選項將會是必要的。 ifname=
- 為特定 MAC 位址的網路裝置指定特定介面卡名稱。可多次使用。語法為
ifname=interface:MAC
。例如:ifname=eth0:01:23:45:67:89:ab
inst.dhcpclass=
- 指定 DHCP 廠商類別辨識符號。
dhcpd
服務會將這個值視為vendor-class-identifier
。預設值為anaconda-$(uname -srm)
。 vlan=
- 在指定的介面卡上設置一個(VLAN)裝置並提供一組名稱。語法為
vlan=name:介面卡
。例如:vlan=vlan5:em1
以上選項將會在em1
介面卡上設定一個名為vlan5
的 VLAN 裝置。.名稱能使用以下格式:表格 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=
- 透過以下語法設定 bonding 裝置:
bond=name[:slaves][:options]
。請將 name 替換為 bonding 裝置名稱、將 slaves 替換為逗號區隔開的實體(乙太網路)介面,並將 options 替換為逗號區隔開的 bonding 選項。例如:bond=bond0:em1,em2:mode=active-backup,tx_queues=32,downdelay=5000
欲查看可用選項的清單,請執行modinfo bonding
指令。在未使用任何參數的情況下使用此選項將會假定bond=bond0:eth0,eth1:mode=balance-rr
。 team=
- 透過以下語法設定 team 裝置:
team=master:slaves
。請將 master 替換為 master team 裝置的名稱,並將 slaves 替換為逗號區隔開的實體(乙太網路)裝置,以使用來作為 team 裝置中的 slave。例如:team=team0:em1,em2
進階安裝選項
inst.multilib
- 為 multilib 套件配置系統(也就是允許在 64 位元的 x86 系統上安裝 32 位元的套件)並安裝指定在此部分中的套件。正常來說,在一部 AMD64 或 Intel 64 系統上,只有此架構的套件(標記為
x86_64
)以及所有(標記為noarch
)架構的套件會被安裝。當您使用此選項時,32 位元 AMD 或 Intel 系統(標記為i686
)的可用套件將也會被自動安裝。這僅適用於直接在%packages
部分中指定的套件。若套件僅作為相依性套件安裝,只有確切指定的相依性套件會被安裝。比方說,若您要安裝 foo 套件而此套件依賴 bar 套件的話,前者的各個原件將會被安裝,而後者僅會被安裝必要的原件。 inst.gpt
- 強制安裝程式將分割區資訊安裝至一個 GUID 分割表(GPT)中,而非 Master Boot Record(MBR)中。正常來說在 BIOS 相容性模式中,基於 BIOS 的系統和基於 UEFI 的系統將會嘗試使用 MBR 方案來儲存分割區資訊,除非磁碟大於 2 TB。使用此選項將會改變此特性,並允許 GPT 能寫入甚至是小於 2 TB 的磁碟。此選項在基於 UEFI 的系統上毫無意義。
啟用遠端存取
欲配置 Anaconda 以進行圖形安裝,您需要使用以下選項。詳情請參閱〈章 22, 透過 VNC 安裝〉。
inst.vnc
- 指定安裝程式的圖形介面會在一個
VNC
session 中執行。若您指定了此選項,您將需要連至使用 VNC 客戶端的系統,才能與安裝程式進行互動。VNC 共享將需要啟用,以讓多重客戶端同時連上系統。注意
一部透過 VNC 安裝的系統就預設值將會在文字模式下啟動。 inst.vncpassword=
- 為安裝程式所使用的 VNC 伺服器設定一組密碼。任何嘗試連上系統的 VNC 客戶端皆需要提供正確的密碼才能進行存取。比方說,
inst.vncpassword=testpwd
會將密碼設為testpwd
。VNC 密碼的長度必須介於 6 到 8 個字元之間。注意
若您指定了一組無效的密碼(太短或太長),您將會被安裝程式提示輸入一組新的密碼:VNC 密碼長度必須介於六到八個字元之間。 請重新輸入一組密碼,或保留空白不設定密碼。 密碼:
inst.vncconnect=
- 安裝程式啟動時,連上一個監聽中、位於指定主機和連接埠的 VNC 客戶端。正確的語法為
inst.vncconnect=host:port
,host 代表 VNC 主機的位址,port 則指定要使用哪個連接埠。port 參數為選用性的,若您不指定連接埠,安裝程式將會使用5900
。
除錯和疑難排解
inst.updates=
- 指定欲套用至安裝程式 runtime 的
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. 已淘汰並移除的開機選項
已淘汰的開機選項
此清單中的選項已淘汰。您依然能夠使用它們,不過已有其它選項提供相同的功能。不建議使用已淘汰的選項,並且它們將預期在未來的版本中移除。
注意
請注意,如〈節 20.1, “在開機選單下配置安裝系統”〉中所述,安裝程式特屬的選項現在皆使用了
inst.
這個前綴。比方說,vnc=
選項現在已被視為淘汰,並由 inst.vnc=
選項取代。這些變更未在此列出。
method=
- 配置安裝方式。請使用
inst.repo=
選項來代替。 repo=nfsiso:伺服器:/路徑
- 在 NFS 安裝中,指定目標為位於一個 NFS 伺服器上的 ISO 映像檔,而非安裝目錄樹。此差異現在會被自動偵測出,令這項選項和
inst.repo=nfs:server:/path
功能相同。 dns=
- 配置區域名稱伺服器(Domain Name Server,DNS)。請使用
nameserver=
選項來代替。 netmask=
、gateway=
、hostname=
、ip=
、ipv6=
- 這些選項已被整合在
ip=
選項之下。 ksdevice=
- 選擇網路裝置,以在安裝程序早期使用。不同的值已被替換為不同的選項;請參閱以下表格。
表格 20.7. 自動介面卡配置方式
數值 目前的特性 不存在 所有裝置皆會被透過 dhcp
嘗試啟用,除非透過ip=
選項與/或BOOTIF
選項指定欲使用的裝置和配置。ksdevice=link
和以上相似,不同的是網路總是會在 initramfs 中啟用,無論它是否是必要的。應使用受支援的 rd.neednet
dracut 選項來達成相同的結果。ksdevice=bootif
忽略(當被指定時,BOOTID= 選項會被作為預設值使用) ksdevice=ibft
替換為 ip=ibft
dracut 選項ksdevice=MAC
替換為 BOOTIF=MAC
ksdevice=device
透過使用 ip=
dracut 選項指定裝置名稱來替換。重要
當進行一項 Kickstart 安裝時,若由本機媒介開機,而 Kickstart 檔案也在本機媒介上的話,網路將不會初始化。這代表任何其它需要存取網路的 Kickstart 選項,例如會存取網路位置的預安裝或安裝後的 script,皆會造成安裝程序失敗。這是個已知的問題。詳情請參閱〈BZ#1085310〉若要解決此問題,請使用ksdevice=link
開機選項,或在您的 Kickstart 檔案中,將--device=link
選項附加至network
指令。 blacklist=
- 使用來停用特定驅動程式。這現在已由
modprobe.blacklist=
選項負責處理。 nofirewire=
- 停用了 FireWire 介面卡的支援。您可藉由使用
modprobe.blacklist=
選項來代替,以停用 FireWire 驅動程式(firewire_ohci
)。modprobe.blacklist=firewire_ohci
已移除的開機選項
下列選項已移除。它們存在先前版本的 Red Hat Enterprise Linux 中,不過已無法再使用。
askmethod
、asknetwork
- 安裝程式的
initramfs
現在已完全成為非互動式,代表這些選項已無法再使用。請使用inst.repo=
來指定安裝方式,並使用ip=
來配置網路設定。 serial
- 此選項強制了 Anaconda 使用
/dev/ttyS0
主控台作為輸出。請使用console=/dev/ttyS0
(或類似選項)來代替。 updates=
- 指定了安裝程式更新項目的位置。請使用
inst.updates=
選項來代替。 essid=
、wepkey=
、wpakey=
- 配置無線網路存取。網路配置現在已由 dracut 來處理,並且不支援無線網路,因此這些選項已沒有作用。
ethtool=
- 過去使用來配置額外的低層網路設定。所有網路設定現在皆由
ip=
選項來處理。 gdb
- 能允許您為載入程式除錯。請使用
rd.debug
來代替。 mediacheck
- 進行安裝程序前,驗證安裝媒體。已被
rd.live.check
選項取代。 ks=floppy
- 指定磁片來作為 Kickstart 檔案來源。磁碟機已不再受到支援。
display=
- 配置遠端畫面。已被
inst.vnc
選項取代。 utf8
- 在文字安裝模式中新增了 UTF8 支援。UTF8 支援現在已能自動運作。
noipv6
- 用來在安裝程式中停用 IPv6 支援。IPv6 現在已內建入 kernel 中,因此該驅動程式無法被納入黑名單中;然而,您依然能夠透過使用
ipv6.disable
dracut 選項來停用 IPv6。 upgradeany
- Red Hat Enterprise Linux 7 中的升級方式已不同。欲取得有關於升級您系統上的相關資訊,請參閱〈章 25, 升級你目前的系統〉。
vlanid=
- 使用來配置 Virtual LAN(802.1q tag)裝置。請使用
vlan=
dracut 選項來代替。