Hello there,
I have been playing around with OpenVZ and Ploop devices for quite a while now and right now I am stuck with a rather weird problem, which I like to share with you.
Any help is highly appreciated.
Environment:
OS: CentOS 6.4 x86_64
Kernel version: 2.6.32-042stab081.5 #1 SMP Mon Sep 30 16:52:24 MSK 2013 x86_64 x86_64 x86_64 GNU/Linux
Ploop-Version: ploop-1.9-1.x86_64
Testscenario:
1. Created Ploop-Image with the following command:
ploop init -s 8G -f expanded -t ext4 /storage/plooptest/test1/root.hdd
Creating delta /storage/plooptest/test1/root.hdd bs=2048 size=16777216 sectors v1
Adding snapshot {5fbaabe3-6958-40ff-92a7-860e329aab41}
Storing /storage/plooptest/test1/DiskDescriptor.xml
Opening delta /storage/plooptest/test1/root.hdd
Adding delta dev=/dev/ploop43259 img=/storage/plooptest/test1/root.hdd (rw)
Running: parted -s /dev/ploop43259 mklabel gpt mkpart primary 2048s 16775127s
Running: mkfs -t ext4 -j -b4096 -Elazy_itable_init,resize=4294967295 /dev/ploop43259p1
mke2fs 1.41.12 (17-May-2010)
Discarding device blocks: done
Filesystem label=
OS type: Linux
Block size=4096 (log=2)
Fragment size=4096 (log=2)
Stride=0 blocks, Stripe width=0 blocks
524288 inodes, 2096635 blocks
104831 blocks (5.00%) reserved for the super user
First data block=0
Maximum filesystem blocks=4294967296
64 block groups
32768 blocks per group, 32768 fragments per group
8192 inodes per group
Superblock backups stored on blocks:
32768, 98304, 163840, 229376, 294912, 819200, 884736, 1605632
Writing inode tables: done
Creating journal (32768 blocks): done
Writing superblocks and filesystem accounting information: done
This filesystem will be automatically checked every 26 mounts or
180 days, whichever comes first. Use tune2fs -c or -i to override.
Running: tune2fs -ouser_xattr,acl /dev/ploop43259p1
tune2fs 1.41.12 (17-May-2010)
Creating balloon file .balloon-c3a5ae3d-ce7f-43c4-a1ea-c61e2b4504e8
Mounting /dev/ploop43259p1 at /storage/plooptest/test1/root.hdd.mnt fstype=ext4 data=''
Unmounting device /dev/ploop43259
Works!
2. Mounted the newly created image with the following command:
mount -t ploop /storage/plooptest/test1/DiskDescriptor.xml /stroage/plooptest/mount/test1
Opening delta /storage/plooptest/test1/root.hdd
Adding delta dev=/dev/ploop43259 img=/storage/plooptest/test1/root.hdd (rw)
Mounting /dev/ploop43259p1 at /storage/plooptest/mount/test1 fstype=ext4 data='balloon_ino=12,'
Works!
3. Tried to unmount the device with the following command:
umount /storage/plooptest/mount/test1
Error in read_line (util.c:151): Can't open or read /sys/block/ploop43259p1/dev: No such file or directory
Unmounting device /dev/ploop43259p1
Error in ploop_stop (ploop.c:865): PLOOP_IOC_STOP: No such device
/usr/sbin/ploop umount -d /dev/ploop43259p1 command failed
Error in read_line (util.c:151): Can't open or read /sys/block/ploop43259p1/dev: No such file or directory
Unmounting device /dev/ploop43259p1
Error in ploop_stop (ploop.c:865): PLOOP_IOC_STOP: No such device
/usr/sbin/ploop umount -d /dev/ploop43259p1 command failed
The devie is still there in this scenario. I can read and write from/to it. However in another scenario yesterday the mountpoint was gone at the output of command "mount" but existed in /proc/mounts. The device was inaccesible (I got IO-Errors from it, when trying to access the directory). I will try to reproduce that and if possible post some data here later.
Any ideas?
Am I doing something wrong?
Is there a detailed documentation about ploop anywhere in the internet?
kind regards
Arne