Does anybody here have any idea how to make an exact copy of a drive that has LVM partitions? I'm having trouble using dd to do this for an EL5 server.
We're trying to diagnose a software problem of some kind and would like an exact, perfect copy of the software running so that we can see exactly what the problem is without disturbing our production copy. It's been admin practice to set up a single server with the ideal image as desired, and then use DD to replicate that image to multiple hosts. We've done this a large number of times. The exact procedure followed is:
-) Perform typical file-level backups with rsync -) Install additional HDD (hereafter sdb) as least a big as the HDD to be duplicated. -) Boot off a CentOS install DVD with "linux rescue" -) Where /dev/sda is the original drive and /dev/sdb is the new drive, run: dd bs=8192 if=/dev/sda of=/dev/sdb; -) shutdown the server upon completion of the previous command and remove 2nd drive.
Hereafter, using systems NOT running lvm, we have a bootable drive that can be installed into a 2nd machine and generally expect things to "just work" after sorting out a few driver issues. (EG: /dev/eth#s change) Following this exact procedure with partitions on LVM does NOT result in a booting system!
-) When booting from the newly imaged drive, it starts the boot just fine but quits at: ---------------------------- Activating logical volumes Volume group "VolGroup00" not found Trying to resume from /dev/VolGroup00/LogVol01 Unable to access resume device (/dev/VolGroup00/LogVol01) Creating root device. Mounting root filesystem. mount: could not find filesystem '/dev/root' --SNIP-- switchroot: mount failed: no such file or directory Kernel panic - not syncing: Attempted to kill init! ----------------------------
-) Running Linux rescue, at the shell: ---------------------------- # pvscan PV /dev/sda2 VG VolGroup00 lvm2 [153.28 GiB / 0 free] Total: 1 [153.28 GiB] / inuse: 1 [153.28 GiB] / in no VG: [0 ] # vgscan Reading all physical volums. This may take a while... Found volume group "VolGroup00" using metadata type lvm2 # lvscan inactive '/dev/VolGroup00/LogVol00' [151.31 GiB] inherit inactive '/dev/VolGroup00/LogVol01' [1.97 GiB] inherit ----------------------------
-) Running the EL5 installer with the "Find distro" option on mounts the install at /tmp/sysimage without issue.
What am I missing?!?!
Mondo?
On 03/18/2013 03:36 PM, Lists wrote:
-) When booting from the newly imaged drive, it starts the boot just fine but quits at:
Activating logical volumes Volume group "VolGroup00" not found
The only reason that I can think of that would cause this is an initrd that doesn't contain the driver for the whatever adapter the disk is attached to.
Boot the rescue image and identify the adapter module. When you've identified it, go back to the live system and make a new initrd using "--with <adapter_module>". Don't replace the existing initrd, just create a new one in /boot. If you then clone the disk, you should be able to boot the cloned disk to grub. Edit the kernel definition and change the path to the initrd, selecting the one you've created for the new system. It should boot properly, at which point you can replace the standard initrd path or fix grub's configuration file.
...and if you don't want to clone the system again, you can just boot the rescue environment, chroot to the sysimage, and make the initrd there.
Gordon Messmer wrote:
On 03/18/2013 03:36 PM, Lists wrote:
-) When booting from the newly imaged drive, it starts the boot just fine but quits at:
Activating logical volumes Volume group "VolGroup00" not found
The only reason that I can think of that would cause this is an initrd that doesn't contain the driver for the whatever adapter the disk is attached to.
<snip>
...and if you don't want to clone the system again, you can just boot the rescue environment, chroot to the sysimage, and make the initrd there.
This latter is what I'd recommend doing.
mark
Thanks!
Your reply in conjunction with a google search that found the below website and resolved this completely!
http://wiki.centos.org/TipsAndTricks/CreateNewInitrd
The final line being something like mkinitrd --with sata_nv initrd-2.6.18-194.32.1.el5.img 2.6.18-194.32.1.el5
-Ben
On 03/19/2013 08:37 AM, Gordon Messmer wrote:
On 03/18/2013 03:36 PM, Lists wrote:
-) When booting from the newly imaged drive, it starts the boot just fine but quits at:
Activating logical volumes Volume group "VolGroup00" not found
The only reason that I can think of that would cause this is an initrd that doesn't contain the driver for the whatever adapter the disk is attached to.
Boot the rescue image and identify the adapter module. When you've identified it, go back to the live system and make a new initrd using "--with <adapter_module>". Don't replace the existing initrd, just create a new one in /boot. If you then clone the disk, you should be able to boot the cloned disk to grub. Edit the kernel definition and change the path to the initrd, selecting the one you've created for the new system. It should boot properly, at which point you can replace the standard initrd path or fix grub's configuration file.
...and if you don't want to clone the system again, you can just boot the rescue environment, chroot to the sysimage, and make the initrd there. _______________________________________________ CentOS mailing list CentOS@centos.org http://lists.centos.org/mailman/listinfo/centos
Hi Ben,
Off-list as Antonio had the same message, but I would HIGHLY recommend CloneZilla; it would only back up the used portion of the drive unlike dd (which would save you a lot of time), and it hasn't failed me yet in 5 years. I recommend the "alternative-stable" release; it has more drivers.
http://sourceforge.net/projects/clonezilla/files/clonezilla_live_alternative...
(this is unrelated to the issue you fixed; clonezilla's image would also be missing the sata_nv driver)
-xrx
On 03/19/13 22:28, Lists wrote:
Thanks!
Your reply in conjunction with a google search that found the below website and resolved this completely!
http://wiki.centos.org/TipsAndTricks/CreateNewInitrd
The final line being something like mkinitrd --with sata_nv initrd-2.6.18-194.32.1.el5.img 2.6.18-194.32.1.el5
-Ben
On 03/19/2013 08:37 AM, Gordon Messmer wrote:
On 03/18/2013 03:36 PM, Lists wrote:
-) When booting from the newly imaged drive, it starts the boot just fine but quits at:
Activating logical volumes Volume group "VolGroup00" not found
The only reason that I can think of that would cause this is an initrd that doesn't contain the driver for the whatever adapter the disk is attached to.
Boot the rescue image and identify the adapter module. When you've identified it, go back to the live system and make a new initrd using "--with <adapter_module>". Don't replace the existing initrd, just create a new one in /boot. If you then clone the disk, you should be able to boot the cloned disk to grub. Edit the kernel definition and change the path to the initrd, selecting the one you've created for the new system. It should boot properly, at which point you can replace the standard initrd path or fix grub's configuration file.
...and if you don't want to clone the system again, you can just boot the rescue environment, chroot to the sysimage, and make the initrd there. _______________________________________________ CentOS mailing list CentOS@centos.org http://lists.centos.org/mailman/listinfo/centos
CentOS mailing list CentOS@centos.org http://lists.centos.org/mailman/listinfo/centos