Linux环境下完成远程系统迁移
一、基础
了解:
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环境下完成远程系统迁移的更多相关文章
- QT在linux环境下读取和设置系统时间(通过system来直接调用Linux命令,注意权限问题)
QT在Linux环境下读取和设置系统时间 本文博客链接:http://blog.csdn.NET/jdh99,作者:jdh,转载请注明. 环境: 主机:Fedora12 开发软件:QT 读取系统时间 ...
- 【转载】linux环境下大数据网站搬家
这里说的大数据是指你的网站数据库大小至少超过了500M,当然只有50M的网站也同样可以用这样的方法来轻松安全的实现网站搬家,前提是你使用的是linux环境下的VPS或者独立服务器. 我们假设你的网站域 ...
- mosquitto在Linux环境下的部署/安装/使用/测试
mosquitto在Linux环境下的部署 看了有三四天的的源码,(当然没怎么好好看了),突然发现对mosquitto的源码有了一点点感觉,于是在第五天决定在Linux环境下部署mosquitto. ...
- 由一个简单需求到Linux环境下的syslog、unix domain socket
本文记录了因为一个简单的日志需求,继而对linux环境下syslog.rsyslog.unix domain socket的学习.本文关注使用层面,并不涉及rsyslog的实现原理,感兴趣的读者可以参 ...
- Linux环境下Hadoop集群搭建
Linux环境下Hadoop集群搭建 前言: 最近来到了武汉大学,在这里开始了我的研究生生涯.昨天通过学长们的耐心培训,了解了Hadoop,Hdfs,Hive,Hbase,MangoDB等等相关的知识 ...
- 【Jmeter自学】Linux环境下Jmeter运行
==================================================================================================== ...
- 【原创】Linux环境下的图形系统和AMD R600显卡编程(1)——Linux环境下的图形系统简介
Linux/Unix环境下最早的图形系统是Xorg图形系统,Xorg图形系统通过扩展的方式以适应显卡和桌面图形发展的需要,然而随着软硬件的发展,特别是嵌入式系统的发展,Xorg显得庞大而落后.开源社区 ...
- Linux环境下如何配置IP地址、MAC地址
Linux环境下如何配置IP地址.MAC地址 1.配置IP地址 进入配置IP地址路径,进行修改即可 cd /etc/network vim interface 加入以下内容: iface eth0 i ...
- Linux环境下的图形系统和AMD R600显卡编程(1)——Linux环境下的图形系统简介
转:https://www.cnblogs.com/shoemaker/p/linux_graphics01.html Linux/Unix环境下最早的图形系统是Xorg图形系统,Xorg图形系统通过 ...
随机推荐
- linux系统中的变量
一.定义 所谓的变量,就是就是利用一个特定的"名称"(name)来存取一段可以变化的"值"(value),简单说来就是“用一个名称储存一个数值”. 二.设定 ...
- GRUB使用说明
从Red Hat Linux 7.2起,GRUB(GRand Unified Bootloader)取代LILO成为了默认的启动装载程序.相信LILO对于大家来说都是很熟悉的.这次Red Hat Li ...
- 电商项目面试题 及mysql面试题 太难没啥用
需要按照功能点把系统拆分,拆分成独立的功能.单独为某一个节点添加服务器.需要系统之间配合才能完成整个业务逻辑.叫做分布式.集群:同一个工程部署到多台服务器上.优点:1.把模块拆分,使用接口通信,降低模 ...
- 面向对象JS基础
什么是面向对象?面向对象是一种思想!(废话). 面向对象可以把程序中的关键模块都视为对象,而模块拥有属性及方法.这样我们如果把一些属性及方法封装起来,日后使用将非常方便,也可以避免繁琐重复的工作.接下 ...
- 文件操作getc
getc函数的作用是从打开的文件中获取一个字符,并加文件指针自动加1,获取的字符在返回值中. 我写了一个读取一个文件255个字节的程序. int main() { FILE *p; fopen_s(& ...
- Centos6.6升级python2到python3
系统更新部分: 一.由于系统原有的源无法连接,需要更新为新的源.起初,首选163的源,但是由于更改源以后,无法使用yum等问题,所以直接使用上海交通大学提供的源. 修改前,将原来/etc/yum.re ...
- SecureCRT 下MySQL中文乱码问题终极解决方案-乾颐堂
一.查看Linux主机系统字符集 命令: echo $LANG [root@pythontab.com ~]# echo $LANG [root@pythontab.com ~]# en_US.UTF ...
- [Training Video - 6] [File Reading] [Java] Read Properties file
package com.file.properties; import java.io.FileInputStream; import java.util.Properties; public cla ...
- Django框架 之 信号
Django中提供了“信号调度”,用于在框架执行操作时解耦.通俗来讲,就是一些动作发生的时候,信号允许特定的发送者去提醒一些接受者. Django内置信号 Model signals pre_init ...
- ethtool -p eth0 物理口一个灯在不停的闪烁
摘自:https://blog.csdn.net/morigejile/article/details/78598645 你的 服务器有多个网卡并且已经配置好运行当中,你却没记得eth0.eth1. ...