在虚拟机上安装 Arch Linux(二)

继续记录 Arch Linux 在 VirtualBox 中的安装过程,包含 Live 环境配置、网络设置、镜像源更换等步骤。


安装系统

接下来启动虚拟机,在一片滚屏输出之后就是 Live 环境的界面。 live环境初始界面

什么是 Live 环境?通俗地讲,是 Arch 系统的安装工具,负责规划整个系统的安装和启动,它并不是真正的 Arch 系统。

下面将开始安装系统。学习 Arch Linux 不用担心犯错,重要的不是不犯错,而是犯错后知道怎么解决,解决错误是学习的另一种有效方式(尤其在虚拟机上更不必担心,即使错误非常严重,只需要重装一遍虚拟机系统即可)。


禁用 reflector 服务

简明指南

2020 年,Arch Linux 安装镜像中加入了 reflector 服务,它会自己更新 mirrorlist(软件包管理器 pacman 的软件源)。在特定情况下,它会误删某些有用的源信息。这里进入安装环境后的第一件事就是将其禁用。也许它是一个好用的工具,但是很明显,因为地理上造成的特殊网络环境,这项服务并不适合启用。

通过以下命令将该服务禁用:

systemctl stop reflector.service

命令解释:

  • systemctl:使用系统相关命令
  • stop:关闭指定的服务
  • reflector.service:reflector 服务的服务名

通过以下命令查看该服务是否被禁用:

systemctl status reflector.service
  • status:查看服务状态

如果被禁用,会看到输出有类似 Active: inactive (dead) 的内容。 禁止reflector服务


终端提示符变化

终端提示符变成了 3 root@archiso ~ #,前面多出来一个数字 3。

DeepSeek 解释:

完全正常的。开头的 3 是“作业编号(job number)”。这通常是因为你之前运行的某个命令(比如设置分辨率的 echo 或 cat 命令)没有完全退出,被系统放到了后台挂起。这个 3 就是在提醒你:“你有一个编号为3的作业在后台哦”。对你的安装完全无影响,可以继续。很多有经验的用户也经常带着后台作业继续工作。放心地继续你的安装吧!


常用命令技巧

简明指南

在命令行中你可以使用如下命令清屏:

clear

同时,你可以使用 Tab 键在输入命令的时候对命令、参数或文件路径进行自动补全,提高效率的同时降低输入错误的风险。

DeepSeek 对使用 Tab 键的补充:

  • 唯一补全:当输入的命令或路径只有一种可能时,按一下 Tab 键,它会自动补全完整。
    • 例如:输入 cle 然后按 Tab,会自动变成 clear
  • 列表提示:当输入的开头对应多个选项时,按一下 Tab 会列出所有可能的选项供你选择,但不会自动补全。这时你需要再多输入一个或几个字符来缩小范围,然后再按 Tab。
    • 例如:看到 cl 的列表后,你接着输入 e(变成 cle),再按 Tab,就很可能自动补全为 clear
  • 如果补全列表太长,可以按 Ctrl + C 取消,然后重新输入更精确的前缀。
  • Linux 命令和路径是严格区分大小写的。ClearCLEARclear 是完全不同的。Tab 补全也遵循这一规则。

还需要知道:Ctrl + C 是用来终止当前任务的快捷键,按下后当前的任务(如下载资源等)会立即终止。在后面的安装过程中可能会用到。


网络连接

arch官方安装指南中“连接到互联网”部分,有这样一段话“连接到网络:WiFi——使用 iwctl 认证无线网络。”

DeepSeek 说:

什么时候才需要使用 iwctl?只有在一种特定情况下需要:你在虚拟机设置中特意模拟了无线网卡,并且想要连接到一个 Wi-Fi 网络。对于 99% 的虚拟机安装场景,这没有必要且更复杂。虚拟机直接使用虚拟的“有线”连接是最简单的。

我跳过了官方指南的前置步骤,直接确认网络连接,输入以下命令并按回车执行:

