如果你不想折腾,直接上Manjaro,如果你喜欢折腾、有时间并且有一定的能力,Arch欢迎你

这篇教程来帮助那些想用Arch但是又害怕命令行的同学(Arch Wiki写得很详细,但其实对小白来说还是有难度)

因为截图很重要这里我按照YouTube上一个可靠教程来贴截图讲解

有条件的也可以直接去看 YouTube原视频

我的CPU是Intel i5-8250U(x86_64)

启动方式是UEFI而非BIOS(重要)

显卡是UHD 620+NVIDIA MX150

安装Arch的硬盘是Samsang 970 EVO(NVME)

硬盘的类型最好确认一下,如果是NVMe的,先进BIOS修改 从硬盘的启动方式 为AHCI,否则你进入安装界面不会看到你的NVMe硬盘

为确保一次成功,以下步骤(包括输入的命令)如果你不是很懂不要颠倒顺序,此外请保证安装时有顺畅的网络连接

因为EFI分区用的是windows的 而这个区还只有100MB 所以建议借助一些分区工具比如傲梅分区进入PE把这个区扩大 具体操作可以直接百度

0.下载ISO

Arch Linux - Downloadswww.archlinux.org/download/

建议去下面找中国的镜像下

1.硬盘分区

分区使用Windows的磁盘管理就行,没必要用DiskGenius

这里我使用的分区方案是 只额外分一个区来挂载 / 目录 EFI利用Windows的EFI分区

不使用swap分区 而是swap文件

img这里分了250G

2.制作启动U盘

制作工具建议使用 Rufus,写入方式为DD而非ISO,选项那选择GPT而非默认的MBR

3.BIOS的设置

保持上一步制作好的启动U盘一直插着

开机出现品牌logo时狂按对应键进入BIOS设置比如我的Dell Inspiron就是F12

进去之后

1.禁用safeboot 2.如果你的硬盘是NVMe的,把 从硬盘的启动方式 改成 AHCI

3.修改启动顺序,把U盘的启动顺序放到最上面(此处小心,不要delete任何东西)

完成之后退出重启

重启之后就是选择,回车进入arch iso

4.检查网络

输入下面指令检查:

1
ip a

img

这里用的是有线连接,如果你用的是无线连接需要按照下面的步骤连接到无线网:

输入

1
iwctl

进入iwd模式,输入

1
device list

查看你的网卡名字,这里假设是wlan0,输入

1
station wlan0 scan

检查扫描网络,输入

1
station wlan0 get-networks

查看网络名字,假设名字叫BUPT-portal,输入

1
station wlan0 connect BUPT-portal

接着输入密码(如果有密码的话),输入

1
exit

退出iwd模式

连接成功之后,检查可以连接到pacman源

1
pacman -Syyy

img如图说明一切正常

重新设置mirrorlist(可选,建议):

使用reflector来获取速度最快的6个镜像,并将地址保存至/etc/pacman.d/mirrorlist

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

5.硬盘

1.检查硬盘

1
lsblk

img

这里没有看到之前划分好的空间,不要慌,那是因为之前只是划了空间,并没有建立分区

2.建立分区

因为之前划好的空间在nvme0n1上,所以执行

1
cfdisk /dev/nvme0n1

这里以你个人情况而定 sda sdb 或是其他的

img这里我们就能看到最后有250G的Free Space

img

选择New 回车

img

这里就输入250G 回车

img

选择Write 回车 输入 yes 回车

写入完成 选择Quit 回车退出

检查分区情况

1
lsblk

img建立分区之后就可以看到分好的250G区

3.分区格式化

将刚刚分好的区格式化为ext4格式,这里认准分区号是nvme0n1p5

1
mkfs.ext4 /dev/nvme0n1p5

img

4.挂载分区

先挂载/分区,同样,这里分区号也是nvme0n1p5

1
mount /dev/nvme0n1p5 /mnt

这里利用Windows的EFI分区,检查EFI分区号

