准备工作
本文假设我们至少具有 Linux 的基本知识,知道如何使用 shell、root 用户或者在服务器上设置 sudo 权限的非 root 用户帐户。
对于其他准备工作:
- 带有网络接口的 Linux。
- 确保 2 个 linux 具有相同的存储大小。
- 两个 linux 都已使用救援操作系统或者其他实时操作系统启动,因此我们不能使用磁盘中已安装的操作系统启动。
我们将在示例中使用:
来源
服务器-A : /dev/sda
目的地
服务器-B : /dev/sda
警告:确保以下所有命令都在救援操作系统下执行。
在本教程中,我们将介绍如何通过网络克隆 Linux 硬盘分区,在本教程中,我们将使用 dd 命令。
对于不知道 dd 是什么的人来说,它是 Unix 和类 Unix 操作系统的命令行实用程序,其主要目的是转换和复制文件。
克隆 Linux 硬盘的优势在于我们不需要重新安装和重新配置应用程序,尤其是在我们用作服务器的 Linux 中。
1. 使用 dd 通过 SSH 克隆磁盘分区
使用 dd over ssh 从服务器 A 到服务器 B 克隆整个 Linux 磁盘分区。
假设我们使用 root 用户。
在服务器 A(源)中运行此命令:
# dd bs=16M if=/dev/sda | ssh root@serverB "dd bs=16M of=/dev/sda"
如果我们只想克隆某个分区,只需像下面这些命令一样选择要克隆的分区,例如,我们将克隆 /dev/sda3 分区
在服务器 A(源)中运行此命令:
# dd bs=16M if=/dev/sda3 | ssh root@serverB "dd bs=16M of=/dev/sda3"
总结
我们可以选择上述两种方法,当我们需要从具有相同磁盘存储空间的不同数据中心迁移时,通过网络克隆磁盘分区非常有用。
www. On IT Road .com
2. 使用 dd over telnet 和 bzip 压缩克隆磁盘分区
使用 telnet 和 bzip 进行克隆具有减少克隆时间的优势,但请确保使用安全网络。
假设 server-B 的 IP 地址为 192.168.100.2.
在服务器 B(目标)中运行此命令:
# nc -l -p 19000 | bzip2 -d | dd bs=16M of=/dev/sda
在服务器 A(源)中运行此命令:
# dd bs=16M if=/dev/sda | bzip2 -c | nc 192.168.100.2 19000
基于上面的这 2 个命令,我们将使用端口 19000 连接到服务器 B。
日期:2020-09-17 00:13:17 来源:oir作者:oir