Installation guide (正體中文)

From ArchWiki

Tango-preferences-desktop-locale.png本條目或段落需要進行翻譯Tango-preferences-desktop-locale.png

註記: Filling up with broken links, needs an update. (討論)
翻譯狀態:本文章是 Installation guide 的翻譯版本。最近一次的翻譯時間:2021-11-03。點擊本連結查看英文頁面之後的變更。

本文將指導如何用官方安裝鏡像啟動的 Live 系統安裝 Arch Linux。安裝介質現提供無障礙協助工具,對此 使用無障礙輔助選項安裝 Arch Linux 頁面有詳細描述。關於其它的安裝方法, 請參閱 安裝過程分類下的其他條目

建議在安裝前閱讀 常見問題。對於本文中使用的慣用術語,請參閱 閱讀幫助。請將代碼中斜體的部分按實際情況替換成具體內容。

有關更詳細的說明,請閱讀本指南內相應的 ArchWiki 文章或各類程式的手冊。若需要交互說明,可以使用 IRC 頻道論壇

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 開發者的指紋。請參閱 維琪百科 獲取更多關於公開金鑰加密的資訊。

準備安裝介質

安裝映射可以通過 USB 快閃記憶體盤光碟和帶 PXE 的網路提供給目的機器:請按照合適的文章,使用所選映射為自己準備安裝介質。

啟動到 Live 環境

注意: Arch Linux 安裝鏡像不支持安全啟動(Secure Boot)。要引導安裝媒介,需要 禁用安全啟動。如果需要,可在完成安裝後重新配置 安全啟動
  1. 選擇從帶有 Arch 安裝檔的媒介啟動,通常是要在 電腦開機自檢 時按下某個按鍵,一般在啟動畫面會有提示。具體情況請參考主機板說明書。
  2. 當引導載入程式功能表出現時,選擇 Arch Linux install medium 並按 Enter 進入安裝環境。
    提示: 安裝映射在 UEFI 模式下使用 GRUB 引導,在 BIOS 模式下使用 syslinux 引導。請參閱 README.bootparams 獲取 引導參數 列表。
  3. 您將會以 root 身份登錄進一個虛擬控制台,默認的 Shell 是 Zsh

如果想一邊安裝,一邊使用 Lynx 查看本指南,可以使用 Alt+箭頭 快速鍵切換不同的控制台。要編輯設定檔,可以使用 mcedit(1)nanovim。請參閱 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 環境中配置網路連接,請跟隨以下步驟:

  • 對於無線局域網(Wi-Fi)和無線廣域網路(WWAN),請確保網卡未被 rfkill 禁用。
  • 要連接到網路:
    • 有線乙太網 —— 連接網線。
    • WiFi —— 使用 iwctl 驗證無線網路。
    • 移動寬頻數據機(移動網卡) - 使用 mmcli 實用程式連接到移動網路。
  • 配置網路連接:
    • DHCP:對於有線乙太網、無線局域網(WLAN)和無線廣域網路(WWAN)網路介面來說,動態 IP 位址和 DNS 伺服器分配(由 systemd-networkdsystemd-resolved 提供機能)能夠開箱即用。
    • 靜態 IP 位址:按照靜態 IP 位址進行操作。
  • ping 檢查網路連接:
    # ping archlinux.org
注意: 預設情況下,安裝映射已預配置好並啟用了 systemd-networkdsystemd-resolvediwdModemManager。但已經安裝好了的系統並非如此。

更新系統時間

使用 timedatectl(1) 確保系統時間是準確的:

# timedatectl set-ntp true

可以使用 timedatectl status 檢查服務狀態。

建立硬碟分區

系統如果識別到磁片,就會將其分配為一個塊設備,如 /dev/sda/dev/nvme0n1/dev/mmcblk0。可以使用 lsblk 或者 fdisk 查看:

# fdisk -l

結果中以 romloop 或者 airoot 結尾的設備可以被忽略。

對於一個選定的設備,以下分區是必須要有的:

如果需要創建多級存儲例如 LVMdisk encryptionRAID,請在此時完成。

請使用 fdiskparted 修改分區表。例如:

# fdisk /dev/the_disk_to_be_partitioned(要被分區的磁片)
注意:

分區示例

UEFI 與 GPT[損壞的連結:無效的章節]
掛載點 分區 分區類型 建議大小
/mnt/boot1 /dev/efi_system_partition EFI 系統磁碟分割 至少 300 MiB
[SWAP] /dev/swap_partition Linux swap (交換空間) 大於 512 MiB
/mnt /dev/root_partition Linux x86-64 根目錄 (/) 剩餘空間
  1. 如果使用的引導載入程式能夠從根磁片卷中載入內核和 initramfs 映射,則可以使用其他掛載點(例如 /mnt/efi)。請參閱引導載入程式中的警告部分。
