我正在尝试按如下方式设置文件属性:
当我尝试setxattr为
时if (setxattr("foo.txt", "user.test", "test", 4, XATTR_CREATE) == -1)
perror("");
我收到错误,因为操作不受支持
有什么事要启用吗? 如何解决这个问题?
答案 0 :(得分:5)
来自setxattr
返回值
On success, zero is returned. On failure, -1 is returned and errno is set appropriately. ... If extended attributes are not supported by the file system, or are disabled, errno is set to ENOTSUP.
因此,您的文件系统不支持扩展属性(例如,ext [234],cifs,btrfs),或者在内核版本或挂载时禁用它们。
对于NFS,没有单独的开关来启用内核配置中的扩展属性。当您启用对fs/nfs/dir.c
或CONFIG_NFS_V3
的支持时,似乎已启用源CONFIG_NFS_V4
。但NFS仍然依赖于底层文件系统。因此,您还必须在服务器端启用扩展属性。
安装ext2的选项
...
的 user_xattr | nouser_xattr 强>
支持“用户”。扩展属性(或不)。