How to fix corrupted ploop
Stop the container/ check container status where ploop problem exists
[if you are working in your own environment with "backup files" that looking like like "root.hdd" - ploop file and "DiskDescriptor.xml" you should not stop any containers]
NOTE: your kernel may not support ploop - in this case you may refer to the man pages: is it possible to add or compile kernel module for your *nix build //or google it /whatever.
Refer to the link provided at the end of this article for alternate method of adding kernel support into your Linux build.
Mount the container’s ploop image. Check fdisk:
cd /vz/private/CTID fdisk -l root.hdd/root.hdd
Mount:
ploop mount root.hdd/DiskDescriptor.xml Opening delta /vz/private/16311/root.hdd/root.hdd Adding delta dev=/dev/ploop28980 img=/vz/private/16311/root.hdd/root.hdd (rw) #note the dev=/dev/ploop2890
NOTE: if you get error like:
Error in ploop_check (check.c:549): Fatal errors were found, image /vz/private/111/root.hdd/root.hdd is not repaired Error in check_deltas (check.c:638): /vz/private/1111/root.hdd/root.hdd : irrecoverable errors (rw)
Then try to use ploop check:
ploop check -Fc root.hdd/root.hdd # Reopen rw root.hdd/root.hdd Data cluster 20063 beyond EOF, vsec=980... Fixed Error in ploop_check (check.c:574): Dirty flag is set
You may see more options just type ploop check --help.
As from previous mount ploop output we can see how it's mounted: "dev=/dev/ploop2890"
Try e2fsck
e2fsck /dev/ploop28980
If fail try with another superblock:
mke2fs /dev/ploop28980 # note the block here and use one of them e2fsck -b 32768 /dev/ploop28980
Maybe mount/remount and give a check w/o specifying superblock
e2fsck /dev/ploop28980
___________________
if still issues you may try to mount ploop into folder and copy data
Optional. Better remount ploop for any case.
ploop umount -d /dev/ploop1234 ploop mount root.hdd/DiskDescriptor.xml
Now use "mount" to Mount into some dir
mkdir /mnt/ploop-restore1 mount -r -o noload /dev/ploop30196 /mnt/ploop-restore1
- Tool for mounting OpenVZ ploop images without support from kernel side:*
This link may be helpfull if you do not have ploop kernel support (we did not tested it!):
https://github.com/FastVPSEestiOu/ploop_userspace/
""