问题标签 [xattr]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
macos - xattr -w 将元数据写入文件 - 语法问题
测试在 Mac OSX 中将元数据写入文件的能力。任何帮助将不胜感激,因为我对 unix 语法知之甚少。
在终端。为什么这行得通;
但事实并非如此;
显然,有时我需要将元数据标记作为包含空格的字符串写入。我原以为转义空格会起作用。
tar - Tar 不保留“受信任”命名空间的扩展属性
解释
我正在使用 tar 创建包含文件夹的存档,其中一些文件具有扩展属性。
包括这些:
trusted.size=5
trusted.test
我以这种方式创建并提取了存档:
问题
提取文件后,我尝试查看属性:
但是属性总是缺失。我如何保留这些属性?
c - 如何在不打开文件的情况下从文件中获取扩展文件属性
我和我的搭档在这件事上已经有一段时间了。我们需要查看文件扩展文件属性,以检查我们在其中放置的标志。为此,我们认为我们需要文件的 dentry,但我们无法弄清楚如何获得它。我们有一个有效的 Inode 和文件路径。有任何想法吗?
xcode - 递归 xattr 严重失败
我一直在尝试找出一种方法来递归删除xattr
某些文件的所有内容,但是,以前的方法似乎都不再起作用了;可能还有一个新引入的错误?
..现在是大结局!
哦,看它xattr
在泥土中发现了一个……知道如何,什么或谁xattr
如此严重地破坏了该工具会很有趣。我只需要递归地删除扩展属性,真的!
macos - 我应该设置什么 com.apple.quarantine 值来将文件标记为潜在恶意?
我正在制作一个桌面应用程序,它将打开文件(LHTML 格式)并且可以将文件(任何格式)保存到用户的计算机上。换句话说,用户可能:
something.lhtml
从他们收到的电子邮件中下载- 打开
something.lhtml
- 被此应用程序提示保存
stuff.ppt
(其中的内容由stuff.ppt
决定something.lhtml
) - 双击
stuff.ppt
当用户打开stuff.ppt
时,我希望他们在打开文件之前得到提示,就好像他们是stuff.ppt
从电子邮件中下载的一样。something.lhtml
所以...如果我将的当前 com.apple.quarantine
扩展属性 复制到stuff.ppt
,是否保证在stuff.ppt
打开时强制提示?
如果要保存的文件不是.ppt
其中之一,那么复制该com.apple.quarantine
值是否仍然足够?
.exe
.pdf
.dmg
.app
这个问题还有意义吗?:)
macos - 如何对 macOS 二进制文件进行代码签名以停止防火墙权限请求?
领结应用程序在这里:http ://bowtieapp.com 。二进制文件但不是源代码可用。
它的问题macOS Sierra 10.12.5 Beta
在于,活动防火墙会导致它在每次启动时都请求防火墙权限。我怀疑这只能通过代码设计来解决。
有一个旧修复似乎不再起作用: https ://ivadrenaline.wordpress.com/2015/07/07/do-you-want-the-application-to-accept-incoming-network-connections/
您可以签署框架,但是当您签署整个应用程序时,您会得到:
谷歌搜索该错误会导致:https ://developer.apple.com/library/content/qa/qa1940/_index.html
但是,虽然xattr -cr
在应用程序上运行会导致签名继续进行而不会出现错误,但它仍然不会阻止防火墙对话框权限请求的出现。
我还尝试deep
了无效的签名过程版本。
我认为 Bowtie 有应用程序本身和一个帮助应用程序,因此它可能有多个可执行文件,并且与此项目相关:具有多个可执行文件的应用程序出现签名但触发防火墙警告 另外: 为什么 OSX 不断要求我的防火墙权限签名的应用程序? 这个有希望的答案也不起作用: https ://stackoverflow.com/a/40067738/365478
解决方法是什么?
nfs - NFS 可以安装在 openstack swift 存储节点之一上吗?
目前,我在虚拟盒子中安装了一个 CentOS,它运行的是由 SAIO 安装的 openstack swift。
问题:数据不会存储在我挂载 nfs 的节点中。
比如我通过curl创建一个容器,输出返回201。但是mounted目录下没有数据。我参考文件/var/log/swift/proxy.error,它显示
Error Insufficient storage balabala...
有人能帮助弄清楚为什么会发生这种情况以及如何解决吗?
提前致谢!
当然,有一些关于挂载节点的日志。通过遵循 SAIO 指南,除了 ${USER} 之外,配置几乎保持不变。我使用“osddev”作为用户名和组名。
/mnt/sdb1 上的 /dev/sdb1 类型 xfs (rw,noatime,nodiratime,seclabel,attr2,nobarrier,inode64,logbufs=8,noquota)
我在 /mnt/sdb1 下得到了 4 个目录,分别命名为 1、2、3 和 4。我在目录'2'上安装了nfs,
我这样安装:
mount.nfs 192.168.0.1:/mnt/path/to/mount /mnt/sdb1/2
命令'mount'的输出就像
192.168.0.1:/mnt/path/to/mount on /mnt/sdb1/2 type nfs4(rw,relatime,vers=4.0,rsize=1048576,wsize=1048576,namlen=...,hard,proto=tcp,端口=0,timeo=600,retrans=2,sec=sys,clientaddr=192.168.0.2,local_lock=none,addr=192.168.0.1)
'mnt' 的文件夹结构如下:
/mnt/sdb1 /1 /node /sdb1 /accounts /containers /objects /tmp /2 /node /sdb2 /containers /tmp /3 /node /sdb3 /accounts /containers /objects /tmp /4 /node /sdb4 /accounts /容器 /对象 /tmp
挂载完成后,我尝试创建一个新容器,它返回 201 created,在目录 /mnt/sdb1 下有一个名为 '48ce59400b16f806fe2fee7e40e236as.db' 和另一个名为 '48ce59400b16f806fe2fee7e40e236as.db.pending' 的文件/2/node/sdb2/containers/291/6ab/48ce59400b16f806fe2fee7e40e236as 与/mnt/sdb1下的其他目录相同。
当我尝试创建一个新对象时,/mnt/sdb1/2/node/sdb1 下有“objects”目录。但在 /mnt/sdb1/1 或 /mnt/sdb1/3 等其他目录中,存在“对象”目录。
所以我检查了 /var/log/swift 下的错误日志。我发现在日志'proxy.error'和'storage2.error'中,有一些错误,我会在下面列出:
代理错误:
Jun 8 17:26:33 localhost proxy-server: Started child 4024 Jun 8 17:27:04 localhost proxy-server: STDERR: (4024) wsgi 在http://127.0.0.1:8080/上启动 6 月 8 日 17:28:22 本地主机代理服务器:STDERR:(4024)接受('127.0.0.1',57718)6 月 8 日 17:28:22 本地主机代理服务器:STDERR:127.0.0.1 - - [08/Jun /2017 09:28:22]“GET /auth/v1.0 HTTP/1.1”200 356 0.004022(txn:tx016fa30128e74197af806-00593918b6)6 月 8 日 17:29:39 本地主机代理服务器:STDERR:(4024)接受(' 127.0.0.1',57721)6 月 8 日 17:29:41 本地主机代理服务器:错误存储不足 127.0.0.1:6020/sdb2(txn:tx45826ac5bc284bd8b15a6-0059391903)6 月 8 日 17:29:41 本地主机代理服务器:STDERR: 127.0.0.1 - - [08/Jun/2017 09:29:41]“PUT /v1/AUTH_test/annecontainer/annefile3 HTTP/1.1”201 254 1.474424(txn:tx45826ac5bc284bd8b15a6-0059391903)
storage2.error
Jun 8 17:26:31 localhost account-server: Started child 4004 Jun 8 17:26:31 localhost container-server: Started child 4007 Jun 8 17:26:32 localhost object-server: Started child 4016 Jun 8 17:27 :03 localhost object-server: STDERR: (4016) wsgi 在 127.0.0.1:6020/ Jun 8 17:27:03 启动 localhost account-server: STDERR: (4004) wsgi 在 127.0.0.1:6022/ Jun 启动8 17:27:03 localhost 容器服务器:STDERR: (4007) wsgi 在 127.0.0.1:6021/ 6 月 8 日 17:29:39 localhost 对象服务器上启动:STDERR: (4016) 接受 ('127.0.0.1' , 43279) Jun 8 17:29:40 localhost object-server: STDERR: ERROR:root:Filesystem at 9 does not support xattr#012Traceback (last last call last):#012 File "/home/osddev/swift/swift/ obj/diskfile.py",第 150 行,在 write_metadata#012 metastr[:xattr_size])#012 文件中"/usr/lib64/python2.7/site-packages/xattr-0.9.1-py2.7-linux-x86_64.egg/xattr/init .py”,第 185 行,在 setxattr#012 中返回 xattr(f).set(attr, value, options=options)#012 文件“/usr/lib64/python2.7/site-packages/xattr-0.9.1 -py2.7-linux-x86_64.egg/xattr/ init .py",第 78 行,在 set#012 中 return self._call(_setxattr, _fsetxattr, name, value, 0, options | self.options)#012 File " /usr/lib64/python2.7/site-packages/xattr-0.9.1-py2.7-linux-x86_64.egg/xattr/init _.py”,第 58 行,在 _call#012 返回 fd_func(self.value, *args)#012 文件“/usr/lib64/python2.7/site-packages/xattr-0.9.1-py2.7-linux- x86_64.egg/xattr/lib.py”,第 106 行,在 _fsetxattr#012 引发错误()#012 文件“/usr/lib64/python2.7/site-packages/xattr-0.9.1-py2.7-linux -x86_64.egg/xattr/lib.py", line 48, in error#012 raise IOError(errno, strerror)#012IOError: [Errno 95] Operation not supported Jun 8 17:29:41 localhost container-server: STDERR: (4007) 接受 ('127.0.0.1', 45775) Jun 8 17:29:41 localhost object-server: STDERR: 127.0.0.1 - - [08/Jun/2017 09:29:41] "PUT /sdb2/957 /AUTH_test/annecontainer/annefile3 HTTP/1.1" 507 263 1.300362 (txn: tx45826ac5bc284bd8b15a6-0059391903) Jun 8 17:29:41 localhost container-server: STDERR: 127.0.0.1 - - [08/Jun:49/2017 09:2 ] "PUT /sdb2/291/AUTH_test/annecontainer/annefile3 HTTP/1.1" 201 120 0.044787 (txn: tx45826ac5bc284bd8b15a6-0059391903)
到目前为止,我意识到 nfs 不支持 xattr。这会导致问题吗?
我想要做的是使用 swift-on-file 将数据存储在挂载目录中(通过 nfs),如 /mnt/sdb1/2。
linux-kernel - 修改 ext4 文件系统为文件添加自定义属性
我在 Linux 内核方面不是很有经验,所以我不知道如何做到这一点。
我要做的是修改 ext4 文件系统以在文件中添加自定义属性(例如,在创建文件时添加原始位置)。因此,不要将自定义属性添加到特定文件,而是在创建文件时自动添加到所有文件。
任何想法,或一些链接进行更深入的调查?
谢谢
shell - 使用 xattr 设置 PDF 内容创建器
我尝试选择 Finder 并使用 applescript 和 xattr 为 pdf 文件分配特定的内容创建者值。虽然脚本编译得很好,但它实际上并没有修改元数据项。如果我运行,mdls -n kMDItemCreator test.pdf
我仍然会得到 kMDItemCreator 的旧值。知道我做错了什么吗?