本文介紹如何在可移動磁碟(如 U 盤)上進行常規的 Arch 安裝,結果是與正常安裝到硬碟一樣的持久化安裝。與此相對的是製作 LiveUSB(U 盤安裝介質)。
安裝
取決於您的作業系統,可通過多種方式在可移動磁碟上安裝 Arch:
- 若您有另一台 Linux 計算機(不必是 Arch),您可按照從現有 Linux 發行版安裝 Arch Linux 安裝。
- Arch Linux CD/USB 可用於將 Arch 安裝到可移動磁碟,只需從 CD/USB 啟動並按照安裝指南進行安裝。如果從 Live USB 啟動,則無法安裝到同一個可移動磁碟。
- 若您運行 Windows 或 macOS,則可以下載 VirtualBox,安裝 VirtualBox 擴展,將您的可移動磁碟連接到 Linux 虛擬機(已安裝好或從 live ISO 啟動),然後按照安裝指南安裝到連接的磁碟。
- 可以在您啟動安裝環境的 USB 設備上安裝 Arch Linux,但是您不能在安裝過程中重啟。若如此做,您可能需要再次製作安裝介質。
安裝時的微調
- 在創建初始 RAM disk 前,修改
/etc/mkinitcpio.conf
,將block
和keyboard
鉤子移動到autodetect
鉤子之前。這樣才能在分別需要早期用戶空間中不同模塊的系統上啟動。 - 如果您希望能在其他作業系統中使用安裝完的磁碟,可以創建使用適當文件系統的分區(如 NTFS 或 exFAT)。注意,數據分區可能需要是設備的第一個分區,因為 Windows 會假定可移動磁碟僅有一個分區,並將自動掛載 EFI 系統分區。記得安裝 dosfstools包 和 ntfs-3g包。網上的一些工具可能可以翻轉可移動磁碟的可移動媒體位(RMB)。這將使得作業系統把它看作外置硬碟,這樣您就可以隨意使用您選擇的分區方式。
- 如果您的 Arch 所在的可移動磁碟需要有兩家製造商的微碼,請安裝 amd-ucode包 和 intel-ucode包。見 Microcode#加載微碼。
- 確保在生成的
/etc/fstab
文件內刪除了主機上的文件系統的相關條目。啟動時,若相關條目的文件系統不存在,Arch 會等待該文件系統較長時間。
引導加載程序配置
/
,因此不必在 /etc/fstab
中為其建立條目。GRUB
按照 GRUB#BIOS 系統和 GRUB#UEFI 系統中的說明為 BIOS 和 UEFI 啟動安裝 GRUB:
# grub-install --target=i386-pc /dev/sdX --recheck # grub-install --target=x86_64-efi --efi-directory=esp --removable --recheck
/boot/grub/device.map
已經存在。每當您添加/刪除計算機中的磁碟時都應使用這一選項[1]。Syslinux
使用UUID:
LABEL Arch MENU LABEL Arch Linux LINUX ../vmlinuz-linux APPEND root=UUID=3a9f8929-627b-4667-9db4-388c4eaaf9fa rw INITRD ../initramfs-linux.img
rEFInd
menuentry "Arch Linux" { icon /EFI/BOOT/icons/os_arch.png volume 5028fa50-0079-4c40-b240-abfaf28693ea loader /path/to/vmlinux_image initrd /path/to/initramfs options "root=PARTUUID=5028fa50-0079-4c40-b240-abfaf28693ea rw" }
請參閱 rEFInd#手動啟動項 以獲取更多有關創建手動啟動項的信息。
安裝 rEFInd 時,您還必須使用 --usedefault /dev/sdXY
參數。
提示和技巧
在多個機器上使用您的設備
顯卡驅動
- 對於這種安裝,不建議使用專有的顯卡驅動。
- 在決定安裝 xf86-video-intel包 和 xf86-video-nouveau包 前請先閱讀 Intel 圖形處理器#安裝 和 Nouveau#安裝 中分別關於此二者的注釋。
為支持最常見的 GPU,請安裝 xf86-video-vesa包、xf86-video-ati包、xf86-video-amdgpu包 和 xf86-video-fbdev包。
音效卡驅動
為支持最常見的音效卡,請安裝 sof-firmware包 和 alsa-firmware包。請參閱 ALSA 以獲取更多關於配置音頻設備的信息。
塊設備持久化命名
建議在 fstab 和啟動管理器配置中使用 UUID。詳情請參閱塊設備持久化命名。
或者,您可以自行創建 udev 規則為您的磁碟創建符號連結,然後在 fstab 和啟動管理器配置中使用。詳情請參閱 udev#設置靜態設備名。
內核參數
您可能由於各種各樣的原因希望禁用 KMS,例如在使用 Intel 顯卡時遇到空白屏幕、顯示器「無信號」錯誤等。要禁用 KMS,添加 nomodeset
內核參數。詳情請參閱內核參數。
nomodeset
,那麼您可能需要在使用 Nvidia 顯卡的設備上手動調整解析度。詳情請參閱 Xrandr。兼容性
使用 fallback 鏡像可獲得最大的兼容性。
最小化磁碟訪問
當安裝到總寫入量有限的設備(如 U 盤、SD 卡等)上時,減少寫入量可以延長設備的壽命。這也可以減小寫入慢對性能的影響。
- 強烈建議在選擇文件系統前閱讀性能優化#減少磁碟讀寫。概括起來,對於基於快閃記憶體的磁碟(如 U 盤、SD 卡等),無日誌的 ext4 應該就可以了,它可通過
mkfs.ext4 -O "^has_journal" /dev/sdXX
創建。使用無日誌的文件系統的明顯的缺點就是在 ungraceful dismount 時會丟失數據。不過要意識到快閃記憶體的總寫入量是有限的,而日誌會占用其中的一部分。由於同樣的原因,最好也不要想著 swap 分區了。注意這並不影響安裝到可移動硬碟。 - 您可能想將 systemd 日誌配置為在內存中存儲日誌。為此,可以創建一個配置文件:
/etc/systemd/journald.conf.d/usbstick.conf
[Journal] Storage=volatile RuntimeMaxUse=30M
- 要在網頁瀏覽器和其他不寫入關鍵數據的應用程式中禁用
fsync
和相關的系統調用,可以使用來自 libeatmydata包 的eatmydata
命令:
$ eatmydata firefox
UI 響應速度
高 I/O 負載可能會導致 UI 凍結,特別是在慢磁碟上。更改 I/O 調度器,或者切換到默認使用不同調度器的內核,可以極大地改進 UI 的響應速度。例如 BFQ 可以改進 UI 的響應速度(它在 linux-zen包 和 linux-ckAUR 上默認啟用)。
詳見性能優化#調度算法。
另請參閱
- Arch Linux USB[失效連結 2022-09-18 ⓘ] - c-magyar 關於創建持久化 Live USB 安裝的精彩內容。
- archuseriso - 用於構建 Arch Linux Live ISO 鏡像的配置文件。具有持久存儲和加密功能的可啟動 USB 驅動器創建工具。