Linux How To Clone One System Harddrive to another remote system -

Linux How To Clone One System Harddrive to another remote system

The easiest way is to use SSH and DD or a combination of netcat.  SSH will be a little slower due to encryption but is the most secure way (on two older systems the average clone speed is about 40-50MB/s).  This is also OS independent as it doesn't matter what the source OS is because you are literallly cloning the drive so you retain the partition table and settings.


Clone HDD using SSH and DD

dd if=/dev/sourcedrive | ssh "dd of=/dev/destinationdrive"

However especially in Linux you'll want to do a fsck on all partitions on the remote drive or it probably won't boot because the filesystem recognizes the partitions are not right due to the different drive sizes. More info here.

Note you will need to use sudo or root on both systems.  I also like to use a live CD/USB/Network on the remote system so that the operation can completely cleanly (especially helpful if that would be the only disk device on the remote system).




Clone HDD using netcat (nc)


This is the faster but less secure way someone could accidentally or maliciously send random/wrong data to the remote nc causing corruption.  There is of course the risk of eavesdropping where an attacker could essentially have a copy of your cloned hard drive too.

First setup the remote server.

Remote Server Setup

nc -l 29000|dd of=/dev/destinationdrive

This tells nc to listen on port 29000 and write the data to /dev/destinationdrive

Now we are ready to push the source drive from the source server.

Source Server

dd if=/dev/sourcedrive| nc remoteserver 29000

This tells dd to take data from /dev/sourcedrive and send it to an nc server at remoteserver on port 29000

  • sudo: unable to resolve host
  • "Object of class WP_Term could not be converted to string"
  • Wordpress Instagram Post Modify Plugin To Add Tags
  • Linux input/output error invalid program cannot read data on some CD-Rs and DVD-Rs on ASUS BW-16D1HT
  • Installing SSL Certificate with Chain Intermediary CA File
  • PHP Warning: Cannot load module 'XCache' because conflicting module 'apc' is already loaded in Unknown on line 0
  • Unable to load dynamic library '/usr/lib64/php/modules/' - /usr/lib64/php/modules/ cannot open shared object file: No such file or directory in Unknown on line 0
  • How to start screen in bash script or from /etc/rc.local on startup as a specific user
  • Linux How To Clone One System Harddrive to another remote system
  • Ubuntu/Debian/Linux won't boot and drops to Busybox shell after cloning HDD with dd
  • Unable to negotiate with port 22: no matching host key type found. Their offer: ssh-dss Solution
  • Centos 7 Password Reset
  • MySQL Adding New Field to Existing Database Table
  • MySQL Cannot Update/Write to any database table solution
  • Centos How To Update to Glibc 2.14 Plus
  • php remove last letters of string
  • MySQL Maximum INT Size Truncation Issue/Warning
  • MySQL How To Add New Field Column To Existing Table
  • mysql how to reset passwords with a few commands
  • htaccess apache how deny/allow to block or allow by IP address