是否可以在 SD 卡上安装 Linux,并将其用作 Android 的外部存储?

是否可以在 SD 卡上安装 Linux,并将其用作 Android 的外部存储?

我想在 micro SD 卡上安装可启动的 Linux 系统,能够将其用作其他设备(例如我的 Android 手机)的外部存储。

计划:Raspberry Pi 4 上的 Linux ARM。

如果我将 SD 卡(安装了 Arch Linux ARM)插入手机,Android 只会检测到 SD 卡的第一个分区(启动分区)。期望的结果是用我的音乐安装我的主分区,而不是引导分区。

我想到了两种可能的解决方案:

  1. 找到一个可以访问第三个分区(home)的Android文件管理器应用程序
  2. 将第一个分区设为我的主分区,然后将启动分区设为第二个分区,将根分区设为第三个分区。

第一个解决方案不太好,我真的不知道如何成功启动第二个解决方案,而且我无法通过 USB 安装系统,因为 Raspberry Pi 不支持它。

可行的解决方案,增加了 Philip Couling 的洞察力

我无法让 Android 读取第二个分区,无论文件系统如何(至少是无根的),所以我推断根据我的测试,我唯一的选择是扩展我的启动分区,即我的第一个分区。

Android 能够读取 vFAT,但无法启动 Linux (Raspberry Pi 4),但您的情况可能会有所不同。它能够从 FAT32 启动。

我认为 FAT32 是可供 Android 读取并可通过 Raspberry Pi 4 启动的最佳文件系统。不幸的是,但它会完成工作。

我选择的操作系统是 Manjaro 或 Arch,但它们的默认安装使启动分区为 FAT16。在 GParted 的帮助下,我能够将其更改为 FAT32,并且仍然可以启动。确保 Manjaro 能够启动的标签相同(BOOT_MNJRO 和 ROOT_MNJRO)至关重要,正如“/boot/cmdline.txt”中所指示的那样

MicroSD 卡现在可以用作可启动系统,并用于我的 Android 手机的额外存储。目标是使用第二张 MicroSD 卡作为备份驱动器,并且仍然能够将其用作手机上的便携式存储!

感谢 Philip Couling 的伟大洞察力,使用 syslinks 使我的主目录感觉很自然。

答案1

我的第一个想法是你需要找到一个支持 Linux 并且被 Android 接受的文件系统。我怀疑Android 悄悄地拒绝挂载 ext4 分区。

我的想法是Android故意拒绝,因为ext2、3、4分区如果处理不当会带来安全风险。不幸的是,构成安全风险的功能(设备文件和unix风格的用户权限)是运行linux所必需的......我相信。简而言之,我认为要让它发挥作用,你会遇到很大的问题。

什么可能有效

你所要求的并不是没有道理的。您想/home从 android 访问您的目录。 Linux 操作系统可能需要 ext2、3、4 功能,但用户家庭通常不需要它们。您的/home/<username>/Music或目录当然不需要它们/home/<username>/Pictures

您可以轻松创建 FAT32 分区来放置媒体文件,而不是尝试更改整个操作系统。如果 Android 确实不喜欢访问第二个分区,您甚至可以扩展/boot以为其提供足够的空间。

一旦您拥有了双方都可以看到的分区,并且足够大以容纳您的媒体,您就可以将其安装到/media/home并移动内容:

mkdir /media/home
mount /dev/sda3 /media/home

mv ~/Pictures /media/home
ln -s /media/home/Pictures ~

mv ~/Music /media/home
ln -s /media/home/Music ~

别忘了修改/etc/fstab自动挂载分区。

相关内容