1
lsblk

img这里可以看到是nvme0n1p2

建立boot文件夹

1
mkdir /mnt/boot

挂载EFI分区

1
mount /dev/nvme0n1p2 /mnt/boot

img

6.安装基本系统

执行

1
pacstrap /mnt base linux linux-firmware nano

等待安装完毕

(如果你不想用默认的内核,也可以使用linux-lts, linux-zen, linux-hardened,具体介绍请看Wiki

7.生成fstab文件

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

检查生成的fstab文件

1
cat /mnt/etc/fstab

img

如图说明一切正确

8.正式配置新系统

1.切换到装好的系统

1
arch-chroot /mnt

2.建立swapfile(建议,没有swap空间无法休眠)

在 ext4 上使用 swapfile 的用户请注意,升级到 5.7.x 内核后可能出现诸如「kernel: swapon: swapfile has holes」这样的报错而无法启用 swapfile 。使用 dd 命令创建 swapfile (而非 fallocate) 可能可以解决问题,也可以回退 5.6 系列内核等待上游修复。
Arch Linux 错误跟踪:https://bugs.archlinux.org/task/66921
内核错误跟踪:https://bugzilla.kernel.org/show_bug.cgi?id=207585

如果之前安装的内核是linux-lts:

1
fallocate -l 2GB /swapfile

注意:命令中是 小写字母l 而非 数字1 也非 字母i的大写

如果之前安装的内核不是linux-lts,这里创建swapfile需要使用dd命令:

1
dd if=/dev/zero of=/swapfile bs=2048 count=1048576 status=progress

这里分了2G作为swapfile

改权限

1
chmod 600 /swapfile

建立swap空间

1
mkswap /swapfile

激活swap空间

1
swapon /swapfile

修改/etc/fstab文件

1
nano /etc/fstab

到文件末尾输入

1
/swapfile none swap defaults 0 0

img

保存退出

3.设置时区

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

1
timedatectl set-timezone Asia/Shanghai

同步硬件时钟

1
hwclock --systohc

4.设置locale

1
nano /etc/locale.gen

Ctrl+W 输入 #en_US 回车 找到UTF-8那一行 删掉前面的#(取消注释)

Ctrl+W 输入 #zh_CN 回车 找到UTF-8那一行 删掉前面的#(取消注释)

保存退出

生成locale

1
locale-gen

创建并写入/etc/locale.conf文件

1
nano /etc/locale.conf 

填入内容,注意这里只能填这个

1
LANG=en_US.UTF-8

5.创建并写入hostname

1
nano /etc/hostname

这里我写入的是 arch 作为hostname,你也可以输别的

img

保存退出

6.修改hosts

1
nano /etc/hosts

写入内容如图(中间的空白用tab而非空格),arch替换为你之前在hostname里写入的内容,其他都按照图里面的写(注意最后一行的ip是127.0.1.1)

img

保存退出

建议上述编辑的内容都用cat输出检查一下

7.为root用户创建密码

1
passwd

然后输入并确认密码(linux终端的密码没有回显,输完直接回车就好)

8.创建启动器

安装基本的包,这里使用grub为启动器

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

如果你不知道这些包的作用,请务必确保输入的指令与上面的一致

检查完毕回车,需要选择直接回车就好,等待安装结束

如果你是intel的cpu,需要安装intel的微码文件

1
pacman -S intel-ucode

如果是amd

1
pacman -S amd-ucode

2021.06.16更新:

Grub 2.06 更新 os-prober 用户需要手动干预

grub 2.06 更新已经进入官方源,本次更新有以下两个需要注意的变化:
\1. 如果您正在使用 os-prober 生成其他系统的引导项,grub 2.06 不再自动启用 os-prober,您需要添加 GRUB_DISABLE_OS_PROBER=false 至 /etc/default/grub 配置文件中并且重新运行 grub-mkconfig
\2. grub 2.06 现在会自动添加 固件设置菜单 引导项目,无需手动创建

鉴于此需要手动启用os-prober来确保Windows能被正确识别:

输入

1
nano /etc/default/grub

在里面找一条空行输入

1
GRUB_DISABLE_OS_PROBER=false

之后Ctrl-X 加Y回车保存退出

img

完成之后输入

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

确保输入指令完全正确回车

img

生成grub.cfg

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

完成之后如图

img

9.退出新系统并取消挂载

1
exit

img

1
umount -a

img

重启

1
reboot

启动时请拔出u盘

10.进入装好的Arch系统并激活网络

进去之后 先输入 root 回车 输入密码 回车

启动网络服务

1
systemctl enable --now NetworkManager

设置WiFi

1
nmtui

img

回车

img

选择你要连接到的WiFi 输入密码 回车 然后退出

11.新建用户并授权

1
useradd -m -G wheel mir

wheel后面是你的用户名,这里输入的是mir

为用户创建密码

1
passwd mir

输入并确认密码

授权

1
EDITOR=nano visudo

Ctrl+W 输入 # %wheel 回车 找到这行 删除前面的 #(取消注释)

img

保存退出

12.安装显卡驱动

安装AMD集显驱动

1
pacman -S xf86-video-amdgpu

安装NVIDIA独显驱动

1
pacman -S nvidia nvidia-utils

13.安装Display Server

这里用的是开源世界最为流行的xorg

1
pacman -S xorg

出现选择直接回车即可

14.安装Display Manager

这里需要按你要安装的桌面环境而定,这里没有列出的可以自己去ArchWiki查

Gnome:

1
pacman -S gdm

KDE:

1
pacman -S sddm

Xfce || DDE:

1
pacman -S lightdm lightdm-gtk-greeter

设置开机自动启动,以gdm为例:

1
systemctl enable gdm

如果是别的请将这里的gdm替换为你安装的那个dm

15.安装Desktop Environment

Gnome:

1
pacman -S gnome

KDE:

1
pacman -S plasma kde-applications packagekit-qt5

Xfce:

1
pacman -S xfce4 xfce4-goodies

DDE:

1
pacman -S deepin deepin-extra

同样 需要选择时直接回车

16.添加archlinuxcn源

1
nano /etc/pacman.conf

在最后加上下面两行(我这里使用了北外的镜像站)

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

同时取消对multilib源的注释

img

保存退出之后同步并安装archlinuxcn-keyring

1
pacman -Syu && pacman -S archlinuxcn-keyring

最后不要忘记安装中文的字体,如果这一步不装进去图形界面之后还是要装:

1
pacman -S ttf-sarasa-gothic noto-fonts-cjk

我这里安装的是更纱黑体和noto cjk,包比较大,耐心等待安装完毕。

最后重启

1
reboot

在grub界面选择archlinux回车

当你看到登录界面时,恭喜你,一个相对完整的Arch安装完毕,Enjoy it!


进一步配置可以看看专栏前面那篇Manjaro-KDE的配置,装点常用的软件,大体上就能用了,然后根据自己的情况配配显卡驱动,就差不多能玩游戏了

关于N卡的启用与切换,建议使用optimus-manager(其他方案我都试过不好使

1
sudo pacman -S optimus-manager

没有DE只有一个Bspwm 这是我的dotfiles:

Dracula&Nord Dotfilesgithub.com/MiraculousMoon/bspwm-dotfiles.git

此外还有i3wm的:

https://github.com/ayamir/i3-dotfilesgithub.com/ayamir/i3-dotfiles

dwm的:

https://github.com/ayamir/dwm-dotfilesgithub.com/ayamir/dwm-dotfiles

spectrwm,xmonad,sway的:

https://github.com/ayamir/nord-and-lightgithub.com/ayamir/nord-and-light

最后多说一句,如果你装完了,就要意识到自己拥有了Arch WiKi(世界上最好的WiKi之一),这也是Arch用户令人羡慕的一点。遇到问题先找Arch WiKi,再去找别的资料