Windows 11 和 Arch Linux 双系统

还不会安装 Linux?从安装 Arch Linux 开始吧!Windows 11 和 Arch Linux 双系统,启动!

下载系统镜像

前往官方下载地址,我使用的 HTTP 下载:

HTTP下载.png

磁盘管理

使用 Windows 的磁盘管理从 D 盘分 170GB 空闲空间出来,如下图。

170GB.png

制作启动盘

空 U 盘插入电脑,如下图,使用 Rufus 制作,注意分区类型为 GPT 而非默认的 MBR,写入方式为推荐的 ISO。

制作.png

以ISO镜像模式写入.png

禁用快速启动和休眠[1]

禁用快速启动和休眠.png

时间表示标准统一[2]

Windows 默认使用的时间表示标准为 localtime,Arch Linux 默认为 UTC。在此修改 Windows 的为 UTC 以保持统一,Windows 11 中执行如下命令。

1
reg add "HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\TimeZoneInformation" /v RealTimeIsUniversal /d 1 /t REG_DWORD /f

重新启动 Windows 11 生效。

BIOS 设置确认

启动盘插入电脑,重启电脑,同时不停按 F2 进入 BIOS,确认以下几点:

  • 引导模式为 UEFI;
  • 禁用 Secure Boot;
  • 如果硬盘是 NVMe 的,硬盘的启动方式需为 AHCI。

从 U 盘启动

F10 保存退出 BIOS 后不停按 F12 进入启动项选择界面,键盘上下键选择带“EFI”“USB”字样的,一般是第二个,等待。

下面就可以正式开始安装 Arch Linux:

正式开始安装.png

验证引导模式

要验证引导模式,执行下列命令列出 efivars 目录。

1
ls /sys/firmware/efi/efivars

如果命令结果显示了目录且没有报告错误,则系统以 UEFI 模式引导。

连接无线网

进入交互式提示符(interactive prompt):

1
iwctl

列出所有 WiFi 设备:

1
device list

我的网卡名字为 wlan0,扫描:

1
station wlan0 scan

列出所有可用的网络:

1
station wlan0 get-networks

连接到一个网络:

1
station wlan0 connect <Network name>

输入密码后回车,没有提示的话就是连接成功了,可执行下列命令查看连接状态。

1
station wlan0 show

退出交互式提示符:

1
exit

更新系统时间

使用 timedatectl 确保系统时间是准确的:

1
timedatectl set-ntp true

建立硬盘分区

查看分区情况:

1
lsblk

我的硬盘名字为 nvme0n1,使用 cfdisk 进行管理:

1
cfdisk /dev/nvme0n1

找到以上分出来的 170GB 的空闲空间,选择 New,首先是给根分区分配 32GB,再选择剩下的 138GB,如下图。

剩下的138GB.png

选择 New,给交换分区分配 3GB,选择 Type,设定分区类型为 Linux swap,如下图。

Linux_swap.png

选择剩下的 135GB,选择 New,给家分区分配剩下的空间,选择 Type,设定分区类型为 Linux home,如下图。

Linux_home.png

选择 Write,输入 yes 回车:

Write.png

选择 Quit 退出。

格式化分区

再次查看分区情况,发现多了三个分区:

1
lsblk

将根分区格式化为 ext4 格式:

1
mkfs.ext4 /dev/nvme0n1p5

将交换分区格式化:

1
mkswap /dev/nvme0n1p6

将家分区格式化为 ext4 格式:

1
mkfs.ext4 /dev/nvme0n1p7

挂载分区

将根分区所对应硬盘卷挂载到/mnt:

1
mount /dev/nvme0n1p5 /mnt

激活交换分区:

1
swapon /dev/nvme0n1p6

建立目录 home:

1
mkdir /mnt/home

将家分区所对应硬盘卷挂载到目录 home:

1
mount /dev/nvme0n1p7 /mnt/home

查看硬盘,找到 EFI System 分区所对应硬盘卷为 nvme0n1p1。:

1
fdisk -l

建立目录 boot:

