You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

VS Code Remote SSH误删文件无法Ctrl+Z撤销的恢复问题咨询

VS Code Remote-SSH 删除操作的实际运行逻辑
  • Remote-SSH 连接建立后,VS Code 会在远端 Ubuntu 服务器启动一个后台 vscode-server 进程,所有文件操作(包括删除、重命名、修改)都由这个远端进程直接调用服务器本地文件系统接口执行,操作效果和你直接在服务器终端执行删除命令完全一致,不会经过你本地 Ubuntu 系统的文件处理链路。
  • 资源管理器面板中按删除键触发的删除操作,默认不会走系统回收站逻辑:Remote-SSH 环境下如果服务器没有预装 gvfs-trash 等兼容的回收站工具,或者你之前勾选过「永久删除不再提示」的选项,VS Code 会直接对目标文件/文件夹执行永久删除,不会在系统回收站留存可直接还原的副本。
  • Ctrl+Z 的撤销范围仅覆盖当前打开文件的未保存文本编辑操作,对已经提交到文件系统层面的删除、重命名操作无效,这也是你按下快捷键没有触发还原的直接原因。
误删文件恢复方案(针对 testdisk 恢复率低的场景)

testdisk 恢复成功率低的核心原因通常是删除操作后你没有第一时间停止对目标分区的写入,系统日志、临时文件、后续编辑操作产生的新数据覆盖了被删除文件原本占用的磁盘块,这种情况按以下优先级尝试,越靠前的方案恢复完整度越高:

  • 优先排查 VS Code 留存的历史缓存
    • 先查远端服务器的 VS Code 历史记录:远端 vscode-server 会默认留存最近打开过的所有文件的编辑历史,路径为对应用户主目录下的 .vscode-server/data/User/History/,目录下按时间戳分子文件夹存放历史版本,哪怕原文件被删除,只要缓存没被清理就可以找回。你可以执行命令 find ~/.vscode-server/data/User/History -type f -mtime -7 筛选误删操作前后7天内修改的文件,把找到的无后缀文件重命名为原文件名即可核对内容。
    • 再查本地 VS Code 缓存:如果你之前在本地打开过对应工作区,本地 Ubuntu 系统下的 VS Code 历史缓存路径为 ~/.config/Code/User/History/,可以用同样的方式按时间筛选核对。
  • 其次排查服务器侧的快照与备份
    • 如果远端是云服务器,第一时间登录云平台控制台,查看对应数据盘/系统盘是否存在误删时间点之前的自动快照,绝大多数云平台支持从快照单独恢复单个文件,不需要全量回滚磁盘,这个方案不受后续磁盘写入影响,恢复完整度100%。
    • 如果是自建服务器/物理机,排查是否配置过 rsync 定时备份、Btrfs/ZFS 文件系统快照、LVM 快照,这类备份留存的文件版本完整性远高于磁盘扫描类工具。
    • 额外检查服务器回收站配置:执行 ls ~/.local/share/Trash/files/ 查看回收站目录,虽然 Remote-SSH 默认不走回收站,但如果之前做过特殊配置,误删文件可能会被转存在这个路径下。
  • 针对 Ubuntu 默认 ext4 文件系统的深度恢复
    • 立刻将误删文件所在的分区重新挂载为只读模式,避免新数据继续覆盖残留的磁盘块,执行命令:sudo mount -o remount,ro /dev/[你的目标分区名]。注意如果误删文件在系统根分区,不要直接重启服务器,重启过程会产生大量系统写入,进一步破坏残留数据。
    • 换用 ext 文件系统专属恢复工具 extundelete 做扫描,这个工具对 ext3/ext4 文件系统的 inode 识别精度高于通用扫描的 testdisk,执行恢复命令:sudo extundelete /dev/[你的目标分区名] --restore-directory [被删文件夹的原绝对路径],恢复完成的文件会存放在当前执行命令路径下的 RECOVERED_FILES 目录中。
  • 兜底方案:如果上述操作都没有找回需要的文件,且文件价值极高,立刻停止对目标磁盘的所有读写操作,对磁盘做全量只读镜像后,交给专业数据恢复机构做磁道级扫描,不要反复运行各类磁盘扫描工具,避免进一步破坏残留数据。

内容的提问来源于stack exchange,提问作者khoi vu

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.26 14:33:28