我有我的 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 分区上,引导过程开始时该分区为“/”
祝你好运!