如何取消删除刚刚用“rm -R”命令删除的目录(在云驱动器中)?

Red*_*EON 12 centos mount data-recovery

我用rm -R命令删除了一个重要的目录。这是一个非常流行的主机数据。它位于/var/zpanel/hostdata/ayrintilih 删除 ayrintilih 目录后,一切都消失了。

我试图用ext4magic程序取消删除。但它需要另一个硬盘卷进行恢复。

错误信息:

ERROR: can not use "/root/recoveried" for recover directory. It's the same filesystem : "/dev/dm-0"
Run Code Online (Sandbox Code Playgroud)

我的 ISP 刚刚回复了我的请求:

Unfortunately there is no way to add another Volume to a virtual Instance. 
If it would be a dedicated Server, we could do it, but not in a Cloudserver. 
You could try to minimize the partition and create another one, that would 
count as another Volume. We also recommend to have allways a 
Backup for your Important files.
Run Code Online (Sandbox Code Playgroud)

fro*_*utz 19

取消删除越来越成为一个神话,尤其是。使用现代硬件 (SSD),删除的任何内容也会立即归零 (TRIM),因此找回任何内容的可能性为零。

你最好的办法是为你现在拥有的任何东西制作一个图像,然后使用你想要的任何工具看看是否还有任何东西可以找到。就像是:

ssh -C remoteserver dd if=/dev/theserverdisk bs=1M > local/disk.img
Run Code Online (Sandbox Code Playgroud)

最好将盒子放在救援系统中或以其他方式冻结整个盒子(只读)以进行此操作,因为此时任何和所有写入只会造成进一步的损坏。

图像完成后,您可以为其创建只读循环设备:

losetup --find --show --partscan --read-only disk.img
Run Code Online (Sandbox Code Playgroud)

然后继续在循环设备上使用您选择的任何救援工具。


ter*_*don 3

如果您可以访问另一台 Linux/Unix/OSX 等计算机,则可以使用sshfs挂载远程文件夹并备份到该文件夹​​(改编自此处的说明)。

  1. 安装sshfs 在服务器上

    yum install fuse sshfs
    
    Run Code Online (Sandbox Code Playgroud)

    如果尚未启用,您可能必须启用 EPEL 存储库。

  2. 加载FUSE模块(在服务器上

    modprobe fuse
    
    Run Code Online (Sandbox Code Playgroud)
  3. 从您的家庭计算机中选择一个目录并将其挂载到 CentOS 服务器上

    redleon@local$ mkdir /remote_backup
    
    Run Code Online (Sandbox Code Playgroud)

    现在,在远程服务器上运行此命令

    mkdir /backup
    sshfs root@1.2.3.4:/remote_backup /backup
    
    Run Code Online (Sandbox Code Playgroud)

    您需要更改为本地计算机1.2.3.4的实际 IP 。

完成后,您将在本地安装一个远程文件系统,您可以尝试运行ext4magic并告诉它备份到/backup. 我不能保证它会起作用,但似乎值得尝试。