ping -c 3 archlinux.org

命令解释:

  • ping:用于测试网络连接的命令
  • -c 3:向指定的网络地址发送 3 个网络数据包
  • archlinux.org:Arch Linux 的官方网站

这个命令的作用是向 Arch Linux 的官方服务器发送 3 个网络数据包,测试网络是否通畅。

也可以执行 ping archlinux.org,舍去参数 -c 3,这样网络测试 ping 会一直进行,可以按下 Ctrl + C 来终止。终止后会看到包含类似 --- archlinux.org ping statistics --- 的内容。


确保系统时间同步

简明指南

使用 timedatectl 确保系统时间是准确的。这一步不是可选的,正确的系统时间对于部分程序来说非常重要:

timedatectl set-ntp true   # 将系统时间与网络时间进行同步
timedatectl status         # 检查服务状态

上面的命令中,# 后面的内容为注释,仅用作解释命令。在大多数系统文件和命令中,# 代表注释。

检查系统时钟

:为什么系统时钟的时间与我所在时区的时间不一致?

DeepSeek 解释:

这是完全正常的,并且不需要在 Live 安装环境中调整。你看到的是 Live 环境的 UTC 时间,与你的时区时间不一致是预期现象。


更换国内软件仓库镜像源

官方文档:

需安装的软件包会从文件 /etc/pacman.d/mirrorlist 中所列的镜像站下载。下载软件包时,列表中越靠前的镜像站会拥有越高的优先级。

简明指南

使用 vim 编辑器修改 /etc/pacman.d/mirrorlist 文件。将 pacman 软件仓库源更换为国内软件仓库镜像源:

vim /etc/pacman.d/mirrorlist

这里要把文件中的中国镜像源放在最前面,确保下载网络资源时使用中国镜像源。由于在前一次安装 Arch 系统时有使用 vim 编辑器的经验,作者直接按照以下操作修改文件:

  1. 按键盘 键,光标下移,找到 # China 这一块的镜像源,将光标放在 # 符号前;
  2. 按下 v 键,进入可视模式(vim 默认不是编写模式,按下字母将会执行对应的命令,而不是输入字母),将光标移动至所有中国镜像源的末尾,选中这一区内容;
  3. 按下 y 键,将选中的内容复制(到寄存器,类似粘贴板);
  4. 上移光标至文件头部注释内容的下方,按下 p 键,粘贴中国镜像源;
  5. 按下 i 键,进入插入模式(编写模式,这就是正常打字的模式),对内容进行微调;
  6. 按下 esc 键,退出插入模式,再输入 :wq 并回车,保存并退出。

关于 Live 环境的说明

官方文档:

/etc/pacman.d/mirrorlist 之外的配置不会从 Live 环境传递到安装的系统中。

Live 环境里的文件与要安装的系统里的文件目录基本一致,但其实是分开的、独立的。即使在 Live 环境里修改了某些文件,在新安装的系统里这些文件也将会是全新的、没有任何修改的,除了 /etc/pacman.d/mirrorlist 文件。

DeepSeek 说:

Live 安装环境包含 Vim:根据一项 2015 年的开发者讨论,至少在近 10 年里,Arch 的安装镜像已经将轻量版的 vim 包含在内,以确保有一个可用的文本编辑器。


学习资源推荐

对 vim 编辑器的学习推荐这个网站:vim 文档,它的快速参考功能配合大语言模型的通俗解释,学习起来会很高效。

在“学习”这方面,相对于文字文档和教学视频,作者更倾向于使用参考手册配合 DeepSeek 解释的方式学习,因为这种方式的学习速度更快,DeepSeek 的解说使学习内容更易懂(大语言模型有时会犯错,而参考手册一类相对严谨的资料就在此发挥作用);不排斥使用文字文档和教学视频等方式学习。学习方式各有优缺点,要因地制宜,空闲时作者喜欢读美观的教学网站,以填补疏忽的知识细节。