UBIFS可以设置为ACL吗?

UBIFS可以设置为ACL吗?

使用 systemd 241 在内核 4.20.17 上运行 Debian Buster:

+PAM +AUDIT +SELINUX +IMA +APPARMOR +SMACK +SYSVINIT +UTMP +LIBCRYPTSETUP +GCRYPT +GNUTLS +ACL +XZ +LZ4 +SECCOMP +BLKID +ELFUTILS +KMOD -IDN2 +IDN -PCRE2 default-hierarchy=hybrid

我的 nand (/dev/mtd3) 分区上有两个 ubifs 卷:

ubi0:rootfs on / type ubifs (ro,relatime,assert=read-only,ubi=0,vol=1)
/dev/ubi0_2 on /var type ubifs (rw,relatime,assert=read-only,ubi=0,vol=2)

我收到以下错误:

systemd-journald[747]: Failed to set ACL on /var/log/journal/2f572c0abab24e2fafc1b969aba78f1f/user-1000.journal, ignoring: Operation not supported

我可以将 UBIFS 设置为 ACL,如果可以,我该如何调整我的 fstab 来启用它?

/dev/ubi0_2 /var ubifs defaults,auto 0 0

答案1

不,根据UBIFS 文档,UBIFS 中未实现 ACL 支持:

扩展属性

如果启用相应的配置选项,UBIFS 支持扩展属性(不需要额外的挂载选项)。它支持用户、可信和安全名称空间。但是,未实现访问控制列表 (ACL) 支持。

请注意,当前 mkfs.ubifs 会忽略扩展属性,并且不会将它们写入目标文件系统映像。

同样,内核源代码指出ACL 支持未实现

实现 ACL 的文件系统通常acl.c在源中有一个文件。 JFFS2有这样一个文件并支持 ACL(例如:其mkfs.jffs2命令有一个--with-posix-acl选项)。

如果确实需要 ACL 功能,并且您的系统可以负担得起(例如:JFFS2 可能使用更多 RAM,并且如果较大,则安装时间更长)也许是小的如果需要此功能,可以考虑使用单独的 JFFS2 文件系统。在 UBI 上使用 JFFS2(以提高磨损均衡)似乎很好,并且在比较各种解决方案时已经进行了研究,因此这可能是一种解决方法。

参考文献:

相关内容