Linode SSH 备份: 通过SSH备份或者恢复整个硬盘

Linode SSH 备份, 通过 Linode 面板提供的完善功能,你可以利用 SSH 将你的 Linode 整个硬盘在不同机器之间传输,即备份和恢复。同时 SSH 的这个高级用法,也非常适合在 Linux 主机之间使用。在这篇指引中,你将Get 到这项技能。

准备工作

检查接收机器已经安装好 SSH,默认已经安装。

启动 Linode 进入安全模式

在启动数据传输前,请让你的 Linode 系统进入救援模式,并启动 SSH:

  1. 启动并进入救援模式
  2. 通过 Lish 进入Linode 系统后,首先修改 root 密码:
    passwd
  3. 输入 root 密码
  4. 输入以下命令启动 SSH 服务:
    /etc/init.d/ssh start

Linode SSH 备份 硬盘数据

现在 Linode 已经运行在救援模式下了,你可以随心所欲的折腾你的硬盘数据了,下面是介绍如何将 Linode 硬盘通过 SSH 传输(备份)到其他主机上:

  1. 在接收(备份)机器上输入以下命令,将123.45.67.89 替代为你的 Linode IP地址,以及/home/archive/linode.img 替换为你想备份到的路径:
    ssh [email protected] "dd if=/dev/xvda " | dd of=/home/archive/linode.img
    
  2. 接收机器SSH 连接上 Linode后出现以下提示,输入“yes”,并回车:
    The authenticity of host '123.45.67.89 (123.45.67.89)' can't be established.
    RSA key fingerprint is 39:6b:eb:05:f1:28:95:f0:da:63:17:9e:6b:6b:11:4a.
    Are you sure you want to continue connecting (yes/no)? yes
    
  3. 输入 Linode 的 root 密码:
    Warning: Permanently added '123.45.67.89' (RSA) to the list of known hosts.
    [email protected]'s password:
    

    传输开始启动,你会看到以下结果:

    4096000+0 records in
    4096000+0 records out
    2097152000 bytes (2.1 GB) copied, 371.632 seconds, 5.6 MB/s
    4096000+0 records in
    4096000+0 records out
    2097152000 bytes (2.1 GB) copied, 364.002 s, 5.8 MB/s
    

    拷贝会持续一段时间,请耐心等待,假如你看到 Write failed: Broken pipe 的错误提示,请重新执行本步骤。

检查硬盘

当备份完成后,你可以通过 mount 的方式检查传输是否有问题

  1. 使用 Root 用户登陆接收主机(Linux 系统):
    su
    
  2. 创建目录:
    mkdir linode
    
  3. 加载接收的硬盘到该目录,命令如下:
    mount -o loop linode.img linode
    
  4. 输入下面命令来检查文件是否缺失:
    ls linode/
    

    你应该看到类似的文件列表,如下,表明你的传输已经成功:

    bin   dev  home  lost+found  mnt  proc  sbin     srv  tmp  var
    boot  etc  lib   media       opt  root  selinux  sys  usr
    

至此,你已经成功完成了 Linode 硬盘的备份。
上传硬盘数据到 Linode
当你有了一份你的 Linux 硬盘拷贝后,某天你想要恢复这个系统时,应该怎么做呢.

  1. 准备好一块空白的新硬盘,在 Linode 面板上选择 Add a disk(创建一块新硬盘)Linode SSH 备份
  2. 输入 Label(名称),并分配足够的Size(大小)给新的数据。最后点击 Save Changes(保存更改)
  3. 启动并进入救援模式
  4. 登陆保存待恢复硬盘数据的主机,输入以下命令,其中/home/archive/linode.img/为之前保存硬盘镜像的路径;123.45.67.89 替换为你的 Linode 主机 IP。
     dd if=/home/archive/linode.img | ssh [email protected] "dd of=/dev/xvda"
    

    当传输完成,你会看到类似如下的结果:

     49807360+0 records in
     49807360+0 records out
     25501368320 bytes transferred in 9468.878375 secs (2693177 bytes/sec)
     49807360+0 records in
     49807360+0 records out
     25501368320 bytes (26 GB) copied, 9462.12 s, 2.7 MB/s
    

    拷贝会持续一段时间,请耐心等待,假如你看到 Write failed: Broken pipe 的错误提示,请重新执行本步骤。

检查硬盘

和上面类似,当上传完成后,你也需要通过 mount 的方式检查传输是否有问题

  1. 创建目录:
    mkdir linode
    
  2. 加载接收的硬盘到该目录,命令如下:
    mount /dev/xvda linode
  3. 输入下面命令来检查文件是否缺失:
    ls linode/
    

    你应该看到类似的文件列表,如下,表明你的传输已经成功:

    bin   dev  home  lost+found  mnt  proc  sbin     srv  tmp  var
    boot  etc  lib   media       opt  root  selinux  sys  usr
    

从恢复硬盘启动系统

你需要创建一个新的系统配置文件,然后设置以接收到的硬盘作为启动盘。

  1. 在 Linode 后台面板,选择 Add a New Configuration(创建新的系统配置)Linode SSH 备份
  2. 输入新的系统配置 Label(名称),在 Block Device Assignment (设备分配)一栏中,设置 /dev/xvda (启动盘)为刚刚接收并恢复数据进去的新硬盘。设置 SWAP 分区到 /dev/xvdb 。点击 Save changes(保存配置)。
  3. 回到 Linode 后台 dashboard 页面,选择刚刚创建的系统配置,并点击 Reboot(重启).
  4. 这样,就完成了 Linode 备份 与硬盘恢复。

发表评论

您的电子邮箱地址不会被公开。 必填项已用*标注

Scroll to Top
Scroll to Top