Difference between revisions of "Cloning a computer"

From Linuxintro
imported>ThorstenStaerk
imported>ThorstenStaerk
(Clone any computer locally)
Line 28: Line 28:
  
 
= local =
 
= local =
 +
 +
== Clone a Linux computer ==
 
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:
 
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
 
* make sure there is no DVD, CD, network drive and other things mounted
Line 36: Line 38:
 
  tar -cv $(ls | grep -v proc | grep -v sys | grep -v mnt) | ( cd /mnt; tar xv )
 
  tar -cv $(ls | grep -v proc | grep -v sys | grep -v mnt) | ( cd /mnt; tar xv )
 
  [[mkdir]] /mnt/proc /mnt/sys /mnt/mnt
 
  [[mkdir]] /mnt/proc /mnt/sys /mnt/mnt
 +
 +
== Clone any computer ==
 +
This is how you can clone the harddisk of any computer locally (e.g. to a USB drive), even if it is an encrypted Windows computer.
 +
* boot the computer from Knoppix
 +
* [[open a console]]
 +
* mount the USB disk, e.g.
 +
mount /dev/sdz1 /mnt/usb
 +
* enter
 +
[[dd]] if=/dev/sd''x'' | bzip2 -z | cat >/mnt/usb/backup-sd''x''.bz2
 +
Be sure to replace /dev/sd''x'' by the harddisk you want to clone.

Revision as of 14:31, 16 May 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

To store a backup of one computer on the other via network, use the command:

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

To clone a computer over the network, say:

cd /
tar -cv $(ls | grep -v proc)  | ssh root@192.168.178.3 "(cd /public/ubunturoot; tar xv )"

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

Clone a Linux computer

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

Clone any computer

This is how you can clone the harddisk of any computer locally (e.g. to a USB drive), even if it is an encrypted Windows computer.

  • boot the computer from Knoppix
  • open a console
  • mount the USB disk, e.g.
mount /dev/sdz1 /mnt/usb
  • enter
dd if=/dev/sdx | bzip2 -z | cat >/mnt/usb/backup-sdx.bz2

Be sure to replace /dev/sdx by the harddisk you want to clone.