如何在 arch linux 中为 android x86 添加 systemd 启动项?

如何在 arch linux 中为 android x86 添加 systemd 启动项?

我有我的 kernal、ramdisk.img、initrd.img、system.img 和 data 文件夹,所有这些都在我的根目录中名为 android 的一个文件夹中,如有关双引导 android x86 和 linux 的几篇教程中提到的。但问题是没有人提到如何通过 systemd-boot 启动它,每个指南都只是针对 grub bootloader。如何在 arch linux 中为 android x86 添加 systemd 启动项?

答案1

您提到的文件需要位于您的 efi 分区中。希望以下内容能为您提供足够的信息来配置 Android 条目。

我的efi分区内容如下:

tree -L 1
.
├── EFI
├── gparted
├── initramfs-linux-fallback.img
├── initramfs-linux.img
├── initramfs-linux-lts-fallback.img
├── initramfs-linux-lts.img
├── intel-ucode.img
├── loader
├── System Volume Information
├── vmlinuz-linux
└── vmlinuz-linux-lts

这为我提供了 Arch linux 主线内核和 lts 内核以及实时启动 gparted 的选项。 gparted 目录包含 gparted live iso 的扩展映像。

加载器目录包含:

.
├── entries
│   ├── arch.conf
│   ├── arch_lts.conf
│   ├── clonezilla.conf
│   └── gparted.conf
├── loader.conf
└── random-seed

条目目录中的每个 .conf 文件都会在启动菜单中提供一个新条目。

arch.conf 文件包含:

title   Arch Linux
linux   /vmlinuz-linux
initrd  /intel-ucode.img
initrd  /initramfs-linux.img
options root=UUID=66f01fdf-82a1-4aef-a7f6-27b3ba7bb790 rw

它基本上是关键组件所在位置的列表。

gparted.conf 文件包含:

title   GParted Live
linux   gparted/live/vmlinuz
initrd  gparted/live/initrd.img
options apm=power-off boot=live live-media-path=/gparted/live/ username=user noswap noeject  ip= net.ifnames=0

您需要将 android 启动文件移动到 efi 分区,并在条目文件夹中构建一个 .conf 文件。我认为你的 Android 安装的其余部分需要位于其自己的分区上

如果您感兴趣,gparted conf 文件会启动 gparted live iso 的提取副本,该副本位于 gparted 目录的 efi 分区上。它使用位于 gparted 目录树下方的 gparted initrd.img 和 vmlinuz。

希望这能让您找到可行的解决方案。请注意,initrd.img 和 vmlinuz 文件必须位于 efi FAT 分区上,引导过程开始时该分区为“/”

祝你好运!

相关内容