微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

MacOS 中 webdavfs_agent 不可见的大型临时文件

如何解决MacOS 中 webdavfs_agent 不可见的大型临时文件

MacOS 10.14.6,启动盘为 apfs 卷:

我在 shell 中使用 cp 将 4GB 大文件从外部 HD 复制到安装的 WebDAV 存储。 引导盘上的剩余空间约为 3 GB。复制失败,“设备上没有剩余空间”,实际上启动盘只有几 MB,同时 MacOS 对话框在无法再创建交换空间时触发(要求关闭应用程序)。

怀疑来自 webdav 复制的临时文件,但未找到。只有当 webdavfs_agent 进程被杀死 -9 时才会释放磁盘空间。

在启动盘上使用更多空间再试一次,它会启动 webdav_agent:

username         16856   3.5  0.0  4353692   8344   ??  Ss    6:19pm   0:15.35 webdavfs_agent -o noautomounted -o browse -o nordonly -a4 -vwebdav.targetcloud.tld https://webdav.targetcloud.tld /Volumes/webdav.targetcloud.tld

lsof套接字和管道中显示了一些小的和一个大的临时文件,源文件的精确字节数为 4411100732:

> lsof |grep webdav
[...]
webdavfs_ 16856 username   16u     unix 0xeb6c1635068d8d4d        0t0             /tmp/.webdavUDS.AkRcyY
webdavfs_ 16856 username   17u      REG                1,9      34820 12888785921 /private/tmp/.webdavcache.16856.Z0PTWh/webdav.3oCPbe
webdavfs_ 16856 username   18u      REG                1,9          0 12888785997 /private/tmp/.webdavcache.16856.Z0PTWh/webdav.86QuAz
webdavfs_ 16856 username   19u      REG                1,9       4096 12888785960 /private/tmp/.webdavcache.16856.Z0PTWh/webdav.sxHw8w
webdavfs_ 16856 username   20u      REG                1,9       6148 12888785961 /private/tmp/.webdavcache.16856.Z0PTWh/webdav.OLc0XV
webdavfs_ 16856 username   21u      REG                1,9 4411100732 12888786081 /private/tmp/.webdavcache.16856.Z0PTWh/webdav.nvLU9U

但是,普通的列表命令根本不显示文件。它们也不被 du -hs 计算在内。

drwxrwxrwt  14 root      wheel  - 448  9 Feb 18:19 ../
sh-3.2# whoami
root
sh-3.2# ls -laFOGp@Oe /private/tmp/.webdavcache.16856.Z0PTWh/
total 0
drwx------   2 username  wheel  -  64  9 Feb 18:24 ./
drwxrwxrwt  14 root      wheel  - 448  9 Feb 18:19 ../

在第一次尝试中,上传一个不完整的文件

在第二次尝试中,cp 进程在经过长时间的上传后没有错误地终止,但在目标云中,文件显示为 0 字节。这可能可以通过超时来解释,在云运营商的支持论坛中提到。

问题在这里

  • 为什么webdavfs_agent 将完整文件复制到临时磁盘空间?
  • 对于作为 root 的合格 ls 命令来说,文件如何完全不可见

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐


Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其他元素将获得点击?
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。)
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbcDriver发生异常。为什么?
这是用Java进行XML解析的最佳库。
Java的PriorityQueue的内置迭代器不会以任何特定顺序遍历数据结构。为什么?
如何在Java中聆听按键时移动图像。
Java“Program to an interface”。这是什么意思?