本文用于记录在win10笔记本安装Archlinux双系统的过程

磁盘分区方案

预留给Archlinu系统240G存储空间,具体的分区方案如下

目录空间
/120G
/boot1G
/var16G
/home103G

因为后期会使用交换文件代替交换分区,所以没有分配swap分区

注意不要将/usr目录单独作为一个分区,因为Archlinux的/sbin是链接到/usr里面的目录的,把/usr单独分区挂载就会导致开机找不到/sbin的错误(开机时/usr还未被挂载)

安装前的准备

  • 关闭safe boot
  • 关闭win10快速启动
  • 连接到互联网
  • 制作Archlinux启动U盘

安装

1. 更新系统时间

pacman -Syy    //同步

timedatectl set-ntp true

timedatectl status    //检查

2. 硬盘分区和格式化

分区前看不到之前划分的空间,使用cfdisk命令选择磁盘后可以看到

查看磁盘

lsblk    //或者fdisk -l

选择磁盘进行分区

cfdisk /dev/磁盘名

格式化各个分区

mkfs.fat -F32 efi系统分区
mkfs.ext4 /dev/其他分区

// 如果有swap分区,则用如下命令初始化
mkswap /dev/交换空间分区

挂载分区

//挂载
mount /dev/根分区磁盘 /mnt
mount /dev/efi分区磁盘 /mnt/boot
……

// 如果有swap分区,则用如下命令启用
swapon /dev/swap_partition(交换空间分区)

3. 更换镜像

Arch Linux - Pacman Mirrorlist Generator

cp /etc/pacman.d/mirrorlist /etc/pacman.d/mirrorlist.bak    //备份

// 选择在最近 12 小时内同步的,并且是位于中国的镜像,然后根据下载速度进行排序,最后将结果覆写到 /etc/pacman.d/mirrorlist 文件内
reflector --country China --age 12 --sort rate --save /etc/pacman.d/mirrorlist

4. 安装必须的软件包

可将vim替换为其他文本编辑器

pacstrap /mnt base linux linux-firmware vim

5. 生成fstab文件

genfstab -U /mnt >> /mnt/etc/fstab

cat /mnt/etc/fstab //检查是否正确

6. 切换到新系统

arch-chroot /mnt

7. 设置时区

ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime

hwclock --systohc

8. 本地化

修改/etc/locale.gen文件,取消en_US.UTF-8和zh_CN.UTF-8前的注释,保存并退出

vim /etc/locale.gen

生成locale信息

locale-gen

新建locale.conf文件,并输入LANG=en_US.UTF-8

vim  /etc/locale.conf

LANG=en_US.UTF-8

9. 网络配置

在/etc/hostname文件中输入自定义主机名

vim /etc/hostname

在/etc/hosts文件中输入以下内容

vim /etc/hosts

# 输入内容
127.0.0.1    localhost
::1        localhost
127.0.0.1    主机名.localdomain    主机名

10. 设置root用户密码

passwd

11. 安装引导程序

  • intel-ucode:intel微码
  • ntfs-3g:支持NTFS读写(用于读写win10系统盘)
pacman -S grub efibootmgr intel-ucode os-prober ntfs-3g

挂载win10系统盘,以便os-prober查找到win10系统

mount /dev/win10系统盘 /mnt    //挂载win10系统盘

启用os-prober

vim /etc/default/grub

// 添加如下内容
GRUB_DISABLE_OS_PROBER=false

grub-mkconfig 会自动发现微码更新并更新 GRUB 配置信息。安装微码软件包后,重新生成GRUB 配置以激活更新

grub-install --target=x86_64-efi --efi-directory=/boot

grub-mkconfig -o /boot/grub/grub.cfg

12. 安装其他工具

Persistent block device naming (简体中文) - ArchWiki (archlinux.org))

在此仅安装了网络工具

pacman -S dhcpcd

13. 重启

exit

umount -R /mnt

reboot

14. 联网

systemctl enable dhcpcd
systemctl start dhcpcd