2021-05-12 14:32:11
Dell XPS 13 9350 安裝 Arch Linux
拿到一台 Dell XPS 13 9350,在安裝 Arch Linux 時總體順利,但有一些小問題,在此記一下備忘。
-
製作引導優盤
將下載的 Arch Linux ISO 映象檔案 archlinux-2016.05.01-dual.iso 校驗無誤後,使用
dd
寫到優盤。因我的優盤在系統識別為/dev/sdb
,故其命令為:dd if=archlinux-2016.05.01-dual.iso of=/dev/sdb bs=4M status=progress && sync
-
引導 Arch Linux
在引導之前按
F12
進入 BIOS 設定,關掉 Secure Boot,否則會報找不到 loader.efi 的錯誤。同時,將 SATA Operation 設定為 AHCI,若不然則無法識別 SSD 磁碟。 -
連線 WiFi
當引導完畢進入 shell 後,執行以下命令來連線 WiFi:
wifi-menu
-
對磁碟分割區
鑑於 GPT 分割區表比 MBR 更有優勢,在此選擇 UEFI/GPT 的引導及分割區方案。使用
parted
可以對磁碟進行分割區操作:parted /dev/nvme0n1
先刪掉原分割區,然後根據需要建立新的分割區。我的分割區方案如下,第一個分割區用於 UEFI 引導,第二個作為 / 分割區,最後一個用於 /home。
Device Start End Sectors Size Type /dev/nvme0n1p1 2048 1050623 1048576 512M EFI System /dev/nvme0n1p2 1050624 84934655 83884032 40G Linux filesystem /dev/nvme0n1p3 84934656 500117503 415182848 198G Linux filesystem
建立完後別忘了將第一分割區設定 boot 標誌。
mkpart ESP fat32 1MiB 513MiB set 1 boot on mkpart primary ext4 513MiB 40.5GiB mkpart primary ext4 40.5GiB 100%
-
格式化分割區
分別將三個分割區格式化需要的檔案系統型別:
mkfs.fat -F32 /dev/nvme0n1p1 mkfs.ext4 /dev/nvme0n1p2 mkfs.btrfs /dev/nvme0n1p3
完成後再掛載:
mount /dev/nvme0n1p2 /mnt mkdir -p /mnt/{boot,home} mount /dev/nvme0n1p1 /mnt/boot mount /dev/nvme0n1p3 /mnt/home
-
安裝基礎包
使用
pacstrap
指令碼來安裝基礎系統:pacstrap -i /mnt base base-devel
-
生成 fstab
使用
genfstab
來生成 fstab 檔案:genfstab -U /mnt >> /mnt/etc/fstab
-
chroot
為了進行後續設定,需要 chroot:
arch-chroot /mnt /bin/bash
-
設定區域和時區
從
/etc/locale.gen
選取需要的區域,去掉開頭的註釋即可,然後使用locale-gen
來生成。同時,建立/etc/locale.conf
檔案,並將LANG
設為跟所選區域一致。使用
tzselect
來設定時區。 -
設定 hostname
將
/etc/hostname
的內容設定為喜歡的主機名。 -
安裝載入程式
這裡選擇使用
systemd-boot
來完成 UEFI 引導:bootctl install
同時,建立
/boot/loader/entries/arch.conf
引導條目:title Arch Linux linux /vmlinuz-linux initrd /initramfs-linux.img options root=PARTUUID=06d1a377-976d-47db-a907-9bf03bb8519b rootfstype=ext4 rw pcie_aspm=force i915.enable_rc6=7
其中 PARTUUID 可通過
blkid
獲得。另外,
/boot/loader/loader.conf
包含內容為:timeout 3 default arch
-
設定 root 密碼
使用
passwd
來設定 root 密碼。 -
重新啟動
執行
exit
退出 chroot 環境,同時解除安裝分割區並重新啟動系統:umount -R /mnt reboot
-
安裝其它包及設定環境
為了避免手動操作,我利用 Ansible 將安裝各種常用軟體及設定環境的過程自動化,只需執行:
ansible-playbook site.yml
可通過 GitHub 獲取 archstrap。
本文永久更新連結地址:http://www.linuxidc.com/Linux/2016-05/131059.htm
相關文章