安裝指南
本文將指導如何用官方安裝鏡像啟動的 Live 系統安裝 Arch Linux。安裝媒介現提供無障礙輔助功能,對此使用無障礙輔助選項安裝 Arch Linux 頁面有詳細描述。關於其它的安裝方法,請參閱安裝過程分類下的其他條目。
建議在安裝前閱讀常見問題。對於本文中使用的慣用術語,請參閱閱讀幫助。請將代碼中斜體
的部分按實際情況替換成具體內容。
本指南旨在簡潔,建議你按順序遵循每一節中的指示。有關更詳細的說明,請閱讀本指南內相應的 ArchWiki 文章或各類程式的手冊。若需要交互幫助,可以使用 Arch Linux 中文社區的聊天群組或論壇。
Arch Linux 能執行在最少 512 MiB 記憶體的 x86_64 機器上,但從安裝媒介啟動系統並成功安裝需要更多的記憶體。[1] 基本安裝將佔用小於 2 GiB 的儲存空間。由於安裝過程中需要從遠端存放庫取得軟件包,電腦將需要一個有效的互聯網連接。
安裝前的準備[編輯 | 編輯原始碼]
取得安裝映像[編輯 | 編輯原始碼]
打開下載頁面,並根據需要的引導方式,取得 ISO 檔案或 netboot 映像以及相應的 GnuPG 簽名。
驗證簽名[編輯 | 編輯原始碼]
建議使用前先驗證所下載檔案的簽名,特別是從HTTP 鏡像源下載的檔案,因為 HTTP 連接一般來說容易遭到攔截而提供惡意鏡像。
在一台已經安裝 GnuPG 的系統上,可通過下載 PGP 簽名 (在下載頁面的 Checksums 下方) 到 ISO 檔案所在的路徑,然後用以下方式驗證簽名:
$ gpg --keyserver-options auto-key-retrieve --verify archlinux-version-x86_64.iso.sig
另外,在一台已經安裝 Arch Linux 的電腦上可以通過以下方式驗證:
$ pacman-key -v archlinux-version-x86_64.iso.sig
- 如果安裝映像是從鏡像站點下載,而不是從 archlinux.org 下載的話,則簽名是可以被偽造的。在這種情況下,請確保用來解碼簽名的公鑰是被另一個可信的金鑰簽署的。
gpg
命令將會輸出公鑰的指紋。 - 另一種驗證簽名的方法是確保公鑰的指紋等於其中一位簽署了 ISO 檔案 Arch Linux 開發者的指紋。請參閱維基百科取得更多關於公鑰加密的資訊。
準備安裝媒介[編輯 | 編輯原始碼]
安裝映像可以通過 U 盤、光碟和帶 PXE 的網絡提供給目標機器。請按照合適的文章,使用所選映像為自己準備安裝媒介。
啟動到 Live 環境[編輯 | 編輯原始碼]
- 選擇從帶有 Arch 安裝檔案的媒介啟動,通常是要在電腦開機自檢時按下某個按鍵,一般在啟動畫面會有提示。具體情況請參考主機板說明書。
- 當啟動載入程式選單出現時,選擇 Arch Linux install medium 並按
Enter
進入安裝環境。 - 您將會以 root 身份登入進一個虛擬控制台,預設的 Shell 是 Zsh。
如果想一邊安裝,一邊使用 Lynx 檢視本指南,可以使用 Alt+箭頭
快速鍵切換不同的控制台。要編輯設定檔,可以使用 mcedit(1)、nano 和 vim。請參閱 packages.x86_64 取得安裝媒介中包含的軟件包列表。
控制台鍵盤配置[編輯 | 編輯原始碼]
控制台鍵盤配置預設為 us
(美式鍵盤)。列出所有可用的鍵盤配置,可以使用:
# ls /usr/share/kbd/keymaps/**/*.map.gz
如果您想要更改鍵盤配置,可以將相應檔名添加進 loadkeys(1),但請省略路徑和副檔名。比如,要添加德語鍵盤配置:
# loadkeys de-latin1
控制台字型位於 /usr/share/kbd/consolefonts/
目錄中,設定方式請參考 setfont(8)。
驗證引導模式[編輯 | 編輯原始碼]
要驗證引導模式,請用下列命令列出 efivars 目錄:
# ls /sys/firmware/efi/efivars
如果命令結果顯示了目錄且沒有報告錯誤,則系統以 UEFI 模式引導。 如果目錄不存在,則系統可能以 BIOS 模式 (或 CSM 模式) 引導。如果系統未以您想要的模式引導啟動,請參考您的主機板說明書。
連接到互聯網[編輯 | 編輯原始碼]
要在 Live 環境中配置網絡連接,請跟隨以下步驟:
- 確保系統已經啟用了網絡介面,用 ip-link(8) 檢查:
# ip link
- 對於無線區域網絡(Wi-Fi)和無線廣域網路(WWAN),請確保網卡未被 rfkill 禁用。
- 配置網絡連接:
- DHCP:對於有線乙太網路、無線區域網絡(WLAN)和無線廣域網路(WWAN)網絡介面來說,動態 IP 地址和 DNS 伺服器分配(由 systemd-networkd 和 systemd-resolved 提供功能)能夠開箱即用。
- 靜態 IP 地址:按照靜態 IP 地址進行操作。
- 用 ping 檢查網絡連接:
# ping archlinux.org
更新系統時間[編輯 | 編輯原始碼]
在 Live 環境中 systemd-timesyncd 預設啟用,建立互聯網連接後,時間將自動同步。
使用 timedatectl(1) 確保系統時間是準確的:
# timedatectl status
建立硬碟分區[編輯 | 編輯原始碼]
系統如果識別到磁碟,就會將其分配為一個塊裝置,如 /dev/sda
、/dev/nvme0n1
或 /dev/mmcblk0
。可以使用 lsblk 或者 fdisk 檢視:
# fdisk -l(此处为小写字母l)
結果中以 rom
、loop
或者 airoot
結尾的裝置可以被忽略。
對於一個選定的裝置,以下分區是必須要有的:
如果需要建立多級儲存例如 LVM、磁碟加密 或 RAID,請在此時完成。
# fdisk /dev/the_disk_to_be_partitioned(要被分区的磁盘)
- 如果想要的磁碟沒有顯示出來, 確保磁碟控制器未處於RAID模式。
- 如果要啟動的磁碟已經有一個EFI系統分區,不要新建 EFI 分區,請使用現有的分區。
- 如果檔案系統支援,交換空間 可以通過 交換檔案 實現。
分區範例[編輯 | 編輯原始碼]
掛載點 | 分區 | 分區類型 | 建議大小 |
---|---|---|---|
/mnt/boot 1
|
/dev/efi_system_partition
|
EFI 系統分區 | 至少 300 MiB。如果打算安裝多個內核,至少 1 GiB |
[SWAP]
|
/dev/swap_partition
|
Linux swap (交換空間) | 大於 512 MiB |
/mnt
|
/dev/root_partition
|
Linux x86-64 根目錄 (/) | 剩餘空間 |
掛載點 | 分區 | 分區類型 | 建議大小 |
---|---|---|---|
[SWAP]
|
/dev/swap_partition
|
Linux swap (交換空間) | 大於 512 MiB |
/mnt
|
/dev/root_partition
|
Linux | 剩餘空間 |
另請參閱 佈局範例。
格式化分區[編輯 | 編輯原始碼]
建立分區後,必須使用合適的檔案系統對每個新建立的分區進行格式化。詳情請參閱檔案系統#建立檔案系統。
例如,要在根分區 /dev/root_partition
上建立一個 Ext4 檔案系統,請執行:
# mkfs.ext4 /dev/root_partition(根分区)
如果建立了交換分區,請使用 mkswap(8) 將其初始化:
# mkswap /dev/swap_partition(交换空间分区)
/dev/*_partition
處。如果你要建立一個 EFI 系統分區,使用 mkfs.fat(8) 將其格式化為 Fat32。
# mkfs.fat -F 32 /dev/efi_system_partition(EFI 系统分区)
掛載分區[編輯 | 編輯原始碼]
將根磁碟卷掛載到 /mnt
,例如:
# mount /dev/root_partition(根分区) /mnt
然後使用 mkdir(1) 建立其他剩餘的掛載點(比如 /mnt/boot
)並按層級順序掛載其相應的磁碟卷。
/mnt
),再掛載引導(boot)分區(到 /mnt/boot
或 /mnt/efi
,如果單獨分出來了的話),最後再掛載其他分區。否則您可能遇到安裝完成後無法啟動系統的問題。參見 en:Talk:Installation guide#Clarify root mount。對於 UEFI 系統,掛載 EFI 系統分區:
# mount --mkdir /dev/efi_system_partition(EFI 系统分区) /mnt/boot
# swapon /dev/swap_partition(交换空间分区)
稍後 genfstab(8) 將自動檢測掛載的檔案系統和交換空間。
安裝[編輯 | 編輯原始碼]
選擇鏡像[編輯 | 編輯原始碼]
檔案 /etc/pacman.d/mirrorlist
定義了軟件包會從哪個鏡像下載。在 LiveCD 啟動的系統上,在連接到互聯網後,reflector 會通過選擇 20 個最新同步的 HTTPS 鏡像並按下載速率對其進行排序來更新鏡像列表。
在列表中越前的鏡像在下載軟件包時有越高的優先權。您或許想檢查一下檔案,看看是否滿意。如果不滿意,可以相應的修改 /etc/pacman.d/mirrorlist
檔案,並將地理位置最近的鏡像源挪到檔案的頭部,同時也應該考慮一些其他標準。
這個檔案接下來還會被 pacstrap 拷貝到新系統裡,所以請確保設定正確。
安裝必需的軟件包[編輯 | 編輯原始碼]
使用 pacstrap(8) 腳本,安裝 base包 軟件包和 Linux 內核以及常規硬件的韌體:
# pacstrap -K /mnt base linux linux-firmware
base包 軟件包並沒有包含 Live 環境中的全部程式。因此要獲得一個功能齊全的基本系統,可能需要安裝其他軟件包。特別要考慮安裝:
- 管理所用檔案系統的用户工具(比如 XFS 和 Btrfs 對應的管理工具);
- 訪問RAID或LVM分區的工具;
- 未包含在 linux-firmware包 中的額外韌體(如用於音效卡的sof-firmware包);
- 聯網所需要的程式 (如 NetworkManager 或 dhcpcd);
- 文字編輯器(如:nano包、vim包 等);
- 訪問 man 和 info 頁面中文件的工具:man-db包,man-pages包 和 texinfo包。
要安裝其他軟件包或軟件包組(比如 base-devel包組),請將它們的名字追加到上文的 pacstrap 命令後 (用空格分隔),或者也可以在 Chroot 進新系統後使用 pacman 手動安裝軟件包或軟件包組。packages.x86_64 中可以看到不同軟件包或軟件包組間的差異。
配置系統[編輯 | 編輯原始碼]
Fstab[編輯 | 編輯原始碼]
用以下命令生成 fstab 檔案 (用 -U
或 -L
選項設定 UUID 或卷標):
# genfstab -U /mnt >> /mnt/etc/fstab
強烈建議在執行完以上命令後,檢查一下生成的 /mnt/etc/fstab
檔案是否正確。
Chroot[編輯 | 編輯原始碼]
chroot 到新安裝的系統:
# arch-chroot /mnt
arch-chroot
而不是直接使用chroot
,注意不要輸錯。時區[編輯 | 編輯原始碼]
要設定時區:
# ln -sf /usr/share/zoneinfo/Region(地区名)/City(城市名) /etc/localtime
# ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
。然後執行 hwclock(8) 以生成 /etc/adjtime
:
# hwclock --systohc
這個命令假定已設定硬件時間為 UTC 時間。詳細資訊請檢視 系統時間#時間標準。
本地化[編輯 | 編輯原始碼]
程式和庫如果需要本地化文字,都依賴區域設定,後者明確規定了地域、貨幣、時區日期的格式、字元排列方式和其他本地化標準。
需在這兩個檔案設定:locale.gen
與 locale.conf
。
編輯 /etc/locale.gen
,然後取消掉 en_US.UTF-8 UTF-8
和其他需要的區域設定前的注釋(#)。
接着執行 locale-gen
以生成 locale 資訊:
# locale-gen
然後建立 locale.conf(5) 檔案,並 編輯設定 LANG 變數,比如:
/etc/locale.conf
LANG=en_US.UTF-8
另外對於中文用户:
- 用户可以設定自己的 locale,詳情請參閱 在用户對談中覆蓋系統區域設定 或 設定當前區域;
- 將系統 locale 設定為
en_US.UTF-8
,系統的 log 就會用英文顯示,這樣更容易判斷和處理問題;- 也可以設定為
en_GB.UTF-8
或en_SG.UTF-8
,附帶以下優點:- 進入桌面環境後以 24 小時制顯示時間;
- LibreOffice 等辦公軟件的紙張尺寸會預設為
A4
而非Letter(US)
; - 可儘量避免不必要且可能造成處理麻煩的英制單位。
- 設定的 LANG 變數需與 locale 設定一致,否則會出現以下錯誤:
Cannot set LC_CTYPE to default locale: No such file or directory
- 也可以設定為
如果需要修改 #控制台鍵盤配置,可編輯 vconsole.conf(5) 使其長期生效,例如:
/etc/vconsole.conf
KEYMAP=de-latin1
網絡配置[編輯 | 編輯原始碼]
/etc/hostname
myhostname(主機名)
請接着完成新安裝的環境的網絡配置,配置過程中可能需要安裝合適的網絡管理軟件。
Initramfs[編輯 | 編輯原始碼]
通常不需要自己建立新的 initramfs,因為在執行 pacstrap 時已經安裝 linux包,這時已經執行過 mkinitcpio 了。
對於 LVM、 系統加密 或 RAID 等分區配置,請修改 mkinitcpio.conf 並用以下命令重新建立一個 Initramfs:
# mkinitcpio -P
Root 密碼[編輯 | 編輯原始碼]
設定 Root 密碼:
# passwd
安裝引導程式[編輯 | 編輯原始碼]
需要安裝 Linux 啟動載入程式,才能在安裝後啟動系統,可以使用的的引導程式已在啟動載入器中列出,請選擇一個安裝並配置它,GRUB 是最常見的選擇。
如果有 Intel 或 AMD 的 CPU,請另外啟用微碼更新。
重新啟動[編輯 | 編輯原始碼]
輸入 exit
或按 Ctrl+d
退出 chroot 環境。
可選用 umount -R /mnt
手動解除安裝被掛載的分區:這有助於發現任何「繁忙」的分區,並通過 fuser(1) 尋找原因。
最後,通過執行 reboot
重新啟動系統,systemd 將自動解除安裝仍然掛載的任何分區。不要忘記移除安裝媒介,然後使用 root 帳戶登入到新系統。
安裝後的工作[編輯 | 編輯原始碼]
建立非特權帳戶、圖形化使用者介面的安裝、聲音管理、觸控板支援等系統管理教學和後期工作參見 建議閱讀。
感興趣的各類程式,請參見 應用程式列表。