安裝指南
本文將指導如何使用官方安裝鏡像啟動的 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-版本-x86_64.iso.sig
另外,在一台已經安裝 Arch Linux 的電腦上可以通過以下方式驗證:
$ pacman-key -v archlinux-版本-x86_64.iso.sig
- 如果安裝映像是從鏡像站點下載,而不是從 archlinux.org 下載的話,其簽名有被偽造的風險。在這種情況下,請您確保用來解碼簽名的公鑰是被另一個可信的金鑰簽署的。
gpg
命令將會輸出公鑰的指紋。 - 另一種驗證簽名的方法是確保公鑰的指紋等於其中一位簽署了 ISO 檔案 Arch Linux 開發者的指紋。請您參閱維基百科取得更多關於公鑰加密的資訊。
準備安裝媒介[編輯 | 編輯原始碼]
Arch Linux 的ISO映像可以被製作成多種類型安裝媒介,如 U 盤、光碟和帶有 PXE 的網絡安裝映像。請按照合適的文章與教學,使用ISO檔案為自己準備安裝媒介。
對於Netboot映像,請按照網絡引導#從USB手指啟動準備用於 UEFI 引導的 USB 快閃記憶體驅動器。
啟動到 live 環境[編輯 | 編輯原始碼]
- 選擇從帶有 Arch 安裝檔案的媒介啟動,通常是需要在電腦啟動加電自檢時快速按下某個熱鍵(比如部分主機板會是F12鍵)。啟動時的畫面也可能會有提示,詳情請參考自己的電腦的說明書或主機板說明書。
- 當啟動載入程式選單出現時,
- 如果你使用了ISO映像,選擇 Arch Linux install medium 並按
Enter
進入安裝環境。 - 如果您使用了 Netboot 映像,請從 Mirror 選單中選擇一個地理位置接近的鏡像,然後選擇 Boot Arch Linux 並按
Enter
。
- 如果你使用了ISO映像,選擇 Arch Linux install medium 並按
- 您將會以 root 身份登入進入一個虛擬控制台,預設的 Shell 是 Zsh。
e
或 Tab
來輸入引導參數。Netboot 映像使用 iPXE,可以在啟動選項選單中指定啟動參數。請參閱 README.bootparams 取得引導參數列表。
- 手動定義啟動參數的一個常見例子是改變系統顯示在超高解像度(HiDPI)熒幕的字型的大小。為使系統在HiDPI熒幕上顯示的字型有更好的可讀性——當Live系統啟動時熒幕還沒有被識別為HiDPI的時候——使用
fbcon=font:TER16x32
會有幫助。參見 HiDPI#Linux 控制台 的詳細解釋。
如果要使用其他控制台(例如在安裝時使用 Lynx 檢視本指南),可以使用 Alt+箭頭
快速鍵切換不同的控制台。要編輯設定檔,可以使用 mcedit(1)、nano 和 vim 等文字編輯軟件。請參閱 packages.x86_64 取得安裝媒介中包含的軟件包列表。
關於 archinstall 的提示[編輯 | 編輯原始碼]
如果您覺得用命令列安裝過於繁瑣,可以試試官方的安裝腳本 archinstall
。詳情可參見 archinstall。
但不建議初學者用 archinstall 走捷徑,因為手動安裝 archlinux 本身就是 archlinux 教學實操的一環,少了這個環節,會讓初學者面對一些基礎問題時束手無策,為自己和社區帶來不必要的麻煩。
# archinstall
配置控制台鍵盤配置和字型[編輯 | 編輯原始碼]
系統啟動後,控制台鍵盤配置預設為 us
(美式鍵盤)。如果您需要列出所有可用的鍵盤配置,可以使用以下命令:
# localectl list-keymaps
如果您想要更改鍵盤配置,可以使用 loadkeys(1)。比如,要添加德語鍵盤配置:
# loadkeys de-latin1
控制台字型位於 /usr/share/kbd/consolefonts/
目錄中,設定方式請參考 setfont(8)。例如,要使用適合 HiDPI 熒幕的最大字型之一,請執行以下命令:
# setfont ter-132b
驗證引導模式[編輯 | 編輯原始碼]
要驗證系統目前的引導模式,請檢查 UEFI 位數:
# cat /sys/firmware/efi/fw_platform_size
如果命令結果為 64
,則系統是以 UEFI 模式引導且使用 64 位 x64 UEFI。如果命令結果為 32
,則系統是以 UEFI 模式引導且使用 32 位 IA32 UEFI,雖然其受支援,但啟動載入程式只能使用 systemd-boot和GRUB。如果檔案不存在,則系統可能是以BIOS模式(或 CSM 模式)引導。如果系統沒有以您想要的模式(UEFI 或 BIOS)引導啟動,請您參考自己的電腦或主機板說明書。
連接到互聯網[編輯 | 編輯原始碼]
要在 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
建立硬碟分區[編輯 | 編輯原始碼]
系統如果識別到電腦的內建硬碟、USB手指或者流動硬碟等類型磁碟,就會將其分配為一個塊裝置,如 /dev/sda
、/dev/nvme0n1
或 /dev/mmcblk0
。可以使用 lsblk 或者 fdisk 檢視:
# fdisk -l(此处为小写字母l)
結果中以 rom
、loop
或者airootfs
結尾的裝置可以被忽略。結果中以 rpbm
、boot0
或者 boot1
結尾的 mmcblk*
裝置也可以被忽略。
對於一個選定的裝置,以下分區是必須要有的:
請使用分區工具(fdisk 、parted、cfdisk 等等)修改分區表。例如:
# fdisk /dev/the_disk_to_be_partitioned(要被分区的磁盘)
- 花時間規劃一個長期的分區方案,以避免將來需要有風險和複雜的轉換或重新分區。
- 如果您想為 LVM、system encryption 或 RAID 建立任何堆疊塊裝置,請立即執行。
- 如果要從中啟動的磁碟 已經有一個EFI分區,請不要建立另一個磁碟,而是使用現有分區。
- Swap 交換空間可以在 Swap#交換檔案 上為支援它的檔案系統設定。
分區方案範例[編輯 | 編輯原始碼]
已安裝系統上的掛載點 | 分區 | 分區類型 | 建議大小 |
---|---|---|---|
/boot 1
|
/dev/efi_system_partition
|
EFI 系統分區 | 1 GiB。 |
[SWAP]
|
/dev/swap_partition
|
Linux swap (交換空間) | 至少 4GiB |
/
|
/dev/root_partition
|
Linux x86-64 根目錄 (/) | 裝置剩餘空間,至少23-32GiB |
已安裝系統上的掛載點 | 分區 | 分區類型 | 建議大小 |
---|---|---|---|
[SWAP]
|
/dev/swap_partition
|
Linux swap (交換空間) | 至少 4GiB |
/
|
/dev/root_partition
|
Linux | 裝置剩餘空間,至少23-32GiB |
另請參閱佈局範例。
格式化分區[編輯 | 編輯原始碼]
建立分區後,必須使用合適的檔案系統對每個新建立的分區進行格式化。詳情請參閱檔案系統#建立檔案系統。
例如,要在根分區 /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/boot
或 /mnt/efi
,如果單獨分出來了的話),最後再掛載其他分區。否則您可能遇到安裝完成後無法啟動系統的問題。參見 en:Talk:Installation guide#Clarify root mount。對於 UEFI 系統,掛載 EFI 系統分區:
# mount --mkdir /dev/efi_system_partition /mnt/boot
# swapon /dev/swap_partition(交换空间分区)
稍後 genfstab(8) 將自動檢測掛載的檔案系統和交換空間。
開始安裝系統[編輯 | 編輯原始碼]
選擇鏡像站[編輯 | 編輯原始碼]
系統的檔案 /etc/pacman.d/mirrorlist
中定義了軟件包會從哪個鏡像站下載。在 LiveCD 啟動的系統上,且在連接到互聯網後,reflector 會通過選擇 20 個最新同步的 HTTPS 鏡像站並按下載速率對其進行排序來更新鏡像列表(由於只考慮最新的20個鏡像站,其結果大多數時候都不怎麼好用)。
在列表中,越靠前的鏡像站在下載軟件包時,就會有越高的優先級。請您檢查 /etc/pacman.d/mirrorlist
檔案,看看列出的鏡像站的順序是否合適。如果不合適,可以手動編輯檔案,將離您所處地理位置最近的鏡像挪到檔案的頭部,同時也應該考慮一些其他的評判標準。
如果 /etc/pacman.d/mirrorlist
檔案中沒有合適的鏡像站,可以手動從 archlinux 官方網站的鏡像站列表下載一份。這需要您所在的網絡能夠正常訪問 archlinux 官方網站。例如,使用 curl(1) 下載位於中國大陸的 HTTPS 鏡像站:
# curl -L 'https://archlinux.org/mirrorlist/?country=CN&protocol=https' -o /etc/pacman.d/mirrorlist
或者,也可以通過安裝 pacman-mirrorlist包 來取得按國家分列的原始鏡像列表。這麼做的缺點是,pacman 仍然會使用當前配置中的鏡像站來下載軟件包數據庫和 pacman-mirrorlist包,這可能會很慢。在挑選了能用的鏡像之後,可以執行
# pacman -Sy pacman-mirrorlist
再將 /etc/pacman.d/mirrorlist.pacnew
複製到 /etc/pacman.d/mirrorlist
並進行編輯。
或者,如果您記得想要使用的鏡像站的 URL,那麼可以手動編輯 /etc/pacman.d/mirrorlist
檔案並手動輸入 URL。
這個檔案接下來還會被 pacstrap 拷貝到新系統裏,所以請您確保設定正確。
安裝必需的軟件包[編輯 | 編輯原始碼]
/etc/pacman.d/mirrorlist
之外的軟件或配置不會從 Live 環境傳遞到安裝的系統中。使用 pacstrap(8) 腳本,安裝 base包 軟件包和 Linux 內核以及常規硬件的韌體:
# pacstrap -K /mnt base linux linux-firmware
這時候可以同時額外安裝電腦的 CPU 微碼包。如果電腦是 Intel 的 CPU ,使用 intel-ucode包,AMD CPU 則使用 amd-ucode包。也可以暫時都不安裝,等到進入系統後再安裝。
base包 軟件包並沒有包含 Live 環境中的全部程式。因此要獲得一個功能齊全的基本系統,可能需要安裝更多軟件包。要安裝其他軟件包或軟件包組(比如 base-devel包組),請將它們的名字追加到下面的 pacstrap 命令後(用空格分隔),或者也可以在 Chroot 進入新系統後使用 pacman 手動安裝。特別要考慮安裝:
- CPU 微碼更新 - amd-ucode包 或 intel-ucode包 - 用於硬件錯誤和安全修復,
- 檔案系統的用户工具(比如 XFS 和 Btrfs 檔案系統對應的管理工具),可用於建立和管理檔案系統以及 fsck;
- 訪問和管理 RAID 或 LVM 分區的工具;
- 未包含在 linux-firmware包 中的額外韌體(如用於內建音頻的sof-firmware包、用於 Marvell 無線的 linux-firmware-marvell包 以及 Broadcom wireless 的韌體包);
- 聯網所需要的程式(例如網絡管理器或獨立 DHCP 客戶端,以及 Wi-Fi 認證軟件和移動寬頻連接所需的 ModemManager);
- 控制台文字編輯器 (如 nano) 以便從控制台編輯設定檔。
- 訪問 man 和 info 頁面中文件的工具:man-db包,man-pages包 和 texinfo包。
pkglist.x86_64.txt 中包含 Live 系統安裝的軟件包列表。
配置系統[編輯 | 編輯原始碼]
生成 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 時間。詳細資訊請檢視系統時間#時間標準。
為了防止時鐘漂移並確保時間準確,請使用 NTP(網絡時間協定,Network Time Protocol)客戶端(例如 systemd-timesyncd)設定時間同步。
區域和本地化設定[編輯 | 編輯原始碼]
程式和庫如果需要本地化文字,都依賴區域設定,後者明確規定了地域、貨幣、時區日期的格式、字元排列方式和其他本地化標準。
需要設定這兩個檔案:locale.gen
與 locale.conf
。
編輯 /etc/locale.gen
,然後取消掉 en_US.UTF-8 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) 使其長期生效,以德語鍵盤(qwertz)為例:
/etc/vconsole.conf
KEYMAP=de-latin1
如果鍵盤為標準美式鍵盤(中國最常見的鍵盤配置),請勿照抄如上設定。
網絡配置[編輯 | 編輯原始碼]
/etc/hostname
yourhostname(主機名)
請接着完成新安裝的環境的網絡配置,配置過程中可能需要安裝合適的網絡管理軟件。
關於 initramfs[編輯 | 編輯原始碼]
通常不需要自己建立新的 initramfs,因為在執行 pacstrap 時已經安裝 linux包,這時已經執行過 mkinitcpio 了。
如果是 LVM、系統加密或 RAID 等分區配置,請修改 mkinitcpio.conf 並用以下命令重新建立一個 Initramfs:
# mkinitcpio -P
設定 root 密碼[編輯 | 編輯原始碼]
使用以下命令設定 root 密碼:
# passwd
安裝引導程式[編輯 | 編輯原始碼]
需要安裝 Linux 啟動載入程式,才能在安裝後啟動系統,可以使用的的引導程式已在啟動載入器中列出,請選擇一個安裝並配置它,GRUB 是最常見的選擇。
重新啟動電腦[編輯 | 編輯原始碼]
輸入 exit
或按 Ctrl+d
退出 chroot 環境。
可選用 umount -R /mnt
手動解除安裝被掛載的分區:這有助於發現任何「繁忙」的分區,並通過 fuser(1) 尋找原因。
最後,通過執行 reboot
重新啟動系統,systemd 將自動解除安裝仍然掛載的任何分區。這時候不要忘記移除安裝媒介,然後使用 root 帳戶登入到新系統。
安裝後的工作[編輯 | 編輯原始碼]
建立非特權帳戶、圖形化使用者介面的安裝、聲音管理、觸控板支援等系統管理教學和後期工作參見建議閱讀。
感興趣的各類程式,請參見應用程式列表。