Arch安装踩坑记

本文最后更新于:2023年5月26日 晚上

Arch安装踩坑记

哇,网上的教程真是让我大开眼界啊,有好多错误,坑一个比一个多,我也一个接一个踩。
花了两天,整整两天啊(x_x)
最后终于整理出了一个完美无瑕至少在我的电脑上可以使用的教程。
注意,本教程仅适用于使用UEFI启动、插网线的机器

安装前必读!!!

!!安装前必读!!
如果你不懂”/dev/sda1”代表着什么,我劝你不要读这篇文章,更不要照着这篇文章在实体机上安装Arch。
下面有许多命令后面带括号(),这意味着这条命令有需要根据自己硬件情况修改的地方,不能直接往上用
如果你照着这篇文章在实体机上安装Arch操作失误导致数据丢失,与我无关。
别怪我没提醒你哦!

1.被跳过的步骤

下载镜像、制作启动盘省略

2.live环境中的操作

2.1同步时间(需联网)

输入

1
timedatectl set-ntp true

2.2修改软件源

输入
找到”China”,并排在最前面

1
vim /etc/pacman.d/mirrorlist

这里不得不说一下vim的简单使用方法
命令模式下:
按下”i”键: 进入插入模式,可以输入文字(退出按 ESC)
按下”v”键: 键盘上下键,选中多行
按下”d”键: 剪切
按下”p”键: 粘贴
保存则需要在命令模式下按”:”(冒号),输入”wq”(w代表写入,q代表退出),按下”Enter”(回车)
就是依次按下”:wq 回车”

2.3磁盘分区

多硬盘情况

查看硬盘情况
输入

1
fdisk -l

理论上会输出

1
2
3
4
5
6
7
8
9
10
11
Disk /dev/sda: 60 GIB, 64424509440 bytes, 125829120 sectors
Disk model: 乱七八糟的
Units: 还是乱七八糟的
Sector size -------------------------
I/O size -------------------------

Disk /dev/sdb: 120 GIB, -------------- bytes, -------------- sectors
Disk model: 乱七八糟的
Units: 还是乱七八糟的
Sector size -------------------------
I/O size -------------------------

这样的东西,选择一个你将要安装Arch的硬盘,比如说 “/dev/sda”
然后输入

1
cfdisk /dev/sda (这里是刚才选的要安装Arch的硬盘)

出现了一个图形化(?)界面
img
这里按一下”Enter”键
img
在这个界面下当上面选中”>>> Free space”时,下面选中”[ New ]”,并按下回车。
下面显示

1
Partition size: 60G

将”60G”改为”512M”,按下回车,就创建完了一个分区
再这样创建三个分区,四个分区的大小分配大概是这样的

分区 分配大小 作用 介绍
分区一 512M 用作启动分区 刚刚创建完,是启动分区
分区二 物理内存的 1~2 倍 用作交换分区 内存不足时把这个分区当内存用
分区三 自己看着来 用作根目录 所有的软件包都会装在这里
分区四 自己看着来 用作/home目录 所有的个人文件都在这里

怎么退出?

先别着急,现在退出只会让你前功尽弃
img
如图,把下面的光标对准”[ write ]”,并按下回车保存分区表,再输入”yes”并回车
最后把下面的光标对准”[ Quit ]”,并按下回车退出cfdisk。

好的,你可以”空降”到格式化

单硬盘情况

输入

1
cfdisk /dev/sda (这里是刚才选的要安装Arch的硬盘)

出现了一个图形化(?)界面
img
这里按一下”Enter”键
img
在这个界面下当上面选中”>>> Free space”时,下面选中”[ New ]”,并按下回车。
下面显示

1
Partition size: 60G

将”60G”改为”512M”,按下回车,就创建完了一个分区
再这样创建三个分区,四个分区的大小分配大概是这样的

分区 分配大小 作用 介绍
分区一 512M 用作启动分区 刚刚创建完,是启动分区
分区二 物理内存的 1~2 倍 用作交换分区 内存不足时把这个分区当内存用
分区三 自己看着来 用作根目录 所有的软件包都会装在这里
分区四 自己看着来 用作/home目录 所有的个人文件都在这里

怎么退出?

先别着急,现在退出只会让你前功尽弃
img
如图,把下面的光标对准”[ write ]”,并按下回车保存分区表,再输入”yes”并回车
最后把下面的光标对准”[ Quit ]”,并按下回车退出cfdisk。

2.4格式化

输入