1
mkdir /mnt/boot

将 EFI System 分区所对应硬盘卷挂载目录 boot:

1
mount /dev/nvme0n1p1 /mnt/boot

配置镜像

使用 reflector 来获取速度最快的 6 个镜像,并将地址保存至目录 mirrorlist:

1
reflector -c China -a 6 --sort rate --save /etc/pacman.d/mirrorlist

更新应用软件库(源),检查下载速度:

1
pacman -Syy

安装必需软件包

使用 pacstrap 脚本,安装 base/base-devel 软件包、 Linux 内核、常规硬件的固件、Vim 和 AMD CPU 驱动:

1
pacstrap /mnt base base-devel linux linux-firmware vim amd-ucode

配置系统

fstab

用以下命令生成文件 fstab(用-U设置 UUID):

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

检查生成的文件 fstab:

1
cat /mnt/etc/fstab

切换到装好的系统:

1
arch-chroot /mnt

时区

设置时区

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

同步硬件时钟:

1
hwclock --systohc

本地化

编辑文件 locale.gen:

1
vim /etc/locale.gen

取消掉 en_US.UTF-8 UTF-8 和 zh_CN.UTF-8 UTF-8 前的注释(#)。

生成 locale 信息:

1
locale-gen

创建 locale.conf(5) 文件,设定 LANG 变量

1
vim /etc/locale.conf
1
LANG=en_US.UTF-8

网络

创建文件 hostname,自定义设定主机名:

1
vim /etc/hostname
1
PC-LAPTOP

修改文件 hosts:

1
vim /etc/hosts

增加行如下(中间的空白用 tab 而非空格,PC-LAPTOP 替换为你自己的主机名)。

1
2
3
4
5
6
# Static table lookup for hostnames.
# See hosts(5) for details.
+
+127.0.0.1 localhost
+::1 localhost
+127.0.1.1 PC-LAPTOP.localdomain PC-LAPTOP

Root 密码

1
passwd

输入并确认密码(密码没有回显,输完直接回车即可)。

安装基本软件包

安装基本软件包,使用 GRUB 为启动器:

1
pacman -S grub efibootmgr networkmanager network-manager-applet dialog wireless_tools wpa_supplicant os-prober mtools dosfstools ntfs-3g linux-headers reflector git sudo

编辑文件 grub:

1
vim /etc/default/grub

取消掉 GRUB_DISABLE_OS_PROBER=false 前的注释(#)。

再执行以下命令:

1
grub-install --target=x86_64-efi --efi-directory=/boot --bootloader-id=Arch

生成 grub.cfg:

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

grub-mkconfig.png

重启

退出新系统:

1
exit

取消挂载:

1
umount -R /mnt

重启:

1
reboot

登入新系统

连接无线网

启动网络服务:

1
systemctl enable --now NetworkManager

设置 WiFi:

1
nmtui

创建个人用户并授权

创建用户 ql,创建家目录,加入 wheel 组,指定 shell:

1
useradd -m -G wheel -s /bin/bash ql

为用户 ql 设定密码:

1
passwd ql

编辑文件 sudoers:

1
EDITOR=vim visudo

取消掉%wheel ALL=(ALL:ALL) NOPASSWD: ALL前的注释(#)。

安装显卡驱动

我的电脑是 AMD 集显:

1
pacman -S xf86-video-amdgpu

安装 Display Server

我装的是开源世界最为流行的 xorg:

1
pacman -S xorg

出现选择直接回车即可。

安装 Display Manager

我装的是 KDE 的:

1
pacman -S sddm

设置开机自动启动:

1
systemctl enable sddm

安装 Desktop Environment

安装 KDE:

1
pacman -S plasma kde-applications packagekit-qt5

一路默认即可。

重启

1
reboot

以个人用户登录。

安装字体

英文字体:

1
sudo pacman -S ttf-dejavu ttf-droid ttf-hack ttf-font-awesome otf-font-awesome ttf-lato ttf-liberation ttf-linux-libertine ttf-opensans ttf-roboto ttf-ubuntu-font-family

中文字体:

1
sudo pacman -S ttf-hannom noto-fonts noto-fonts-extra noto-fonts-emoji noto-fonts-cjk adobe-source-code-pro-fonts adobe-source-sans-fonts adobe-source-serif-fonts adobe-source-han-sans-cn-fonts adobe-source-han-sans-hk-fonts adobe-source-han-sans-tw-fonts adobe-source-han-serif-cn-fonts wqy-zenhei wqy-microhei

系统语言

按 Win 键,搜索运行 language,添加简体中文(在最下方),调整其优先级到最上方,Apply(应用):

系统语言.png

注销重新登录以生效。

添加 archlinuxcn 源

编辑文件 pacman.conf:

1
sudo vim /etc/pacman.conf

文件末尾空一行追加以下内容(使用的北外的镜像站)。

1
2
[archlinuxcn]
Server = https://mirrors.bfsu.edu.cn/archlinuxcn/$arch

同步并安装 archlinuxcn-keyring:

1
sudo pacman -Sy && sudo pacman -S archlinuxcn-keyring

安装 yay

yay 是一个受欢迎的 AUR 助手,执行以下命令安装。

1
sudo pacman -S yay

安装输入法[3]

安装 fcitx、fcitx-im 和 fcitx-configtool:

1
sudo pacman -S fcitx fcitx-im fcitx-configtool

安装 fcitx-sogoupinyin

1
yay -S fcitx-sogoupinyin

一路回车即可。

创建文件 .pam_environment:

1
vim ~/.pam_environment

设置 IM 环境变量:

1
2
3
GTK_IM_MODULE DEFAULT=fcitx
QT_IM_MODULE DEFAULT=fcitx
XMODIFIERS DEFAULT=\@im=fcitx

注销重新登录,按 Win 键,搜索“Fcitx 配置”,回车运行,将位于第一个的“键盘 - 英语(美国)”删除,输入法即可正常使用了。

安装 Timeshift

当系统出现故障的时候,可以通过备份的快照来恢复系统。

1
sudo pacman -S timeshift

按 Win 键或者 Alt+Space,搜索运行 Timeshift。

快照类型一般选择 RSYNC:

选择快照类型.png

选择快照位置:

选择快照位置.png

选择快照等级:

选择快照等级.png

默认是不备份用户目录,默认即可。

设置完成:

设置完成.png

启用并启动 cron

1
sudo systemctl enable --now cronie

安装 fish

1
sudo pacman -S fish

设定为默认 shell:

1
chsh -s /usr/bin/fish

注销重新登录以生效。

禁用休眠[4]

编辑文件 sleep.conf:

1
vim /etc/systemd/sleep.conf
1
2
3
4
5
[Sleep]
#AllowSuspend=yes
-#AllowHibernation=yes
-#AllowSuspendThenHibernate=yes
-#AllowHybridSleep=yes
1
2
3
4
5
[Sleep]
#AllowSuspend=yes
+AllowHibernation=no
+AllowSuspendThenHibernate=no
+AllowHybridSleep=no

安装火狐浏览器

1
sudo pacman -S firefox

安装中文语言包:

1
sudo pacman -S firefox-i18n-zh-cn

美化启动项选择界面

每次重启电脑,如下图,默认的启动项选择界面看起来比较简朴,我们可以换一个主题。

默认的启动项选择界面.png

前往主题仓库,下载 Arch 主题文件:

arch.png

安装 Grub Customizer:

1
sudo pacman -S grub-customizer

按 Win 键或者 Alt+Space,搜索运行 Grub Customizer。

点击外观设置,设定分辨率为 1920x1080:

自定义分辨率.png

点击主题后面的加号,选择以上下载好的主题文件,点击左上角文件,保存:

保存.png

重启,至此,Windows 11 和 Arch Linux 双系统安装园满完成。

参考


  1. Dual boot with Windows ↩︎

  2. UTC in Microsoft Windows ↩︎

  3. Fcitx ↩︎

  4. Disabling suspend ↩︎