【发布时间】:2010-09-17 18:03:59
【问题描述】:
我做了一个很糟糕的事情,但文件仍然打开并正在使用中。
关注 (Link to a specific inode),
从/proc/###/fd/### 复制到新文件没有用,因为:
- 文件正在更改
- 文件大小为 40G,磁盘已满(150MB 可用)
我正在尝试将它重新链接到文件系统(取消删除它)。
COMMAND PID USER FD TYPE DEVICE SIZE NODE NAME
vmware-vm 4281 root 126u REG 253,0 40020664320 10928132 /var/mnt/partial.img
我用“wc /proc/4281/fd/126”打开文件,然后暂停它。
我使用 debugfs(灵感来自 dag wieers)在文件系统上创建了一个链接,然后编辑了目录条目以将删除时间设置为 0,更新链接计数。重启并运行 fsck 一切正常。
【问题讨论】:
-
释放一些空间以便您可以复制它。
-
为什么会这样?这是 ServerFault 的理想选择 - 管理员可能知道更多技巧。
-
我完成了使用 debugfs 将其重新链接到文件系统的任务。
-
内容再次发生变化,副本将过期。
标签: c linux filesystems