linux 服务器数据迁移
前段时间把社团服务器上的数据进行了迁移,这里记录一下大概的迁移方式。
管道的妙用。ssh 配合 tar 直接将文件传到我本机电脑:
1 | ssh -i $HOME/.ssh/tmp_rsa root@host tar -cp --exclude-from=/root/exclude.txt / | pv -ptr | tar x -C /home/xun/Workspace/sastback |
附上 exclude.txt 文件:
1 | /dev |
这里将
var/lib/docker
去掉是因为里面东西太多了备份的时候会报错。
没有找到解决方法,当时时间也急。
使用 rsync 将一些 docker 的容器备份一下:
1 | rsync -av -e 'ssh -p port -i /home/xun/.ssh/tmp_rsa' root@host:/sastback /home/xun/Workspace/docker_back |
在下面的例子中,/location/of/new/root
代指新的根目录所在的文件夹。用 chroot
命令之前先临时挂载 API 文件系统:
1 | cd /location/of/new/root |
chroot
到这个备份的目录下后需要设置以下环境变量:
1 | export PATH="$PATH:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin" |
很遗憾,我也不知道能不能真正的恢复数据。
不过
SAST FOREVER :)
Author: xun
Link: http://blog.fooo.in/2023/06/22/linux/linux-data-mig/
License:
本作品采用知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议进行许可。