在Android中创建硬链接和符号链接

我正在创建一个应用程序,我想在Android外部内存文件系统中使用硬链接和符号链接。 我尝试过使用这些命令

Os.link("oldpath", "newpath"); Os.link("oldpath", "newpath"); 

但是,当我尝试这个时,我收到此错误:

 link failed: EPERM (Operation not permitted) 

这让我觉得你需要root访问权限,虽然我已经看到其他人做同样的事情,但我不认为如果他们需要root,他们会有这些命令。 有任何想法吗?

调用Os.link失败,因为Android默认使用FAT32文件系统进行外部存储。 FAT32文件系统不支持硬链接和软链接,这就是您不允许操作错误的原因。

EPERM包含oldpath和newpath的文件系统不支持创建硬链接。

您可以在此处阅读有关链接系统调用的更多信息

此外,您不能准确伪造FAT32上的硬链接或软链接。 并且还要注意,在Android中创建硬链接需要root权限。