恢复远程服务器上已删除的文件。从通过 sshfs 挂载的文件夹创建可恢复的映像

恢复远程服务器上已删除的文件。从通过 sshfs 挂载的文件夹创建可恢复的映像

我有一个可以通过 ssh 连接的远程服务器,我需要将文件从那里恢复到我的计算机(最好是文件夹结构或只是文件名),ext4magic 说我无法恢复它,因为分区相同或其他原因(当我通过 ssh 进入它时),所以我需要将它恢复到我的电脑上。现在我使用 sshfs 将远程 /dev/vda1 挂载到我的电脑上的 /mnt/vda1,我执行了一个命令,它给了我一个错误。sudo ext4magic /mnt/vda1 -f / -a $(date -d -30days +%s) -r -d ../../home/felix/Documents/rc/ ./ 打开文件系统时出现错误 21 ext4magic :退出成功

我不能那样做,所以我可能需要从中创建一个映像,然后从该映像中恢复,我可以这样做吗?怎么做?有没有办法创建 iso 文件,我可以尝试从中恢复文件?我该怎么做?谢谢。

答案1

不太清楚您想要完成什么。您只想复制文件吗?

如果您可以通过 ssh 连接到远程服务器,您也应该能够使用 scp 将文件传输到本地计算机。

假设您想将 /var/www 中的所有内容从服务器复制到本地 PC。我假设您在本地使用 Linux。

ssh user@remoteserver 
cd /var ; sudo tar czvf www.tgz www 
sudo mv www.tgz /home/user
chown user:user /home/user/www.tgz

现在从你的本地机器:

cd ~/directorywhereyouwantfile (if dir doesn't exist, create it.)
scp user@remoteserver:~/www.tgz .

if you want to extract it, do
tar xvzf ./www.tgz

scp 还可以递归复制文件

您还可以使用以下命令备份整个驱动器:

cd / && sudo tar -cvpzf backup.tar.gz --exclude=/backup.tar.gz --one-file-system /

然后将 backup.tar.gz 移动到您的主目录,并将 chown 改为您自己的用户,然后按最初所示执行 scp。请注意,您可以使用 df -h 检查是否有足够的磁盘空间来制作存档。如果您有 300GB 的磁盘和 100GB 的可用空间,则可能没有足够的空间来制作完整的备份存档,而如果您使用了 100GB 并且有 90GB 的可用空间,则您可能有足够的空间来制作备份存档。

您可能还想研究一下 rsync,因为 rsync 可以通过 ssh 工作,并且是将文件从一台 Linux 机器复制到另一台机器的绝佳方式。

相关内容