一、基础

了解:

netcat是个计算机网络公用程式,用来对网络连线TCP或者UDP进行读写。nc命令是netcat命令的简称,都是用来设置路由器。netcat 在2001年insecure.org对nmap用户邮件列表举办的投票被推选为第二有用的网络保全工具。2003年投票结果是第四名;2006年的投票继续稳占同样第四名宝座。 来自: https://zh.wikipedia.org/wiki/Netcat

参数:

-p<通信端口>:设置本地主机使用的通信端口;
-h:在线帮助;

-l:使用监听模式,监控传入的资料;

-z:使用输入/输出模式,只在扫描通信端口时使用。

使用:

主机:指定主机的IP地址或主机名称;

端口号:可以是单个整数或者是一个范围。

CentOSA(admin,192.168.1.1): nc -lp 1234

CentOSC(client,192.168.1.2): nc 192.168.1.1 1234

二、实验环境:

左边CentOSA为需要迁移的机器。IP为192.168.1.1

右边CentOSC为迁移至的机器,配有俩快磁盘。IP为192.168.1.2

三、传送数据(三种方法):

I-普通法:

左边CentOSA使用: dd if=/dev/sdx | nc ip port

右边CentOSC使用: nc -l port | dd of=file

这是最保守的,在进行上述操作时。应该多次匹配MD5,防止文件损坏

注意:要先开启CentOSC的netcat数据监听端口,再使用CentOS传送。

缺点:不安全(可使用iptables),耗时(操作需要多次,传送文件巨大)

II-便捷法:

这是比较便捷的,但是(满足便捷)牺牲的也比较多。

注意:这里为了演示将nc的数据经过解压直接dd至磁盘

优点:便捷,传送(经过压缩)文件小

III-安全法:

使用openssh进行传送,这是最安全的。

注意:这里使用的是openssh,不是netcat!当然,使用iptables的nc传送也可以但是比较没有隧道加密的openssh更加安全。

优点:安全,保守,可保证文件完整性。

缺点:传送慢(加密的SSH一定没有不加密的NC快)

四、克隆至磁盘

dd if=<文件所在位置> of=/dev/sd<磁盘编号>

如果迁移过程有问题可以查看我的博客关于迁移系统一文:

博客园:http://www.cnblogs.com/itxdm/p/linux_lvm.html

LinuxCN: https://linux.cn/article-7718-1.html

思考与其他

1、 操作前应该多次备份资料。(小心使得万年船)

2、 操作中应该多次配对MD5值(防止出现文件损坏问题)

3、 传送中(受信任)应该开启iptables安全设置(仅ACCEPT对端连接本地PORT)

4、 传送中(因特网)应该使用SSH的方式传送(Netcat传送不加密)

5、 应该使用bzip2等压缩传送时间及流量人力成本。