1
fdisk -l (这是小写"L"

会输出
img

对应着你自己的表格,
分别用

1
mkfs.fat -F32 /dev/sda1 (sda1对应着启动分区)

格式化启动分区;

1
2
mkswap /dev/sda2 (sda2对应着交换分区)
swapon /dev/sda2 (sda2对应着交换分区)

格式化并启用交换分区;

1
2
mkfs.ext4 /dev/sda3 (sda3对应着用作根目录的分区)
mkfs.ext4 /dev/sda4 (sda4对应着用作/home目录的分区)

分别格式化用作根目录、用作/home目录的分区。

2.5挂载目录

1
2
3
4
5
mount /dev/sda3 /mnt (sda3对应着用作根目录的分区)
mkdir /mnt/home
mkdir /mnt/boot
mount /dev/sda4 /mnt/home (sda4对应着用作/home目录的分区)
mount /dev/sda1 /mnt/boot (sda1对应着启动分区)

不要变顺序!

2.6安装系统和基础软件

啊啊啊,相信看到这里的你一定很有耐心呀!

系统包括
base base-devel linux linux-firmware
基础软件包括
dhcpcd iwd vim sudo bash-completion nano net-tools openssh man git wget zsh fish

输入

1
pacstrap /mnt base base-devel linux linux-firmware dhcpcd iwd vim sudo bash-completion nano net-tools openssh man git wget zsh fish

够它跑一会了,喝口水,上趟厕所吧。(欸,我还真上了厕所(。・ω・。))

2.7生成fstab

输入

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

3.装好系统后的操作

3.1进入系统

输入

1
arch-chroot /mnt

切换到刚安装的系统内

3.2配置网络

输入

1
vim /etc/hostname

取一个好听的hostname,填在里面

编辑hosts
输入

1
vim /etc/hosts

添加

1
2
3
127.0.0.1   localhost
::1 localhost
127.0.1.1 ghyuav (刚刚取完的一个好听的hostname,我取的是"ghyuav"

vim用法上面已经提到过了,还不明白可以上网搜或者用”nano”(反正我刚才留了一手,安装基础软件时安装了”nano”)

3.3本地化

3.3.1设置时区、硬件时间
1
2
ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
hwclock --systohc
3.3.2设置语言
1
vim /etc/locale.gen

分别把
#en_US.UTF-8.UTF-8
#zh_CN.UTF-8.UTF-8
前面的”#”去掉
然后保存并退出

使语言环境生效

1
2
locale-gen
echo 'LANG=en_US.UTF-8' > /etc/locale.conf

千万不要耍小聪明,既然有en_US,那我换成zh-CN不就有中文了吗?
那么做的结果只会使中文变成小方块

3.4设置镜像源

输入

1
vim /etc/pacman.conf

然后删掉[multilib]这几行前的”#”,在末尾添加以下两行:

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

保存并退出

3.5设置用户

3.5.1设置管理员密码
1
passwd root

输入两遍密码,不会有显示

3.5.2添加新用户
1
useradd -m -G wheel -s /bin/bash ghyuav ("ghyuav"可改成其他名字)

设置密码

1
passwd ghyuav ("ghyuav"是刚才添加的用户名)
3.5.3编辑权限

编辑ghyuav用户的权限

1
EDITOR=vim visudo

找到”# %wheel ALL=(ALL:ALL)ALL”
删除前面的”# “

3.6安装cpu解码软件和GRUB

1
pacman -Sy intel-ucode grub efibootmgr os-prober (这里是intel的cpu,如果是amd的,请把"intel-ucode"替换为"amd-ucode"

安装grub

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

生成grub

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

3.7安装一堆软件、字体,设置开机启动

vmware可以装

1
pacman -S gtkmm gtk2 gtkmm3 open-vm-tools xf86-input-vmmouse xf86-video-vmware

安装一堆软件、字体,设置开机启动

1
2
3
4
5
6
pacman -S plasma konsole dolphin (安装桌面、终端模拟器、文件管理器)
pacman -S ntfs-3g (可以读取ntfs格式磁盘 实体机上推荐安装)
pacman -S os-prober (查找已安装的操作系统 实体机上推荐安装)
pacman -S adobe-source-han-serif-cn-fonts adobe-source-han-sans-cn-fonts wqy-zenhei wqy-microhei noto-fonts-cjk noto-fonts-emoji noto-fonts-extra ttf-dejavu (安装各种字体)
pacman -S firefox ark gwenview packagekit-qt5 packagekit appstream-qt appstream man neofetch net-tools networkmanager openssh git wget(安装常用软件)
systemctl enable NetworkManager sddm vmtoolsd sshd (启动系统服务)

仅适用于VMware虚拟机的操作

1
sudo vim /etc/mkinitcpio.conf

添加以下内容

1
MODULES=(vsock vmw_vsock_vmci_transport vmw_balloon vmw_vmci vmwgfx)

保存并退出

生效配置文件

1
mkinitcpio -p linux

输入

1
exit

回到live环境,
卸载本机的/mnt目录

1
umount -R /mnt

最后reboot重启

大功告成!!

大功告成
最终效果放出来:
img

我去,不知不觉写这么多,花了两天半,踩各种坑,虚拟机安一遍,实体机安一遍,可算是整完了

待完善……


Arch安装踩坑记
https://g-haoyu.top/2023/01/18/Arch安装踩坑记/
作者
Haoyu
发布于
2023年1月18日
更新于
2023年5月26日
许可协议