BIOS 與 MBR[損壞的連結:無效的章節]
掛載點 分區 分區類型 建議大小
[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(交換空間分區)
注意: 對於堆疊式塊設備(stacked block devices)請使用恰當的塊設備路徑替換上文中的 /dev/*_partition 處。

如果你要創建一個 EFI 系統磁碟分割,使用 mkfs.fat(8) 將其格式化為 Fat32。

警告: 只有在分區步驟中創建 EFI 系統磁碟分割時才需要格式化。如果這個磁片上已經有一個 EFI 系統磁碟分割了,將它重新格式化會破壞其他已安裝作業系統的引導載入程式。
# mkfs.fat -F 32 /dev/efi_system_partition

掛載分區

將根磁片卷掛載/mnt,例如:

# mount /dev/root_partition(根分區) /mnt

然後使用 mkdir(1) 創建其他剩餘的掛載點(比如 /mnt/efi)並掛載其相應的磁片卷。

提示: 使用 --mkdir 選項運行 mount(8) 來創建指定的掛載點。或者,先使用 mkdir(1) 創建掛載點再掛載。
注意: 掛載分區一定要遵循順序,先掛載根(root)分區(到 /mnt),再掛載引導(boot)分區(到 /mnt/boot/mnt/efi,如果單獨分出來了的話),最後再掛載其他分區。否則您可能遇到安裝完成後無法啟動系統的問題。參見 Talk:Installation guide#Clarify root mount

對於 UEFI 系統,掛載 EFI 系統磁碟分割:

# mount /dev/efi_system_partition /mnt/boot

如果創建了交換空間卷,請使用 swapon(8) 啟用它:

# swapon /dev/swap_partition(交換空間分區)

稍後 genfstab(8) 將自動檢測掛載的檔案系統和交換空間。

安裝

選擇鏡像

文件 /etc/pacman.d/mirrorlist 定義了套裝軟體會從哪個鏡像下載。在 LiveCD 啟動的系統上,在連接到互聯網後,reflector 會通過選擇 20 個最新同步的 HTTPS 鏡像並按下載速率對其進行排序來更新鏡像列表。

在列表中越前的鏡像在下載套裝軟體時有越高的優先權。您或許想檢查一下檔,看看是否滿意。如果不滿意,可以相應的修改 /etc/pacman.d/mirrorlist 檔,並將地理位置最近的鏡像源挪到檔的頭部,同時也應該考慮一些其他標準。

這個檔接下來還會被 pacstrap 拷貝到新系統裡,所以請確保設置正確。

安裝必需的套裝軟體

使用 pacstrap(8) 腳本,安裝 base 套裝軟體和 Linux 內核以及常規硬體的固件:

# pacstrap /mnt base linux linux-firmware
提示:
  • 可以將 linux 替換為內核頁面中介紹的其他內核套裝軟體。
  • 在虛擬機器或容器中安裝時,可以不安裝固件套裝軟體。

base 套裝軟體並沒有包含 Live 環境中的全部程式。因此要獲得一個功能齊全的基本系統,可能需要安裝其他套裝軟體。特別要考慮安裝:

安裝[損壞的連結:無效的章節]其他套裝軟體或套裝軟體組(比如 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

時區

要設置時區

# 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 時間。詳細資訊請查看 System time#Time standard

當地語系化

程式和庫如果需要當地語系化文本,都依賴區域設置,後者明確規定了地域、貨幣、時區日期的格式、字元排列方式和其他當地語系化標準。

需在這兩個檔設置:locale.genlocale.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-8en_SG.UTF-8,附帶以下優點:
      • 進入桌面環境後以 24 小時制顯示時間;
      • LibreOffice 等辦公軟體的紙張尺寸會預設為 A4 而非 Letter(US)
      • 可儘量避免不必要且可能造成處理麻煩的英制單位。
    • 設置的 LANG 變數需與 locale 設置一致,否則會出現以下錯誤:
      • Cannot set LC_CTYPE to default locale: No such file or directory
警告: 不推薦在此設置任何中文 locale,會導致 tty 亂碼。

如果需要修改 #控制台鍵盤配置,可編輯 vconsole.conf(5) 使其長期生效,例如:

/etc/vconsole.conf
KEYMAP=de-latin1

網路配置

創建 hostname 檔:

/etc/hostname
myhostname(主機名稱)

請接著完成新安裝的環境的網路配置,配置過程中可能需要安裝合適的網路管理軟體。

Initramfs

通常不需要自己創建新的 initramfs,因為在執行 pacstrap 時已經安裝 linux,這時已經運行過 mkinitcpio 了。

對於 LVMsystem encryptionRAID 等分區配置,請修改 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 帳戶登錄到新系統。

安裝後的工作

創建非特權帳戶、圖形化使用者介面的安裝、聲音管理、觸控板支援等系統管理教程和後期工作參見 General recommendations (简体中文)

感興趣的各類程式,請參見 List of applications (正體中文)