Linux环境下完成远程系统迁移的更多相关文章

  1. QT在linux环境下读取和设置系统时间(通过system来直接调用Linux命令,注意权限问题)

    QT在Linux环境下读取和设置系统时间 本文博客链接:http://blog.csdn.NET/jdh99,作者:jdh,转载请注明. 环境: 主机:Fedora12 开发软件:QT 读取系统时间 ...

  2. 【转载】linux环境下大数据网站搬家

    这里说的大数据是指你的网站数据库大小至少超过了500M,当然只有50M的网站也同样可以用这样的方法来轻松安全的实现网站搬家,前提是你使用的是linux环境下的VPS或者独立服务器. 我们假设你的网站域 ...

  3. mosquitto在Linux环境下的部署/安装/使用/测试

    mosquitto在Linux环境下的部署 看了有三四天的的源码,(当然没怎么好好看了),突然发现对mosquitto的源码有了一点点感觉,于是在第五天决定在Linux环境下部署mosquitto. ...

  4. 由一个简单需求到Linux环境下的syslog、unix domain socket

    本文记录了因为一个简单的日志需求,继而对linux环境下syslog.rsyslog.unix domain socket的学习.本文关注使用层面,并不涉及rsyslog的实现原理,感兴趣的读者可以参 ...

  5. Linux环境下Hadoop集群搭建

    Linux环境下Hadoop集群搭建 前言: 最近来到了武汉大学,在这里开始了我的研究生生涯.昨天通过学长们的耐心培训,了解了Hadoop,Hdfs,Hive,Hbase,MangoDB等等相关的知识 ...

  6. 【Jmeter自学】Linux环境下Jmeter运行

    ==================================================================================================== ...

  7. 【原创】Linux环境下的图形系统和AMD R600显卡编程(1)——Linux环境下的图形系统简介

    Linux/Unix环境下最早的图形系统是Xorg图形系统,Xorg图形系统通过扩展的方式以适应显卡和桌面图形发展的需要,然而随着软硬件的发展,特别是嵌入式系统的发展,Xorg显得庞大而落后.开源社区 ...

  8. Linux环境下如何配置IP地址、MAC地址

    Linux环境下如何配置IP地址.MAC地址 1.配置IP地址 进入配置IP地址路径,进行修改即可 cd /etc/network vim interface 加入以下内容: iface eth0 i ...

  9. Linux环境下的图形系统和AMD R600显卡编程(1)——Linux环境下的图形系统简介

    转:https://www.cnblogs.com/shoemaker/p/linux_graphics01.html Linux/Unix环境下最早的图形系统是Xorg图形系统,Xorg图形系统通过 ...

随机推荐

  1. linux系统中的变量

    一.定义 所谓的变量,就是就是利用一个特定的"名称"(name)来存取一段可以变化的"值"(value),简单说来就是“用一个名称储存一个数值”.   二.设定 ...

  2. GRUB使用说明

    从Red Hat Linux 7.2起,GRUB(GRand Unified Bootloader)取代LILO成为了默认的启动装载程序.相信LILO对于大家来说都是很熟悉的.这次Red Hat Li ...

  3. 电商项目面试题 及mysql面试题 太难没啥用

    需要按照功能点把系统拆分,拆分成独立的功能.单独为某一个节点添加服务器.需要系统之间配合才能完成整个业务逻辑.叫做分布式.集群:同一个工程部署到多台服务器上.优点:1.把模块拆分,使用接口通信,降低模 ...

  4. 面向对象JS基础

    什么是面向对象?面向对象是一种思想!(废话). 面向对象可以把程序中的关键模块都视为对象,而模块拥有属性及方法.这样我们如果把一些属性及方法封装起来,日后使用将非常方便,也可以避免繁琐重复的工作.接下 ...

  5. 文件操作getc

    getc函数的作用是从打开的文件中获取一个字符,并加文件指针自动加1,获取的字符在返回值中. 我写了一个读取一个文件255个字节的程序. int main() { FILE *p; fopen_s(& ...

  6. Centos6.6升级python2到python3

    系统更新部分: 一.由于系统原有的源无法连接,需要更新为新的源.起初,首选163的源,但是由于更改源以后,无法使用yum等问题,所以直接使用上海交通大学提供的源. 修改前,将原来/etc/yum.re ...

  7. SecureCRT 下MySQL中文乱码问题终极解决方案-乾颐堂

    一.查看Linux主机系统字符集 命令: echo $LANG [root@pythontab.com ~]# echo $LANG [root@pythontab.com ~]# en_US.UTF ...

  8. [Training Video - 6] [File Reading] [Java] Read Properties file

    package com.file.properties; import java.io.FileInputStream; import java.util.Properties; public cla ...

  9. Django框架 之 信号

    Django中提供了“信号调度”,用于在框架执行操作时解耦.通俗来讲,就是一些动作发生的时候,信号允许特定的发送者去提醒一些接受者. Django内置信号 Model signals pre_init ...

  10. ethtool -p eth0 物理口一个灯在不停的闪烁

    摘自:https://blog.csdn.net/morigejile/article/details/78598645 你的  服务器有多个网卡并且已经配置好运行当中,你却没记得eth0.eth1. ...