简介

ArchLinux是一个自由度极高的Linux发行版,你可以根据自己的需求安装需要的包,而不需要的包可以不安装,能够做到系统最小化,最纯净,这篇教程将讲解如何安装archlinux

这次我用Hyper-V虚拟机来运行并演示archlinux的安装,并且这次将安装在UEFI的机器中,传统BIOS的安装操作是不一样的。

获取镜像

首先需要从ArchLinux官网下载镜像,访问链接:https://archlinux.org/download/ ,向下翻,找到China,列表中的地址是镜像地址,可以让你下载更快,根据自己的情况选择一个镜像地址

下载文件列表

可以看到类似这样的文件列表,其中带有bootstrap的是为特定设备定制的镜像,我们不能使用,需要使用iso格式的文件,其中有日期的和没有日期的是一样的,可以自由选择,.sig格式的文件是镜像的签名文件,可以用来检验镜像是否完整,并且可以判断镜像是否经过修改。

校验镜像

一般为了安全,最好在下载完成后校验镜像签名,防止潜在的问题,可以执行下面这个指令,如果你不想校验也可以跳过这一步骤。

gpg --verify archlinux-2023.01.01-x86_64.iso.sig

签名校验正常

输出类似这样的信息就说明校验通过了

签名校验异常

如果输出内容中包含了类似issuer这一行的信息就说明镜像存在问题,建议重新下载

安装

首先从镜像启动,注意archlinux镜像不支持安全启动,需要提前将UEFI中的Security Boot选项关闭。

启动完成

当看到这样的信息时说明启动完成了。

准备工作

键盘布局

首先需要修改键盘布局,archlinux默认的键盘布局是us,如果你的键盘布局不是us,那么可以通过loadkeys指令进行修改

loadkeys de-latin1

判断引导模式

接下来要验证引导模式

ls /sys/firmware/efi/efivars

验证引导模式

如果输出类似这样的内容就是UEFI引导模式,如果提示找不到文件则是BIOS引导模式。

连接互联网

接下来的安装操作需要通过互联网,所以现在需要连接到互联网。

如果是有线以太网,在连接网线后,将会自动连接到网络,如果是无线WiFi,需要使用iwctl进行连接

完成后,使用ping命令检测是否可以连接互联网

ping baidu.com

进行磁盘分区

对于UEFI引导的系统来说,需要一个EFI分区,然后Linux最基本要求一个/分区,为了更好的性能,还需要一个swap分区,如果还想进行更多的分区,可以自行进行调整,下面是推荐的分区表:

分区序号

分区类型

分区挂载点

分区大小

备注

1

EFI

/boot

1G

分区大小可以适当调整,至少大于128M

2

Swap

[SWAP]

4G

建议设置为物理内存的2-4倍

3

Linux

/

~

可以将剩余空间都分配给/

创建分区

首先查看硬盘列表:

fdisk -l

硬盘列表

可以看到/dev/sda是我们需要安装的硬盘,大小为128GiB,实际情况可能会有所不同,如果你添加了nvme 2的硬盘,将会看到类似/dev/nvme0的名称;接下来开始分区:

进入分区编辑工具:

fdisk /dev/sda

将会进入一个新的命令,可以看到开头显示Command,这个时候可以输入分区的指令,首先需要将分区表格式改为GPT,输入g按下回车,出现Created a new disklabel,然后输入n按下回车,Partition number输入1回车,起始扇区默认,结束扇区输入+1G并按回车,这样就创建好了一个1G的EFI分区,输入t修改分区类型,输入1修改为EFI,再次按n,分区序号输入2,起始扇区默认,结束扇区输入+4G并回车,输入t修改分区类型,输入19修改为Swap,再次按n,分区序号3,起始扇区默认,结束扇区默认,这样就分区完成了,输入p检查一下分区表:

完成后分区表

下方出现刚才创建的分区后,就说明创建成功了,最后输入w写入更改到硬盘,分区操作完成。

格式化分区

我们需要将分区格式化成对应的格式才能够正常使用。

首先将EFI分区格式化成FAT32

mkfs.fat -F 32 /dev/sda1

Swap分区初始化成交换分区:

mkswap /dev/sda2

将最后一块分区格式化成ext4

mkfs.ext4 /dev/sda3

挂载分区

sda3挂载到/mnt,作为根分区

mount /dev/sda3 /mnt

sda1挂载到/mnt/boot,作为引导分区

mount --mkdir /dev/sda1 /mnt/boot

启用交换分区

swapon /dev/sda2

开始安装

修改安装源

vim /etc/pacman.d/mirrorlist

插入一个比较快的安装源,推荐使用清华的镜像源,然后删除多余的安装源

Server = https://mirrors.tuna.tsinghua.edu.cn/archlinux/$repo/os/$arch

然后同步镜像内容到本地

pacman -Syy

安装基本包

执行这个指令进行安装,可能过程会比较慢

pacstrap -K /mnt base linux linux-firmware

配置系统

生成fstab

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

进入新系统

arch-chroot /mnt

这个时候你安装的系统已经成功了一大半了,先别激动,把后续操作做完才能用

安装vim

因为新系统中还没有安装vim,如果要修改配置将会很费劲,所以现在需要安装一下

pacman -S vim

设置时区

如果不设置时区,系统的时间可能会有误,会出现所谓的纽约时差

ln -sf /usr/share/zoneinfo/地区/城市 /etc/localtime

以上海为例,执行这个指令

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

设置完成后,需要同步时间

hwclock --systohc

设置语言

编辑语言生成配置文件:

vim /etc/locale.gen

找到en_US.UTF-8 UTF-8,并取消注释,保存并退出,执行生成语言命令:

locale-gen

设置使用的语言,不建议使用中文,因为中文在tty下会出现乱码,中文会变成方块

vim /etc/locale.conf

写上LANG=en_US.UTF-8

修改键盘布局

这和开头提到的键盘布局是一样的,编辑键盘布局配置文件

vim /etc/vconsole.conf

其中写上KEYMAP=us,保存并退出,如果是其他的键盘布局需要根据实际情况写

设置主机名

主机名用于在局域网中显示,同时也会在终端显示,例如刚启动时看到的root@archiso中的archiso就是主机名

vim /etc/hostname

安装网络管理程序

现在你需要安装一个网络管理程序,防止进入系统后没有网络

pacman -S networkmanager

将网络管理程序设为开机启动

systemctl enable NetworkManager

生成initramfs

mkinitcpio -P

设置密码

如果你不设置密码,你将会无法登录进入系统

passwd

安装引导程序

首先需要安装引导程序包

pacman -S grub efibootmgr

安装引导程序到引导区

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

最后一项bootloader-id参数指定引导程序在UEFI中显示的名称,可以自定义

生成引导配置文件

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

现在就大功告成了

退出新系统

首先要离开新系统,可以输入exit命令,也可以使用快捷键Ctrl+D

卸载分区

卸载分区是非常重要的步骤,如果不卸载,等会重启过程中会出现busy的提示,于是要等待很长时间

umount /mnt/boot
umount /mnt
swapoff /dev/sda2

重启系统

此时可以通过reboot命令进行重启,或使用快捷键Ctrl+Alt+Del进行重启

进入系统

进入系统

出现这个内容就是开机成功了,使用刚才设置的密码就可以登录到root用户了,下期教程将讲解如何安装桌面

结尾

这篇教程到这里就结束了,感谢您耐心阅读,如果在操作中遇到任何问题,可以在评论区中留言。