Arch Linux安装

安装前准备工作

下载镜像文件

验证文件真实性

$ b2sum -c b2sums.txt
archlinux-2024.04.01-x86_64.iso: OK
archlinux-x86_64.iso: OK
b2sum: archlinux-bootstrap-2024.04.01-x86_64.tar.gz: No such file or directory
archlinux-bootstrap-2024.04.01-x86_64.tar.gz: FAILED open or read
b2sum: archlinux-bootstrap-x86_64.tar.gz: No such file or directory
archlinux-bootstrap-x86_64.tar.gz: FAILED open or read
b2sum: WARNING: 2 listed files could not be read

这里第一行和第二行都显示OK,表示验证通过,后边两个文件显示FAILED open or read是因为没有下载。
我电脑上之前安装过git,使用git的命令行运行以上命令进行验证。

创建虚拟机

我是用的是windows自带的Hyper-V创建的虚拟机,如何创建虚拟机可以参考怎么创建Hyper-V虚拟机。我的虚拟机配置如下:

image.png
按照教程创建好虚拟机之后,还要进行光驱、配置启动顺序、安全模式配置。
首先进行光驱配置,打开虚拟机的配置项,选中SCSI控制器,添加光驱:
添加光驱
光驱添加后,设置光驱加载ArchLinux安装镜像(上边下载的ISO文件)并点击应用
添加镜像

然后选择固件,也就是设置启动顺序,将光驱启动移动到最上边,点击应

image.png

最后设置安全,这里一定不要勾选安全引导方式,不然进入不了引导程序(虚拟机安装Arch Linux无法进入安装引导程序),点击应用确定

不要勾选安全模式

启动虚拟机

接着上边的步骤,点击启动按钮启动虚拟机:

启动

选择安装模式

正常情况下应该进入引导系统,如以下界面,这里选择默认的第一种方式(可以通过上下箭头选择其它菜单项),然后点击Enter (或者等待5秒)进入安装程序:
image.png

检查引导模式

通过上一步,进入到具有root权限虚拟控制台,下边检查引导模式:

cat /sys/firmware/efi/fw_platform_size

输出如下:
image.png

检查是否连接网络

ping archlinux.org

正常情况下是可以看到如下,按下Ctrl+c可以结束ping:

image.png

对硬盘进行分区

可以参考我的教程:fdisk分区工具学习。下图是我的硬盘分区结果:

分区结果
可以看出来,我的分区类型是GPT,将硬盘分为3个区(见红色框中)。

格式化分区

首先格式化EFI分区,这个在物理机上操作时需要慎重,双系统安装可以跳过这一步骤,安装完成后,将ArchLinux添加到之前的efi引导程序菜单,否则格式化后可能无法引导到之前的系统。

mkfs.fat -F 32 /dev/sda1

然后格式化swap分区,该分区主要作为内存扩展,当内存不够是,可以作为内存使用。

mkswap /dev/sda2

最后格式化文件系统分区,之后作为系统的根目录。

mkfs.ext4 /dev/sda3

最后的硬盘分区格式化(初始化)的结果如下图:
硬盘初始化

挂载系统分区

按照下边命令顺序挂载文件系统。

# 将/dev/sda3挂载位根目录/
mount /dev/sda3 /mnt
# 将引导分区挂在到/boot目录
mount --mkdir /dev/sda1 /mnt/boot
# 初始化交换分区
swapon /dev/sda2

开始安装系统

首先安装基础软件包base:

pacstrap -K /mnt base 

运行结果如下,安装基础包成功:
安装base软件包

然后安装固件软件包linux-firmware(相当于驱动):

# 虚拟机安装可以跳过
pacstrap -K /mnt linux-firmware

运行结果如下,安装固件成功:
安装固件linux-firmware

最后安装ArchLinux核心包linux:

pacstrap -K /mnt linux 

运行结果如下,安装linux核心成功:
安装核心linux

初始化配置系统:

生成fstab文件,记得加上-U(使用UUID)或者-L(使用labels标签)参数(如果报错,可以通过/mnt/etc/fstab文件查找错误信息):

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

root用户切换到新系统,在切换之后/目录就是之前的/mnt目录了:

arch-chroot /mnt

设置时区和硬件时钟:

# 设置时区
ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
# 设置硬件时钟
hwclock --systohc

进行本地化配置,主要是指语言和编码,这里使用英语和UTF-8。首先要生成语言文件:

# 将en_US.UTF-8 UTF-8写入文件/etc/locale.gen最后一行:
echo "en_US.UTF-8 UTF-8" >> /etc/locale.gen
# 生成英语UTF-8的语言文件
locale-gen

运行结果如下则成功:
生成语言文件成功

然后,设置本地语言为英语UTF-8:

# 将LANG=en_US.UTF-8写入文件/etc/locale.conf
echo "LANG=en_US.UTF-8" > /etc/locale.conf

设置主机名称:

echo 'archlinux' >> /etc/hostname 

设置密码,输入passwd后需要输入两次密码,两次输入一致才会设置成功:

passwd
设置密码

选择兼容linux的引导系统,我们选择GRUB引导系统。 首先安装grub和efibootmgr软件包,中间需要输入一次y同意安装:

pacman -S grub efibootmgr

安装grub和efibootmgr软件包成功

然后正式安装grub引导程序到efi分区/boot

# efi引导分区为/boot
# grub相关功能模块安装到/boot/x86_64-efi
# grub引导程序名称为GRUB
grub-install --target=x86_64-efi --efi-directory=/boot --bootloader-id=GRUB
安装grub到引导分区成功

最后完成grub配置:

# 生成配置文件到/boot/grub/grub.cfg
grub-mkconfig -o /boot/grub/grub.cfg
生成grub配置文件成功

到这里就完成ArchLinux系统的初始化配置了。

进行重启

在重启reboot之前弹出光驱中的安装盘。

弹出光驱中的系统安装盘

# 生成配置文件到/boot/grub/grub.cfg
# 退出安装的新系统
exit
# 卸载硬盘
umount -R /mnt
# 重启
reboot

选择第一行进入新系统:
image.png

输入用户名密码登录:


登录新系统成功

最后终于完成ArchuLinux安装了,虽然过程很坎坷,但是最终还是安装成功了,之后会给遇到的问题进行整理发布。如果安装遇到问题,欢迎大家留言一起探讨。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容