安裝指南

本頁使用了標題或全文手工轉換
出自 Arch Linux 中文维基
提示:本文或本章節的主題是「安裝 Arch Linux 系統」。關於「為 Arch Linux 安裝軟件包」的內容,請查看安裝軟件包
提示:請善用本文的超鏈接。超鏈接指向的每個單獨的頁面對系統的各個部分有更完善的介紹。

本文將指導如何用官方安裝鏡像啟動的 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 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英語rfkill 禁用。
  • 要連接到網絡:
    • 有線以太網 —— 連接網線。
    • WiFi —— 使用 iwctl 驗證無線網絡。
    • 移動寬帶調製解調器(移動網卡) - 使用 mmcli英語mmcli 實用程序連接到移動網絡。
  • ping 檢查網絡連接:
    # ping archlinux.org
注意: 默認情況下,安裝映像已預配置好並啟用了 systemd-networkdsystemd-resolved英語systemd-resolvediwdModemManager英語ModemManager。但已經安裝好了的系統並非如此。

更新系統時間[編輯 | 編輯原始碼]

在 Live 環境中 systemd-timesyncd 默認啟用,建立互聯網連接後,時間將自動同步。

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

# timedatectl status

建立硬盤分區[編輯 | 編輯原始碼]

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

# fdisk -l(此处为小写字母l)

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

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

如果需要創建多級存儲例如 LVM磁盤加密RAID,請在此時完成。

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

# fdisk /dev/the_disk_to_be_partitioned(要被分区的磁盘)
注意:

分區示例[編輯 | 編輯原始碼]

UEFI 與 GPT
掛載點 分區 分區類型 建議大小
/mnt/boot1 /dev/efi_system_partition EFI 系統分區 至少 300 MiB。如果打算安裝多個內核,至少 1 GiB
[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(EFI 系统分区)

掛載分區[編輯 | 編輯原始碼]

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

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

然後使用 mkdir(1) 創建其他剩餘的掛載點(比如 /mnt/boot)並按層級順序掛載其相應的磁盤卷。

提示:使用 --mkdir 選項運行 mount(8) 來創建指定的掛載點。或者,先使用 mkdir(1) 創建掛載點再掛載。
注意: 掛載分區一定要遵循順序,先掛載根(root)分區(到 /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(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 -K /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
提示:此處使用的是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.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 上中文顯示為方塊。如不經常使用TTY,或是稍後需要安裝桌面環境,則在不使用TTY後可以設置為中文的locale。

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

/etc/vconsole.conf
KEYMAP=de-latin1

網絡配置[編輯 | 編輯原始碼]

創建 hostname 文件:

/etc/hostname
myhostname(主機名)

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

警告: 請按上述網絡配置指引正確配置好網絡後再重新啟動,否則重啟後可能無法連接網絡(不過可以用LiveCD重新進入arch-chroot進行配置)。例如VirtualBox安裝並使用橋接模式時就需要配置DHCP。

Initramfs[編輯 | 編輯原始碼]

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

對於 LVM英語Install Arch Linux on LVM#Adding mkinitcpio hooks系統加密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 帳戶登錄到新系統。

安裝後的工作[編輯 | 編輯原始碼]

創建非特權賬戶、圖形用戶界面的安裝、聲音管理、觸摸板支持等系統管理教程和後期工作參見 建議閱讀

感興趣的各類程序,請參見 應用程序列表

參考鏈接[編輯 | 編輯原始碼]