该com.apple.quarantine
扩展属性可能什么都没有做与您正在与Apache遇到的问题。它们是10.5中添加的文件隔离功能的一部分:
文件隔离是Leopard中的一项新功能,旨在保护用户免受特洛伊木马攻击。它允许从Internet下载文件内容的应用程序将文件放入“隔离区”,以表明该文件可能来自不可靠的来源。应用程序只需将值分配给一个或多个隔离属性即可隔离文件,隔离属性保留有关文件何时何地的信息。
当使用Launch Services API打开隔离的文件并且该文件似乎是应用程序,脚本或其他可执行文件类型时,Launch Services将显示警报,以确认用户了解该文件是某种应用程序。
在以下情况com.apple.quarantine
下可以添加扩展属性:
- 您使用Safari,Chrome或Transmission等隔离应用程序下载文件。对于Firefox之类的一些应用程序,必须在中启用隔离
/System/Library/CoreServices/CoreTypes.bundle/Contents/Resources/Exceptions.plist
。
- 您可以使用Archive Utility或OS X
tar
或的应用程序提取档案zip
。
- 您使用
LSFileQuarantineEnabled
在中将应用程序设置为true 的应用程序创建文件Info.plist
。
扩展属性具有用于隔离状态,时间戳记,发起隔离事件的代理以及有时是UUID的字段:
$ xattr -p com.apple.quarantine Worksheet_v10.4.pdf
0042;51ea420b;Safari.app;5E2F48EA-1356-4D57-BFEA-571EE8ADC08C
$ date -r 0x51ea420b
Sat Jul 20 10:53:47 EEST 2013
$ sqlite3 ~/Library/Preferences/com.apple.LaunchServices.QuarantineEventsV2 .dump|grep 5E2F48EA-1356-4D57-BFEA-571EE8ADC08C
INSERT INTO "LSQuarantineEvent" VALUES('5E2F48EA-1356-4D57-BFEA-571EE8ADC08C',395999627.472166,'com.apple.Safari','Safari','http://images.apple.com/server/docs/Worksheet_v10.4.pdf',NULL,NULL,0,NULL,'http://images.apple.com/',NULL);
第一个字段是十六进制的位字段,例如,第一次打开文件后,通常会设置第七个位(2 ^ 6或0x40)。
您可以使用删除扩展属性xattr -dr com.apple.quarantine ~/Sites
,但对Apache可能不会产生任何影响。但是,它将禁用“是从Internet下载的文件”对话框。