下载
到清华源中下载ArchLinux镜像:Index of /archlinux/iso/ | 清华大学开源软件镜像站 | Tsinghua Open Source Mirror
VMware中创建虚拟机
VMware中创建虚拟机,「自定义」>「硬件兼容性选最高的版本」>「稍后安装系统」>「Linux,版本选其它Linux6.x内核64位」>「设置虚拟机名称」>「分配CPU核心数」>「分配内存」>「默认使用NAT」>「默认:LSI Logic」>「磁盘类型默认即可」>「创建新虚拟磁盘」>「磁盘大小128G,将虚拟机存储为多个文件」>「磁盘文件名默认即可」>「完成」
「编辑虚拟机设置」>「处理器」>「虚拟化引擎」>「虚拟化 Intel VT-x/EPT或 AMD-V/RVI(V)」
「显示」>「加速3D图形」
「CD/DVD」>「使用ISO映像文件」>「指定自己ISO镜像文件路径」
设置系统启动模式为UEFI
修改虚拟机目录下的ArchLinux_1.vmx
文件,添加一行,内容为:firmware="efi"
然后开机,选择第一行,等代码跑完即可
安装
-
进入UEFI引导界面后,选择第一个选项
Arch Linux install medium (x86_64,UEFI)
-
禁用
reflector
Terminal window systemctl stop reflector -
确认是否处于UEFI引导模式下
Terminal window ls /sys/firmware/efi/efivars- 如果输出一堆文件名,说明处于UEFI引导模式下,可以进行下一步操作
- 如果报错,提示文件不存在或者文件为空,则需要关机重新设置系统启动模式为UEFI
-
连接网络,我这里用的VMware虚拟机,默认有网
- 通过curl指令测试是否有网:
curl www.baidu.com
,如果正常输出网页源码说明网络正常
- 通过curl指令测试是否有网:
-
更新系统时钟
bash timedatectl set-ntp true# 查看时钟状态信息timedatectl status# 设置时区为上海timedatectl set-timezone Asia/Shanghai -
更改软件源
vim /etc/pacman.d/mirrorlist将以下内容添加到文件中:
Terminal window Server = https://mirrors.ustc.edu.cn/archlinux/\$repo/os/\$archServer = https://mirrors.tuna.tsinghua.edu.cn/archlinux/\$repo/os/\$archServer = https://repo.huaweicloud.com/archlinux/\$repo/os/\$archServer = http://mirror.lzu.edu.cn/archlinux/\$repo/os/\$arch -
分区和格盘
查看当前磁盘状态:
Terminal window lsblk我这里磁盘为sda,接下来使用
cfdisk
来对磁盘进行操作Terminal window cfdisk /dev/sda- 选择
gpt
- 对空闲空间选择New选项,回车后左下角会提示分配多少,我这里8G运存,所以Swap空间设置为8×0.6=4.8G,新分的空间名为
sda1
- 然后再对空闲空间选择New选项,分出1G,作为efi引导分区,名字是
sda2
- 第三次对空闲空间选择New选项,将剩余的全部分出来作为Linux系统区,名字是
sda3
- 分完后选择
sda1
,使用type功能,回车,选择Linux swap
- 选择
sda2
,使用type功能,回车,选择EFI System
- 选择
sda3
,使用type功能,回车,选择Linux filesystem
- 最后选择
write
将操作写入磁盘,输入yes
即可,然后屏幕最下面会提示The partition table has been altered.
说明修改成功,可以选择Quit
退出了
- 选择
-
查看分区状态:
fdisk -i
,此时应该可以看到新的分区 -
格式化efi分区,这里的
sda2
是我的分区盘,如果名字不一样可以改成自己实际分区盘的名字Terminal window mkfs.fat -F32 /dev/sda2格式化swap分区
Terminal window mkswap /dev/sda1格式化系统分区
Terminal window mkfs.btrfs -L arch /dev/sda3-L
:自定义一个名字作为分区的LABLE
-
操作btrfs分区
将btrfs分区挂载到
/mnt
下Terminal window mount -t btrfs -o compress=zstd /dev/sda3 /mnt检查挂载情况:
df -h
挂载后继续创建btrfs子卷:
Terminal window btrfs subvolume create /mnt/@btrfs subvolume create /mnt/@home检查子卷状态:
Terminal window btrfs subvolume list -p /mnt如果显示出来了相关ID信息等等,即子卷创建成功,然后就可以卸载
/mnt
,挂载子卷了,卸载命令如下:Terminal window umount /mnt -
挂载分区
挂载命令 #挂载根目录,请使用Linux文件系统盘(我的是sda3)mount -t btrfs -o subvol=/@,compress=zstd /dev/sda3 /mnt#挂载/home用户家目录,请使用Linux文件系统盘(我的是sda3)mkdir /mnt/homemount -t btrfs -o subvol=/@home,compress=zstd /dev/sda3 /mnt/home#挂载/boot启动引导区,请使用efi盘(我的是sda2)mkdir -p /mnt/bootmount /dev/sda2 /mnt/boot#挂载/swap交换分区,请使用swap盘(我的是sda1)swapon /dev/sda1检查分区挂载情况:
df -h
检查swap挂载情况:
free
-
安装系统
Terminal window pacstrap /mnt base base-devel linux linux-firmware btrfs-progs此步骤等待时间稍长,可以先去做点别的事
安装工具
Terminal window pacstrap /mnt networkmanager vim sudo zsh zsh-completions -
使用
genfstab
命令来根据挂载情况自动生成并且写入fstab
文件Terminal window genfstab -U /mnt > /mnt/etc/fastab运行之后如果没有返回任何信息,说明执行成功,生成后可以查看
fastab
信息Terminal window cat /mnt/etc/fastab -
切换工作区域至安装好的Arch系统环境中
Terminal window arch-chroot /mnt -
设置主机名
Terminal window vim /etc/hostname -
设置hosts文件
Terminal window vim /etc/hosts向文件中添加以下几行:
hosts 127.0.0.1 localhost::1 localhost127.0.0.1 arch.localdomain arch这里
arch.localdomain arch
中的arch
为主机名,需要按实际情况修改 -
改时区(可以直接通过
timedatectl set-timezone Asia/Shanghai
来修改)也可以通过以下命令修改:
Terminal window ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime -
设置硬件时间
Terminal window hwclock --systohc -
设置地区偏好
Terminal window vim /etc/locale.gen去掉
en_US.UTF-8 UTF-8
和zh_CN.UTF-8 UTF-8
前面的#
,保存并退出运行
locale-gen
,如果输出以下内容说明运行成功了:输出内容 Generating locales...en_US.UTF-8... donezh CN.UTF-8... doneGeneration complete.接着运行:
Terminal window echo 'LANG=en_US.UTF-8' > /etc/locale.conf -
设置密码(如果这里忘了设置,后面还得用iso镜像重设,挺麻烦的,为什么我知道呢,因为我就忘了🤣👉🤡)
Terminal window passwd root -
安装微码,根据实际情况选择
安装微码指令 #Intel微码pacman -S intel-ucode#AMD微码pacman -S amd-ucode -
安装引导程序
Terminal window pacman -S grub efibootmgr os-prober将GRUB安装到EFI分区
Terminal window grub-install --target=x86_64-efi --efi-directory=/boot --bootloader-id=ARCH如果出现
No error reported
说明安装成功,接下来编辑/etc/default/grub
vim /etc/default/grub修改
GRUB_CMDLINE_LINUX_DEFAUL
T一行,将末尾的quiet
去掉,添加nowatchdog
,并且修改loglevel=5
,该行修改后为:grub GRUB_CMDLINE_LINUX_DEFAULT="loglevel=5 nowatchdog"保存后运行以下指令:
Terminal window grub-mkconfig -o /boot/grub/grub.cfg -
退出安装环境:
exit
-
卸载
/mnt
分区Terminal window umount -R /mnt -
关机,然后在虚拟机中把ISO镜像取消掉即可
获取网络
启动networkmanager
服务
systemctl start NetworkManagersystemctl enable NetworkManager
通过curl www.baidu.com
测试有没有网
安装fastfetch
pacman -S fastfetch
运行
fastfetch