Fedora 的手動設定安裝方法

Fedora 的手動設定安裝方法

我喜歡使用 Fedora,現在推薦它作為非技術用戶的首選發行版。然而,我一直沒能在我的主機上使用它,因為我發現安裝方法太有限了。多年來,我使用了許多奇怪的分區排列方式;看來自動分區器現在終於對 LVM 有了很好的支持,但我現在轉向了涉及 btrfs 子卷的不同方案,我還沒有見過可以使用它的方案。無論如何,使用加密和 RAID 以及其他設備映射對這些進行分層可能會令人擔憂,而且即使自動化工具聲稱支援它,產生的安排通常也不是最佳的。

我的偏好是根據自己的喜好手動排列分區和區塊設備,然後將所有內容安裝在正確的位置並執行假設的安裝過程。 Arch 和 Exherbo 都使用這個方法。從技術上講,這似乎沒有理由不適用於自動安裝的發行版;它只需要完全跳過分區步驟。

在通常自動安裝的發行版中使用此方法的一般選項是什麼?我對 Fedora 最感興趣,但也希望看到其他常見發行版(例如 CentOS、Mint、Ubuntu 等)的意見。

答案1

Fedora 與所有 RHEL 風格的發行版一樣,使用 kickstart「回應」文件。

kickstart 可能包含類似以下內容的行:

bootloader --location=mbr --driveorder=sda --append="exec-shield=1 selinux=1 rhgb rhgb quiet quiet" 
# The following is the partition information you requested
# Note that any partitions you deleted are not expressed
# here so unless you clear all partitions first, this is
# not guaranteed to work
clearpart --none
ignoredisk --drives=sdb
part pv.253002 --onpart=sda2 --noformat  --encrypted

part /boot --fstype=ext4 --onpart=sda1

volgroup vg_main --pesize=32768 --useexisting --noformat pv.253002
logvol / --fstype=ext4 --name=lv_root --vgname=vg_main --useexisting --noformat
logvol swap --name=lv_swap --vgname=vg_main --useexisting --noformat

ETC。

kickstart 格式的完整描述可從github 上的 pykickstart

專門針對您的需求:

btrfs:

定義 BTRFS 磁碟區或子磁碟區。該命令的形式為:

btrfs <mntpoint> --data=<level> --metadata=<level> --label=<label> <partitions*>

對於捲和形式:

btrfs <mntpoint> --subvol --name=<path> <parent>

對於子卷。

dmraid:

dmraid --name= --dev=

襲擊:

組裝軟體 RAID 設備。該命令的形式為:

raid <mntpoint> --level=<level> --device=<mddevice> <partitions*>

最重要的是 -part這裡有太多選項無法列出。
可以這麼說,partorpartition是在 btrfs 之前定義儲存的主要工具。

part raid.01 --size=6000 --ondisk=sda
part raid.02 --size=6000 --ondisk=sdb
part raid.03 --size=6000 --ondisk=sdc

part swap1 --size=512 --ondisk=sda
part swap2 --size=512 --ondisk=sdb
part swap3 --size=512 --ondisk=sdc

part raid.11 --size=6000 --ondisk=sda
part raid.12 --size=6000 --ondisk=sdb
part raid.13 --size=6000 --ondisk=sdc

raid / --level=1 --device=md0 raid.01 raid.02 raid.03
raid /usr --level=5 --device=md1 raid.11 raid.12 raid.13

clearpart --all如果您打算使用 anaconda 語言建立分割區,並且clearpart --none您提供了預先存在的方案(手動建置或%pre按照 @mattdm 建議使用),請務必使用。

要在安裝過程中使用 kickstart,請在安裝過程中新增以下內容: linux ks=nfs:<server>:/<path>
當然,還有許多其他選項可用於取得檔案:cd/iso 、 http 、 BIOS 設備等上的直接路徑

答案2

使用啟動。 Fedora 讓這一切變得簡單,手動安裝後,它會在根目錄中留下檔案「anaconda-ks.cfg」。這基本上是您的起始位置,您可以從這裡為您自己的安裝配置所有內容。 Fedora、centos 和 rhel 的過程相同。

在 Fedora 啟動(例如從 Fedora iso)上,您可以指向此檔案。我更喜歡將此類文件放在 http 伺服器上,但正如您所看到的,它可以放在任何媒體上。 https://www.centos.org/docs/5/html/5.1/Installation_Guide/s1-kickstart2-startinginstall.html

答案3

使用啟動。但是,不要使用普通的分區命令,而是使用%pre要運行的部分parted和其他工具來建立您想要的任何方案。請參閱%pre 上的文檔。或者,您可以透過即時 USB 啟動手動執行此操作。

不管怎樣,一定要付出clearpart --none,這樣就不會被消滅。

然後,用於part --usepart指定現有設備。--noformat如果您也自己處理過檔案系統創建,則可以新增。

(這是有記錄的在 Fedora 安裝指南中.)

如果您的需求比自動化工具更具體,但又不是特別奇特,那麼您就不需要需要kickstart - 只需手動建立您的方案,然後在安裝程式中,根據需要手動匹配您的現有設備。

相關內容