Skip to content

Arch 系统安装

Posted on:June 19, 2020 at 08:58 PM

本文主要记录安装 Arch 系统时踩到的坑,本次系统安装引导方式为 UEFI + GPT

制作 U 盘启动盘

Arch Linux Downloads 上下载官方镜像

下载完成后使用 UltraISO 软碟通 制作启动盘

制作完成后将会开始系统的安装,以下安装内容主要参考 Arch 官方 Wiki 完成

连接网络

连接无线网络

# 启动 iwd 服务
systemctl start iwd

# 进入 iwctl 交互系统,进入交互系统后配合帮助命令即可很快配置好无线网络
iwctl

# 以下命令均为 iwctl 交互系统下的执行命令

# 列出所有可用网络设备
station list
# 使用 wlan0 无线网卡扫描可用 wifi
station wlan0 scan
# 查看 wlan0 扫描结果
station wlan0 get-networks
# 连接网络(回车后会提示输入密码)
station wlan0 connect jeffrey

连接有线网络

插上网络后,直接执行命令 dhcpcd 即可完成

检查网络

连接上之后可通过 ifconfig 或者 ping 命令确认是否已连接上网络

同步时间

连接上网络之后需要进行网络时间同步

timedatectl set-ntp true

硬盘分区

fdisk 分区工具

# 查看磁盘分区情况
fdisk -l

# 为指定硬盘进行分区配置,执行后会进入 fdisk 交互系统
fdisk /dev/sdx

# fdisk 交互系统命令:查看帮助信息
m
# fdisk 交互系统命令:查看当前磁盘分区情况
p
# fdisk 交互系统命令:修改磁盘为 GPT 类型
g
# fdisk 交互系统命令:创建分区
n
# fdisk 命令:修改分区类型(输入后入不确定分区类型代码,可通过 `l` 查看分区类型对应代码)
t
# fdisk 命令:保存硬盘的分区修改并退出
w
# fdisk 命令:放弃所有修改退出
q

以下创建分区的命令,均为在 fdisk 交互系统中执行的命令

创建启动分区

# 创建分区
n
# 提示分区类型,默认回车即可
<Enter>
# 提示起始扇区,默认他会从磁盘空的最开始,默认回车即可
<Enter>
# 提示末尾扇区,这里可以通过 +-(M/G) 来进行调配,以创建 500M 引导分区为例
+500M
# 创建完成,然后为创建的分区修改磁盘类型为 EFI System 类型
t
# 通过 l 查看 EFI System 类型对应的分区类型标码,输入并回车
1<Enter>

创建缓存分区

# 创建分区
n
# 提示分区类型,默认回车即可
<Enter>
# 提示起始扇区,默认他会从磁盘空的最开始,默认回车即可
<Enter>
# 提示末尾扇区,这里可以通过 +-(M/G) 来进行调配,以创建 8G 缓冲分区为例
+8G
# 创建完成,然后为创建的分区修改磁盘类型为 EFI System 类型
t
# 通过 l 查看 Linux Swap 类型对应的分区类型标码,输入并回车
19<Enter>

创建系统根目录分区

# 创建分区
n
# 提示分区类型,默认回车即可
<Enter>
# 提示起始扇区,默认他会从磁盘空的最开始,默认回车即可
<Enter>
# 提示末尾扇区,这里可以通过 +-(M/G) 来进行调配,以创建 500G 为例(如果需要使用剩下的所有空间直接回车即可)
+500G

# 默认系统分区类型为 Linux filesystem,无需更改
# 所有分区创建完后通过 p 查看分区是否正确,确认无误即可 w 保存退出

格式化分区

格式化引导分区

这里务必确认格式化的文件系统为 fat

因为我在安装时候卡在了引导安装很久,最终发现的原因就是没有以 Fat 文件系统类型格式化引导分区

mkfs.fat -F32 /dev/sdxY

格式化系统根目录分区

mkfs.ext4 /dev/sdxY

格式化缓冲分区

# 格式化
mkswap /dev/sdxY
# 启动缓冲分区
swapon /dev/sdxY

挂载磁盘

# 挂载系统分区
mount /dev/sdxY /mnt

# 在系统分区下创建引导分区目录(用于后面挂载引导分区)
mkdir /mnt/boot

# 挂载引导分区
mount /dev/sdxY /mnt/boot

安装系统

安装之前先确认下 pacman 镜像链接配置,检查 /etc/pacman.d/mirrorlist 文件,确保中国镜像链接置顶在最上面,如果没有看到有 China 的镜像链接,可以使用命令获取所有的镜像链接

# 获取所有 arch 镜像链接
curl -o /etc/pacman.d/mirrorlist https://www.archlinux.org/mirrorlist/all/

# 更新镜像源
pacman -Syy

镜像链接配置好后,即可开始安装系统

# 安装系统
pacstrap /mnt base linux linux-firmware

安装完成后即可开始配置系统

配置 Fstab

生成 fstab 配置文件

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

生成完成后务必检查下文件确认是否正常生成

cat /mnt/etc/fstab

切换到新系统

# 切换到新系统
arch-chroot /mnt

切换后,以下执行的所有命令均会对新系统产生影响

配置时区

# 使用软链接配置地区
ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime

# 生成 adjtime
hwclock --systohc

配置语言包

# 编辑 /etc/locale.gen 文件,将需要的语言包的注释去掉
en_US.UTF-8 UTF-8
zh_CN.UTF-8 UTF-8
zh_TW.UTF-8 UTF-8
zh_HK.UTF-8 UTF-8

# 保存退出后,执行生成命令
locale-gen

# 配置系统语言 /etc/locale.conf
echo LANG=en_US.UTF-8 >> /etc/locale.conf

配置主机名

主机名配置文件 /etc/hostname

jeffrey

主机名查询静态表配置文件 /etc/hosts

127.0.0.1 localhost
::1 localhost
127.0.1.1 jeffrey.localdomain jeffrey

安装必要软件

装好的系统非常的精简,甚至比启动盘中的系统要少很多软件,所以这里务必安装一些常用的软件

# iwd 为无线连接工具,dhcpcd 为有线连接工具
# 这里务必安装好你们需要使用的网络连接工具,避免后面重启进入系统时无法连接上网络
pacman -S vim net-tools iwd dhcpcd

修改 root 密码

# 执行修改密码命令
passwd

安装 grub

# 安装 grub 相关工具
pacman -S grub efibootmgr os-prober ntfs-3g

# 安装 grub
grub-install --target=x86_64-efi --efi-directory=/boot --bootloader-id=GRUB

# 生成 grub 启动配置文件
grub-mkconfig -o /boot/grub/grub.cfg

安装完成后,检查 /boot/grub/grub.cfg 文件是否已正常包含所有系统的启动项

重启机器

在系统引导安装完成后,即可退出系统,重启以正式的进入安装好的系统

# 退出系统(安装完成后,我们通过 arch-chroot /mnt 切换到新系统,执行 exit 只是从新系统退出来)
exit

# 取消系统目录的挂载(exit 出来后,务必确认当前目录是否在 /mnt 下,如果是务必切换到 /mnt 目录以外,以免取消挂载失败)
umount -R /mnt

# 取消挂载成功后,即可重启机器(机器关闭后,务必记得拔出硬盘,以免重复进入到 U盘启动盘系统)
reboot

参考链接