![Arch Linux 安装(与 UEFI Windows 双引导)](https://linux22.com/image/7937/Arch%20Linux%20%E5%AE%89%E8%A3%85%EF%BC%88%E4%B8%8E%20UEFI%20Windows%20%E5%8F%8C%E5%BC%95%E5%AF%BC%EF%BC%89.png)
我尝试过 VirtualBox,我什至尝试过一些非正统的安装方式,比如使用建筑师或 Arch-Anywhere,但最终发现普通 ISO 映像要好得多,更能胜任任务。
我将逐步完成我的安装过程。
初始设置
UEFI 系统具有单个硬盘和几个为 Windows 保留的分区(尽管可能不幸,但我必须将它用于工作)。
安装策略
减小了我最后一个 Windows 分区的大小,为 Arch 留下了 250 GB。
插入USB,使用Rufus格式化并复制ISO。现在想来,我在这个阶段一定犯了两个错误:a)使用ISO模式而不是DD(似乎是这里的一个线程的问题); b) 将其格式化为用于 UEFI 和 BIOS 的 MBR(但它是安装介质,所以应该不重要,对吧?)。
- 重新启动。进入设置,选择我的USB驱动器作为启动设备。
- 查找了一下
efivars
,但该目录不存在(与初学者指南状态,而且我显然有一个 GPT 系统)。 - 创建了一个分区
/boot
和另一个分区 - for/
。这就是 GUI 帮助程序(Architect 和 Arch-Anywhere)完全失败的地方,因为不知何故它们让我手动对驱动器进行分区,但不允许安装目录。另外,正如我后来发现的那样,parted
并且gdisk
也没有按预期工作:两者都会在 Linux 分区和 Windows 分区之间留下未分配的空间,并且不知何故都忽略了我选择的方案(FAT32 和 Ext4 结果作为一个单独的分区)一个工具的 Ext2 分区,另一个工具的 FAT32 和 Ext3 分区)。虽然我可以解释空白(由于以print
GB 打印信息和出于某种奇怪的原因使用 GiB 的实际命令而造成混乱),但我不知道 Ext4 如何会导致 Ext2 或 Ext3。无论如何,这一点并不是特别重要,因为我总是可以在 Windows 下正确格式化我的系统。 - 对我来说,这个阶段开始变得神秘:
pacstrap
。无论我对mirrorlist
普通 ISO 做什么,它都无法连接到存储库。通常我会责怪澳大利亚及其出色的互联网连接,但实际上我已经看到这些存储库在 Architect 和 Arch-Anywhere 中运行。 “好吧,”我对自己说,“让这些库见鬼去吧,这是一个可选步骤,我会尝试启动该死的东西。” - 所以我尝试启动它。并
bootctl install
提出了一些类似于“无法启动到非 FAT32 非 EFI 分区”的内容。就在那时,我失去了所有希望,并开始考虑离开 IT,成为一名职业酒鬼或全职洗涤器使用者。
总而言之,我只是想知道我哪里搞砸了。我已经背诵了《初学者指南》,但这对我没有帮助,所以如果有人有一个有效的指南,实际上可以解释我的特定情况的每一步(因为我会说这指南没有),我很想看看。我也很好奇为什么parted
会gdisk
这么奇怪。我也不太明白“安装”是如何工作的。
答案1
我想要感谢杰森·瑞恩把我推向正确的方向。在这个阶段,我确信我能够在蒙住眼睛和喝醉的情况下安装 Arch,但如果没有他的帮助,我不会取得多大进展。
我是如何解决我的问题的:
- 我在Windows下使用EaseUS Partition Master为Arch创建分区。我已经尝试在实时系统上使用
parted
和gdisk
,但发现它们令人困惑:设备和部件的信息将以 MB 和 GB 为单位显示,但是命令本身似乎适用于 MiB 和 GiB。当谈到对硬盘驱动器进行分区时,我建议您使用最安全的选项,否则您可能会搞砸系统。我曾经mkfs.ext4
格式化生成的分区,因为EaseUS Partition Master仅支持ext2和ext3。 - 我已经打开了 UEFI 启动菜单。我最初的问题是它没有在我的 USB 上获取正确的启动文件(Rufus、USBWriter 和 创建的 USB 就是这种情况
dd
),因此该/sys/firmware/efi/efivars
目录没有被填充。因此,我必须手动添加启动选项并导航到 Arch Linux 安装介质上的 .efi 文件。这可能不适合您,但如果您efivars
是空的,您不应该继续安装,因为您将有效地运行 MBR 模式(据我所知)。 - 另一个快速说明...如果您有一台运行 Windows 的计算机,您很可能将 EFI 分区设置为 100 MB。这EFI系统分区页面明确提到了至少将其设置为 260 MB 的重要性(如果我没记错的话)。但是,如果您像我一样在 Windows 下对驱动器进行分区,您将无法执行任何操作:要调整 EFI 分区的大小,您必须移动
C:
,而 Windows 在运行时不允许这样做系统。我搜索过 Internet 和 Arch Wiki,显然 100 MB 就足够了,因此您可以放心地忽略 260 MB 的指令。 - 初学者指南(当前版本)建议您
chroot
进入/mnt
,然后接下来的部分会告诉您设置区域设置和时区。在此之前,您必须了解exit
环境chroot
。并且不要忘记之后再回到它。 - 我使用的
systemd-boot
是双启动,因为它带有 Live CD,并且非常容易设置和使用。它将自动选择您的 Windows 安装和固件接口,但是,您必须为 Arch 创建一个配置文件。因此,只需(或任何您想要调用该文件的内容)并确保在其中nano /boot/loader/entries/arch.conf
正确设置title
、linux
、initrd
和。options root=
我不建议使用/dev/sdxY
afteroptions root=
,因为如果您运行的是 UEFI 系统,其分区方案很可能会在每次启动时发生变化(一个设备可能会被调用sda
一次,sdb
另一次被调用)。我建议使用UUID
来指代您的设备。要了解UUID
您的设备有什么,只需运行lsblk -o +UUID
.写下UUID
(或使用|
,如果您有信心的话),并将其与文件中的grep
结合使用。不要忘记进行相应更新。options root=UUID=
entries/arch.conf
loader/loader.conf
- 您现在应该能够启动到您的 Arch 系统了。
最后的笔记
在从 Web 安装任何软件包之前,请确保您已连接到网络。运行
ip link
以列出可用设备,然后按照初学者指南中的说明进行连接。pacman -Syu
始终在下载任何软件包之前运行。如果你不这样做,你可能会“破坏”你的系统(或者只是读完所有的内容就睡着了page returned 404
)。如果您决定设置桌面环境,请确保安装相关的视频驱动程序。否则,您可能会导致引导进程挂在
[OK] Reached target Graphical Interface
。如果是这种情况,Ctrl+Alt+F2
请以身份登录您的系统root
并安装适用于您的系统的驱动程序。reboot
- 现在应该可以了。大多数桌面环境的登录提示不会将 root 列为选项。如果您想以 root 身份登录,请参阅特定 DE 的手册,或者完全忘记它并用于
Ctrl+Alt+F2
满足您的所有 root 需求。并且不要忘记设置一个用户帐户,将其添加到wheel 用户组并运行EDITOR=nano visudo
并注释掉授予wheel root 权限的行。从 AUR 安装软件包似乎也需要用户帐户。