Difference between revisions of "Cloning a computer"

From Linuxintro
imported>ThorstenStaerk
(local - this did not work)
imported>ThorstenStaerk
Line 11: Line 11:
 
  cd /
 
  cd /
 
  tar -cvz $(ls | grep -v proc)  | ssh root@''192.168.0.5'' "cat >slash.tar.gz"
 
  tar -cvz $(ls | grep -v proc)  | ssh root@''192.168.0.5'' "cat >slash.tar.gz"
 +
Afterwards you may want to change
 +
* IP address, netmask, gateway, name server, time server, hostname
 +
* /etc/fstab to contain generic device names like /dev/sda1 instead of /dev/disk/by-uuid/7e9e1890-312e-43eb-8ebb-82fe03b62732
 +
* /boot/grub/menu.lst to contain generic device names
  
 
== Clone any computer ==
 
== Clone any computer ==

Revision as of 10:36, 26 January 2013

Cloning a computer means you have one computer and want to copy the complete harddisk to another. This can mean different things and can have different reasons.

Reasons

  • You want to have a stand-in computer in case your "pet computer" breaks. In this case it is enough to copy every file from hard disk A to hard disk B.
  • You want to virtualize your computer. In this case you will have to dump every byte from your source (physical) to your target (virtual) computer.

Over the network

Clone a Linux computer

When cloning a Linux installation, you will be able to pack all files, like that:

cd /
tar -cvz $(ls | grep -v proc)  | ssh root@192.168.0.5 "cat >slash.tar.gz"

Afterwards you may want to change

  • IP address, netmask, gateway, name server, time server, hostname
  • /etc/fstab to contain generic device names like /dev/sda1 instead of /dev/disk/by-uuid/7e9e1890-312e-43eb-8ebb-82fe03b62732
  • /boot/grub/menu.lst to contain generic device names

Clone any computer

This is how you can clone the harddisk of any computer, even if it is an encrypted Windows computer. Boot the computer from Knoppix, open a console, enter

dd if=/dev/sdx | bzip2 -z | ssh root@192.168.0.5 "(cat >backup-sdx.bz2)"

Be sure to replace /dev/sdx by the harddisk you want to clone and 192.168.0.5 by your target computer's IP.

local

Local cloning is e.g. to a USB disk to make a USB disk bootable. In this case we assume the target disk is /dev/sdx2. To clone your harddisk:

  • make sure there is no DVD, CD, network drive and other things mounted
  • mount the target harddisk to /mnt:
mount /dev/sdx2 /mnt
cd /
tar -cv $(ls | grep -v proc | grep -v sys | grep -v mnt) | ( cd /mnt; tar xv )
mkdir /mnt/proc /mnt/sys /mnt/mnt