如果问开发人员 Linux 是什么,大多数人的回答可能是 Linux 是一个开源操作系统。也有人会站在技术角度称它为内核。
不过,对我来说,Linux 不仅仅是一个操作系统或内核。Linux 代表着自由。可以根据需求自由组合各个部分组成最适合自己的操作系统,这也是 Arch Linux 吸引人的地方。
摘自 arch wiki,
Arch Linux 是通用 x86-64 GNU/Linux 发行版。Arch采用滚动升级模式,尽全力提供最新的稳定版软件。
初始安装的 Arch 只是一个基本系统,随后用户可以根据自己的喜好安装需要的软件并配置成符合自己理想的系统.
换句话说,Arch Linux 是针对有经验 Linux 用户的基于 x86-64 架构的优化发行版。它让你对系统拥有完全的选择权和控制权。
可以自主选择所需要的软件包、内核(是的,内核有很多)、boot-loader、桌面环境等等。
你有没有听过有人说,
嗯——顺便说一句,我用的是 Arch Linux!
这是因为如果想要在机器上安装 Arch Linux,需要先了解 Linux 发行版的每个部分是如何工作的。所以如果使用的是 Arch Linux,证明已经很熟悉 Linux。
安装 Arch Linux 与安装 Fedora 或 Ubuntu 之类的系统并没有太大不同。区别是 Arch Linux 必须手动完成各个步骤,而不是交给安装程序。完成了这个过程,自然了解了其他发行版的安装步骤。
在本文中,将介绍在电脑上安装和配置 Arch Linux 的整个过程。最后,还会讨论一些常见任务操作和故障排除技巧。
跟我来,带你深入浅出了解 Arch Linux。
在进入本教程的核心之前,先澄清一些事情。为了使本文通俗易懂,我对你和你的系统做了以下假设:
差不多就是这样。如果你具备以上所有条件,可以开始了。
要下载 Arch Linux,请访问 https://archlinux.org/download/ 并下载最新版本(本文撰写时为 2022.01.01)。ISO的大小应该在 870 兆字节左右。
下载后,需要将其写入 U 盘。可以使用 Fedora Media Writer。在系统上下载并安装应用程序。连接 U 盘打开应用程序:
单击“自定义镜像”,并使用文件浏览器选择下载的 Arch Linux ISO 文件。
程序现在可以选择一个连接的 U 盘。如果电脑连接了多个 USB 存储设备,请务必小心选择正确的 U 盘。现在点击“写入磁盘”按钮,等待进程完成。
在此步骤中,必须对系统进行一些更改,否则 Arch Linux 可能无法启动或正常运行。
第一个要改的是禁用 UEFI 配置中的安全启动。此功能有助于启动期间防止恶意软件攻击,但也会阻止 Arch Linux 安装程序的启动。
如何禁用此功能的详细说明因主板或笔记本电脑品牌而异。需要你自己在互联网中搜索来找到相应的方法。
第二个操作仅在安装和 Windows 共存的 Arch Linux 双系统时才适用。Windows有一个名为“快速启动”的功能,它通过部分休眠来缩短计算机的启动时间。
通常这是一个很好的特性,它可以防止双引导配置中的任何其他操作系统在此过程中访问硬盘。
要禁用此功能,请打开“开始”菜单并搜索“选择电源计划”,如下所示:
然后在下一个窗口中,单击左侧边栏中的“选择电源按钮的功能”:
然后在下一个窗口中,将看到“关机设置”列表,“启用快速启动(推荐)”选项应显示为只读。
单击顶部的“更改当前不可用的设置”,然后更改设置。
取消勾选“启用快速启动(推荐)”选项,然后按下底部的“保存修改”按钮。从现在开始,启动过程可能需要一些额外的时间,但这一切都是值得的。
在本文中,我将安装 Arch Linux 作为默认操作系统。所以我将把我的整个磁盘空间分配给它。
如果想让 Arch Linux 和 Windows 并存,这里有一篇专门的文章介绍这个话题。在那篇文章中,有一个章节,详细讨论了分区过程。
假设已经准备好可启动的 U 盘并且计算机配置正确,就可以开始从 U 盘启动了。开启从 U 盘启动的方法因机器而异。
在我的机器上,在启动过程中按 F12 键会将会进入到可启动设备列表。从那里可以选择可启动 U 盘。可能你已经知道适合你的电脑的方式,或者可能需要进行一些研究。
进入所有的可启动设备列表,选择要启动的 U 盘,会显示以下菜单:
从列表中选择第一个并等待 Arch 安装程序完成启动。完全启动后,会看到如下内容:
就这样。与你熟悉的其他操作系统不同,Arch 安装程序没有任何可以自动安装的图形用户界面。
它需要你投入时间和精力并逐个配置每个部分。这听起来可能有点难,但老实说,如果弄清楚每一步,安装 Arch Linux 会很有趣。
正如我已经说过的,Arch 安装程序没有图形用户界面,因此需要输入大量指令。配置键盘布局和漂亮的字体可以使安装过程不那么令人沮丧。
默认情况下,控制台是标准的美式键盘布局。这对大多数人来说应该没问题,但如果碰巧你有一个不同的键盘,可以改变它。
所有可用的键盘映射通常以 map.gz
文件的形式保存在 /usr/share/kbd/keymaps
目录中。可以使用 ls
命令查看列表:
ls /usr/share/kbd/keymaps/**/*.map.gz
这将列出所有可用的键盘映射:
假如你的是 Mac-US 键盘布局,从该列表中找到相应的 map.gz
文件,即 mac-us.map.gz
文件。
可以使用 loadkeys
命令加载所需的键盘映射。要将 mac-us.map.gz
设置为默认值,请执行以下命令:
loadkeys mac-us
如果不喜欢默认字体,也可以更改控制台字体。就像键盘映射一样,控制台字体保存在 /usr/share/kbd/consolefonts
中,可以使用 ls
命令列出:
ls /usr/share/kbd/consolefonts
这将列出所有可用的字体:
可以使用 setfont
命令设置。例如,如果要将 drdos8x16
设置为默认值,请执行以下命令:
setfont drdos8x16
loadkeys
和 setfont
命令都是包含基本 Linux 键盘工具的 kbd
包的一部分。他们都有很棒的文档,所以如果想了解更多信息,请随时查看。
现在已配置好控制台,下一步是确保已在 UEFI 模式下启动,而不是在 BIOS 模式下启动。
老实说,这一步对我来说似乎没有必要,因为它在实时启动菜单中字面意思是“x86_64 UEFI”。但是官方的 Arch 安装指南建议我们验证一下。
要验证引导模式,请执行以下命令:
ls /sys/firmware/efi/efivars
如果你处于 UEFI 模式,它会在你的屏幕上列出一堆文件:
在 BIOS 引导的情况下,/sys/firmware
目录中甚至不存在efi
目录。如果处于 UEFI 模式,(如果正确地遵循了一切,应该是)继续下一步。
与许多其他实时发行版不同,Arch 实时环境并没有内置所有必要的软件包。它包含许多可用于安装系统其余部分的最低限度的软件包。所以,一个有效的互联网连接是必须的。
如果使用的是有线网络,那么从一开始应该就有了有效的互联网连接。要对其进行测试,请 ping 任何公共地址:
我正在使用 VirtualBox 制作这些屏幕截图,因此已经通过有线连接连接了互联网。但如果使用的是无线连接,事情会变得有点棘手。
实时环境带有 iwd
或 iNet wireless daemon 包。可以使用此软件包连接到附近的无线网络。
首先,执行以下命令:
iwctl
这将启动一个交互式提示,如下所示:
现在执行以下命令以查看可用无线设备的列表:
device list
这将打印出所有可用的无线设备列表。无线设备是指连接到你计算机的任何无线适配器。这里假设设备名称是 wlan0
。
要使用找到的设备扫描附近的无线网络,请执行以下命令
station wlan0 scan
你可能认为此命令将打印出所有附近网络的列表,但事实并非如此。要查看网络列表,请执行以下命令:
station wlan0 get-networks
现在假设你的 WI-FI 网络名称为“Skynet”,可以通过执行以下命令连接到它:
station wlan0 connect Skynet
iwctl
程序会提示输入 wi-fi 密码。输入密码,一旦连接到网络,输入exit
按 Enter 退出程序。再次尝试 ping 公共地址并确保 Internet 工作正常。
在 Linux 中,NTP 或网络时间协议用于通过网络同步计算机系统时钟。可以使用 timedatectl
命令在 Arch 实时环境中启用 NTP:
timedatectl set-ntp true
该命令将会卡住几秒。如果没有看到命令光标再次出现,请尝试按 Enter。过去我曾多次遇到过这种情况。
这可能是整个安装过程中最危险的一步——因为如果弄乱了分区,数据就会丢失。所以我建议不要立即执行本节内容。相反,请先阅读整个部分,然后再回到这里。
要开始分区,必须了解连接到计算机的磁盘。可以使用 fdisk
,它是一个对话驱动的程序,用于创建和操作分区表。
fdisk -l
此命令将列出计算机上所有可用设备的分区表。
如你所见,有两个设备连接到我的计算机上(实际上是虚拟机)。根据你的设备数量,此列表可能会更长,在查看列表时忽略任何以rom
、loop
或 airoot
结尾的设备。不能使用这些设备进行安装。
所以只剩下了 /dev/sda
设备。记住,在你的机器上可能完全不同。例如,如果你有 NVME 驱动器,可能会看到 /dev/nvme0n1
。
一旦决定使用哪个设备,最好检查该设备内是否存在任何现有分区。可以使用 fdisk
命令:
fdisk /dev/sda -l
记得用你的设备名的替换/dev/sda
。此命令将列出给定设备内的所有分区。
尽管此设备中没有分区,但在实际中,之前可能已经创建了分区。这些分区将显示为 /dev/sda1
、/dev/sda2
或在有 NVME 驱动器的情况下显示为 /dev/nvme0n1p1
、/dev/nvme0n1p2
等等。
fdisk
程序可以做的不仅仅是列出分区。查阅相应的 ArchWiki 页面以了解可以使用该程序执行的操作。
还有另一个程序 cfdisk
,它是一个基于 curses- (programming library) 的 Linux 磁盘分区表操作工具。在功能上与 fdisk
相似,基于 curses 意味着它有一个界面,更易于使用。
执行以下命令在设备上启动 cfdisk
:
cfdisk /dev/sda
记得用你的设备替换/dev/sda
。如果设备有以前创建的分区表,那么 cfdisk
将直接显示分区列表。否则,将开始选择分区表类型:
为基于 UEFI 的系统选择 gpt
。接下来,将显示设备上的分区和可用空间列表:
可以使用向上/向下箭头键沿设备列表上下移动,使用向左/向右箭头键沿不同操作左右移动。
要安装 Arch 或任何其他 Linux 发行版,需要三个独立的分区。如下:
确保正确的分区/可用空间在列表中突出显示,然后选择 [ New ]
操作。
填写所需的分区大小。可以使用 M 表示兆字节,G 表示吉字节,T 表示太字节。
对于 EFI 系统分区,应该至少分配 500MB。输入所需空间后,按 Enter 完成。更新后的分区列表可能如下所示:
EFI 系统分区是一种特殊类型的分区。它必须采用特定的类型和格式。要更改默认类型,请保持新创建的分区突出显示并从操作列表中选择 [ Type ]
。
从这个长长的类型列表中,突出显示 EFI System
并按 Enter。列表中的分区类型会相应更新:
接下来是 root 分区。突出显示剩余的可用空间并再次选择 [ New ]
。这次分配 10GB 给这个分区。root 分区的理想大小取决于个人需要。就我而言,我为所有 Linux 安装的 root 分区分配了至少 100GB 的空间。
无需更改此分区的类型。默认的 Linux filesystem
就可以了。
使用剩余空间创建最后一个分区,并从菜单中将其类型更改为 Linux swap
:
交换分区的理想大小是一个有争议的问题。就我个人而言,我的机器上没有交换分区。我的内存足够大。但如果以后有需要,可以使用 swapfile
来代替。无论如何,设备的最终状态应如下所示:
如果对设置感到满意,请从操作列表中突出显示 [ Write ],然后按 Enter。该程序将询问是否要保留这些更改。如果同意,必须输入 yes
并按 Enter。更改分区表后,选择 [ Quit ]
退出程序。
对于那些尝试将 Arch Linux 与 Windows 一起安装的人,我想提一提的是,在这种情况下,EFI 系统分区应该已经存在于设备中。所以不要碰那个。只需创建其他分区并继续。
现在已经创建了分区,需要格式化它们。可以使用 mkfs
和 mkswap
程序。在格式化之前,执行以下命令查看分区列表:
fdisk /dev/sda -l
这次将看到三个新创建的分区及其详细信息:
记住设备名称,例如 /dev/sda1
、/dev/sda2
、/dev/sda3
等。EFI 系统分区必须为 FAT32 格式。执行以下命令将分区格式化为 FAT32 格式:
mkfs.fat -F32 /dev/sda1
下一个是 root 分区。它可以有多种格式,但我习惯使用 EXT4 。使用以下命令格式化为 EXT4 分区:
mkfs.ext4 /dev/sda2
此操作可能需要一些时间才能完成,具体取决于分区大小。最后是交换分区。使用以下命令对其进行格式化:
mkswap /dev/sda3
这样,就完成了为安装准备分区的过程。
现在已经创建并格式化了分区,可以挂载它们了。可以使用 mount
命令来挂载分区:
mount /dev/sda2 /mnt
希望记得之前 /dev/sda2
分区被创建为 root 分区。Linux 中的 /mnt
挂载点用于临时挂载存储设备。由于我们只需要挂载安装 Arch Linux 的分区,所以使用 /mnt
挂载点。
而对于交换分区,不能像其他分区一样挂载它。需要明确告诉 Linux 将此分区用作交换。执行以下命令:
swapon /dev/sda3
可能已经猜到了,swapon
命令告诉系统在此设备上进行交换。我们将在后面的部分中使用 EFI 系统分区。目前,安装这两个分区就足够了。
在安装 Arch Linux 之前还有最后一步,那就是配置镜像源。镜像源是位于世界各地不同地点的服务器,用于为附近的人提供服务。
安装程序附带 Reflector,这是一个 Python 脚本,用于检索 Arch Linux 镜像状态页面的最新镜像列表。要打印出最新的镜像列表,执行以下命令:
reflector
如果网速较慢,可能会遇到如下错误消息:
failed to rate http(s) download (https://arch.jensgutermuth.de/community/os/x86_64/community.db): Download timed out after 5 second(s).
当下载信息的时间超过默认超时(5 秒)时,就会发生这种情况。
可以使用 --download-timeout
选项来解决此问题:
reflector --download-timeout 60
现在 reflector 将等待整整一分钟,才会失败。一长串镜像源地址会出现在屏幕上:
遍历整个列表以找到附近的 mirrors 会很麻烦。可以用 reflector 来搞定。
Reflector 可以根据的给定约束生成 mirrors 列表。例如,想要一个最近 12 小时内同步过的 mirrors 列表,这些 mirrors 位于印度或新加坡(这两个离我的位置最近),并按下载速度对镜像进行排序。
可以用 reflector 这样做:
reflector --download-timeout 60 --country India,Singapore --age 12 --protocol https --sort rate
找到的服务器将像以前一样列出:
像这样打印出 mirror 列表是不够的。必须将列表保存在 /etc/pacman.d/mirrorlist
位置。Pacman,是 Arch Linux 的默认包管理器,可以使用这个文件来查找 mirror。
在覆盖默认 mirror 列表之前,先对其进行复制:
cp /etc/pacman.d/mirrorlist /etc/pacman.d/mirrorlist.bak
现在使用 --save
选项执行 reflector 命令,如下所示:
reflector --download-timeout 60 --country India,Singapore --age 12 --protocol https --sort rate --save /etc/pacman.d/mirrorlist
此命令将生成 mirror 列表并覆盖默认列表。现在已准备好安装基本的 Arch Linux 系统。
在安装基础系统之前,最好根据新的 mirror 列表更新包缓存。请执行以下命令:
pacman -Sy
Arch Linux 的 pacman 程序就像 Ubuntu 的 apt
或 Fedora 的 dnf
程序。-S
选项表示同步,相当于 apt
或 dnf
包管理器中的 install
。
更新过程完成后,可以使用 pacstrap
脚本安装 Arch Linux 系统。执行以下命令开始安装:
pacstrap /mnt base base-devel linux linux-firmware sudo nano ntfs-3g networkmanager
pacstrap
脚本可以将软件包安装到指定的新 root 目录。你可能还记得,root 分区被挂载在 /mnt
挂载点上,所以这个脚本使用了 /mnt
参数。然后,传入要安装的软件包名称:
base
- 定义基本 Arch Linux 安装的最小软件包集。base-devel
——从源代码构建软件所需的软件包组。linux
——内核本身。linux-firmware
——通用硬件的驱动程序。sudo
- 以 root 身份运行命令nano
- 具有一些增强功能的 pico 编辑器克隆。ntfs-3g
– 使用 NTFS 驱动器所需的 NTFS 文件系统驱动程序和实用程序。networkmanager
- 为系统提供检测和配置以自动连接到网络。我想澄清一下,这七个包不是强制性的。要安装功能正常的 Arch Linux,只需要 base
、linux
和 linux-firmware
包。但是考虑到其他包也是必需的,为什么不一起装完它们。
根据网速快慢,安装过程可能需要一段时间。坐下来放松一下,直到 pacstrap 完成它的工作。完成后,将看到如下内容:
恭喜,你已经成功地在你的电脑上安装了 Arch Linux。现在剩下要做的就是配置系统。
安装 Arch Linux 没那么难吧?事实上,在我看来,安装比配置更简单。这里有很多事情要做。所以让我们开始吧。
根据 ArchWiki,
fstab(5) 文件可用于定义磁盘分区,各种其他块设备或远程文件系统应如何装入文件系统。
在 Ubuntu 或 Fedora 等其他发行版中,它会在安装过程中自动生成。但是,在 Arch 上,必须手动完成。执行以下命令:
genfstab -U /mnt >> /mnt/etc/fstab
genfstab
程序可以检测给定挂载点以下的所有当前挂载,并以兼容 fstab 的格式将它们打印到标准输出。所以 genfstab -U /mnt
将输出 /mnt
挂载点下的所有当前挂载。可以使用 >>
操作符将该输出保存到 /mnt/etc/fstab
文件中。
现在登录的是实时环境,而不是新安装的系统。
要继续配置新安装的系统,必须先登录。执行以下命令:
arch-chroot /mnt
arch-chroot
bash 脚本是 arch-install-scripts
软件包的一部分,可以无需重新启动即可更改为新安装系统的 root
用户。酷!
切换 root 后,首先要配置的是时区。要查看所有可用时区的列表,请执行以下命令:
ls /usr/share/zoneinfo
所有主要时区都在目录中。
我住在位于亚洲区的孟加拉国达卡。如果列出亚洲的内容,可以看到达卡:
在 /etc/localtime
位置创建文件的符号链接,将 Asia/Dhaka 设置为我的默认时区:
ln -sf /usr/share/zoneinfo/Asia/Dhaka /etc/localtime
ln
命令用于创建符号链接。-sf
选项分别表示软链接和强制执行。
现在需要配置语言。Arch Linux 也有一个简单的设置方法。
首先,根据本地化信息编辑 etc/locale.gen
文件。在 nano 文本编辑器中打开文件:
nano /etc/locale.gen
会看到一长串语言列表:
需要取消要启用的语言的注释。我通常只需要英语和孟加拉语。因此,我将找到 en_US.UTF-8 UTF-8
、bn_BD UTF-8
和 bn_IN UTF-8
语言。按 Ctrl + O 保存文件,然后按 Ctrl + X 组合键退出 nano。
现在执行以下命令:
locale-gen
locale-gen
命令将读取 /etc/locale.gen
文件并生成相应地语言环境。
现在已经启用了多种语言,需要告诉 Arch Linux 默认使用哪一种。打开 /etc/locale.conf
文件并向其中添加以下行:
LANG=en_US.UTF-8
至此,配置语言环境操作完毕。可以随时返回到 /etc/locale.gen
文件并从中添加或删除语言。只要记住在执行此操作时运行 locale-gen
即可。
如果在安装的第一步中对控制台键盘映射进行了更改,现在也需要保留它们。打开 /etc/vconsole.conf
文件并在其中添加你需要的键盘映射。
例如,如果在第一步中将默认键盘映射更改为 mac-us
,那么需要将以下行添加到 vconsole.conf
文件中:
KEYMAP=mac-us
现在,每次使用虚拟控制台时,它都会有正确的键盘映射,而不必每次都对其进行配置。
在任何 Linux 发行版中手动配置网络都非常棘手。这就是为什么我建议在系统安装过程中安装 networkmanager
软件包的原因。如果之前安装过了,就可以跳过安装步骤。否则,现在使用 pacman
安装软件包:
pacman -S networkmanager
Pacman 是一个包管理器。稍后将了解更多有关它的信息。现在先为计算机设置主机名。主机名是为识别网络上的机器而创建的唯一名称,写入/etc/hostname
文件中。
使用 nano 打开文件并在其中写入主机名。可以使用任何字符来标识机器。我通常使用我的设备品牌或型号作为我的主机名,并且由于我使用的是 legion 笔记本电脑,所以我将简单地写下以下内容:
legion
本地主机名解析由 nss-myhostname
(systemd 提供的 NSS 模块)提供,无需编辑 /etc/hosts
文件。已默认启用。
但有些软件可能仍会直接读取/etc/hosts
文件。在 nano 中打开文件并添加以下行:
127.0.0.1 localhost
::1 localhost
127.0.1.1 legion
确保将 legion
替换为你的主机名。现在可以安装上述软件包:
pacman -S networkmanager
通过执行以下命令启用 NetworkManager
服务:
systemctl enable NetworkManager
确保将 NetworkManager
而不是 networkmanager
作为服务名称。如果命令成功,网络管理器将从现在开始在启动时自动启动并执行其操作。
你可能想为 root 用户设置密码,执行以下命令:
passwd
passwd
命令允许更改用户的密码。默认情况下,它会更改当前用户的密码,即 root
。
它会要求输入新密码和确认密码。仔细输入,确保密码不会被忘记。
长期以 root 用户身份使用 Linux 系统并不是一个好主意。所以创建一个非 root 用户很重要。要创建新用户,请执行以下命令:
useradd -m -G wheel farhan
useradd
命令允许创建一个新用户。确保将 farhan 替换为你要使用的名字。-m
选项表示还希望它创建相应的主目录。-G
选项会将新用户添加到 Arch Linux 中的管理用户组 wheel
组。
现在可以再次使用 passwd
命令为新创建的用户设置密码:
passwd farhan
该程序将提示输入新密码和密码确认。再说一次,别忘了把 farhan 换成你用过的名字。
最后,需要为这个新用户启用 sudo
权限。使用 nano 打开 /etc/sudoers
文件。打开后,找到以下行并取消注释:
# %wheel ALL=(ALL) ALL
该文件实质上意味着 wheel
组中的所有用户都可以通过提供密码来使用 sudo
。按 Ctrl + O 保存文件并按 Ctrl + X 退出 nano。现在新用户将能够在必要时使用 sudo
。
摘自 PCMag,
复杂指令集计算机 (CISC) 中的一组基本指令。Microcode 驻留在单独的高速存储器中,用作机器指令和计算机电路级之间的翻译层。Microcode 使计算机设计人员能够创建机器指令,而无需设计电子电路。
英特尔和 AMD 等处理器制造商经常会发布处理器的稳定性和安全性更新。这些更新对于系统的稳定性至关重要。
在 Arch Linux 中,Microcode 更新可以通过官方软件包获得,每个用户都应该在他们的系统上安装这些软件包。
pacman -S amd-ucode
pacman -S intel-ucode
仅仅安装这些软件包是不够的。必须确保你的引导加载程序正在加载它们。具体将在下一节中介绍。
摘自维基百科,
bootloader,也拼写为 boot loader 或称为 boot manager 和 bootstrap loader,是负责引导计算机的计算机程序。
bootloader 的细节超出了本文的范围,所以只涉及安装过程。如果过去使用过任何其他 Linux 发行版,可能了解过 GRUB 菜单。
GRUB 是目前最流行的 bootloaders 之一。尽管有很多功能,这里将只演示 GRUB 的安装,因为大多数人只需安装即可。
要安装 GRUB,必须首先安装如下两个软件包。
pacman -S grub efibootmgr
如果与其他操作系统一起安装,还需要 os-prober
包:
pacman -S os-prober
该程序将搜索系统上已安装的操作系统,并将它们作为 GRUB 配置文件的一部分。
现在,需要挂载之前创建的 EFI 系统分区。为此,首先创建一个 efi
目录:
mkdir /boot/efi
摘自维基百科,
在 Linux 和其他类 Unix 操作系统中,
/boot/
目录包含用于引导操作系统的文件。
该目录存在于所有类 Unix 操作系统中。上面提到的命令在 /boot
目录中创建了一个名为 efi
的目录。创建目录后,需要在该目录中安装 EFI 系统分区。
mount /dev/sda1 /boot/efi
希望你还记得我们在分区阶段将/dev/sda1
设备格式化为EFI系统分区。确保为你的设备使用正确的设备。
现在,我们将使用 grub-install
命令在新挂载的 EFI 系统分区中安装 GRUB:
grub-install --target=x86_64-efi --bootloader-id=grub
可以或多或少地逐字使用此命令。可以将 --bootloader-id
更改为你想要展示的任何更贴切的文字,例如 arch
或其他内容。如果安装完成且没有任何错误,则需要生成 GRUB 配置文件。
如果与其他操作系统一起安装,则必须在生成配置文件之前启用 os-prober
。在 nano 文本编辑器中打开 /etc/default/grub
文件。找到以下行并取消注释:
#GRUB_DISABLE_OS_PROBER=false
这是上述文件中的最后一行,只需滚动到底部并取消注释即可。
现在执行以下命令生成配置文件:
grub-mkconfig -o /boot/grub/grub.cfg
grub-mkconfig
命令生成 GRUB 配置文件并将其保存到指定的目标位置。在这里,是 /boot/grub/grub.cfg
。
该命令还会检测之前安装的 microcode 以及机器上的任何其他现有操作系统。
恭喜,现在已经安装了 Arch Linux。此时,可以退出 Arch-Chroot 环境,卸载分区,然后重新启动。但我建议你多待一会儿,一起设置好图形用户界面。
要在系统上运行带有图形用户界面的程序,需要安装 X Window System 实现。最常见的是 Xorg。
要安装 Xorg,请执行以下命令:
pacman -S xorg-server
等到安装完成,然后继续安装必要的图形驱动程序。
在 Arch Linux 上安装图形驱动程序非常简单。只需安装图形处理单元所需的软件包,然后就可以收工了。
pacman -S nvidia nvidia-utils
pacman -S xf86-video-amdgpu
pacman -S xf86-video-intel
如果需要进一步的帮助,请随时查看 ArchWiki 页面。
现在已经安装了 Xorg 和必要的图形驱动程序,可以继续安装桌面环境,如 GNOME、Plasma 或 XFCE。
Arch Linux 支持很多的桌面环境,但我只尝试过 GNOME 和 Plasma。我将演示如何安装这两个。
要安装 GNOME,需要安装 gnome
包。执行以下命令:
pacman -S gnome
在安装过程中,会提供 pipwire-session-manager
和 emoji-font
软件包的多种选择。在两个提示中按 Enter 接受默认值。安装可能需要一些时间才能完成。
gnome
软件包带有 GDM 或 Gnome 显示管理器。可以通过执行以下命令来启用该服务:
systemctl enable gdm
到这里,在 Arch 系统上启动和运行 GNOME 的准备工作已经全部完成。
KDE Plasma 安装与 GNOME 没有什么不同。需要安装 Plasma 相关的包而不是 GNOME。
pacman -S plasma plasma-wayland-session
如果电脑是 NVIDIA 显卡,请不要安装 plasma-wayland-session
,使用普通的旧 X11。我拥有两台配备 NVIDIA GPU 的设备,并且在使用 Wayland 时它们都表现出不稳定。
在安装过程中,将出现 ttf-font
、pipwire-session-manager
和 phonon-qt5-backend
包的多种选择。确保选择 noto-fonts
作为 ttf-font
并接受其他两个的默认值。
与 GNOME 中的 gdm
一样,Plasma 带有 sddm
作为默认显示管理器。执行以下命令启用服务:
systemctl enable sddm
到这里,在 Arch Linux 系统上启动和运行 Plasma 的准备工作已经全部完成。
现在已经安装了 Arch Linux 并完成了所有必要的配置步骤,可以重新启动到新安装的系统。首先要退出 Arch-Chroot 环境:
exit
接下来,卸载 root 分区以确保没有挂起的操作:
umount -R /mnt
现在重新启动机器:
reboot
等到看到 GRUB 菜单。
从列表中选择 Arch Linux 并等待系统完成启动。
使用你的用户凭据登录,如下!
全新 Arch Linux 系统已准备好。
原文链接:https://www.freecodecamp.org/news/how-to-install-arch-linux/
作者:Farhan Hasin Chowdhury
译者:ZhichengChen