Thank you for report, its very useful for investigation. But only one difference between v1 and v2 is ploop disk size in header (32 vs 64 bit). But I use 64 bit numbers anywhere and everything should work fine. But I suppose alignment issues which not handled in my tool.<br><br>On Friday, September 12, 2014, Roman Haefeli &lt;<a href="mailto:reduzent@gmail.com">reduzent@gmail.com</a>&gt; wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">On Fri, 2014-09-12 at 11:15 +0200, Roman Haefeli wrote:<br>
&gt; On Fri, 2014-09-12 at 10:56 +0200, Roman Haefeli wrote:<br>
&gt; &gt; Hi Pavel<br>
&gt; &gt;<br>
&gt; &gt; I might have some more information on the issue. It seems that only<br>
&gt; &gt; &#39;old&#39; ploop images cannot be mounted by ploop_userspace. I actually<br>
&gt; &gt; don&#39;t quite know the ploop version I used for creating the &#39;old&#39; ploop<br>
&gt; &gt; images,  but I know it works well with images created with ploop v1.6.<br>
&gt; &gt;<br>
&gt; &gt; Does ploop_userspace know about older image formats?<br>
&gt;<br>
&gt; No, it&#39;s also not the version.<br>
<br>
Yes, there are different versions... I must have checked on the wrong<br>
machine. ploop_userspace works well with images created by ploop v1.11,<br>
but not with images created by ploop v1.6.<br>
<br>
Sorry for the noise.<br>
<br>
Roman<br>
<br>
<br>
<br>
&gt;<br>
&gt; &gt; On Thu, 2014-08-28 at 22:53 +0400, Pavel Odintsov wrote:<br>
&gt; &gt; &gt; Hello!<br>
&gt; &gt; &gt;<br>
&gt; &gt; &gt; No, it&#39;s not depend on kernel version. I created issue for you and<br>
&gt; &gt; &gt; will try to investigate:<br>
&gt; &gt; &gt; <a href="https://github.com/FastVPSEestiOu/ploop_userspace/issues/10" target="_blank">https://github.com/FastVPSEestiOu/ploop_userspace/issues/10</a> please<br>
&gt; &gt; &gt; track this github issue.<br>
&gt; &gt; &gt;<br>
&gt; &gt; &gt; On Thu, Aug 28, 2014 at 6:12 PM, Roman Haefeli &lt;<a href="javascript:;" onclick="_e(event, &#39;cvml&#39;, &#39;reduzent@gmail.com&#39;)">reduzent@gmail.com</a>&gt; wrote:<br>
&gt; &gt; &gt; &gt; Some more info:<br>
&gt; &gt; &gt; &gt;<br>
&gt; &gt; &gt; &gt; It works on our test cluster where we have<br>
&gt; &gt; &gt; &gt; 2.6.32-openvz-042stab093.4-amd64 installed. The report from below is<br>
&gt; &gt; &gt; &gt; from a host node running 2.6.32-042stab081.3-amd64.<br>
&gt; &gt; &gt; &gt;<br>
&gt; &gt; &gt; &gt; Is ploop_userspace dependent on kernel version?<br>
&gt; &gt; &gt; &gt;<br>
&gt; &gt; &gt; &gt; Roman<br>
&gt; &gt; &gt; &gt;<br>
&gt; &gt; &gt; &gt;<br>
&gt; &gt; &gt; &gt; On Thu, 2014-08-28 at 15:59 +0200, Roman Haefeli wrote:<br>
&gt; &gt; &gt; &gt;&gt; Hi Pavel<br>
&gt; &gt; &gt; &gt;&gt;<br>
&gt; &gt; &gt; &gt;&gt; Your tool comes in handy. That is exactly what we&#39;d need. However, I had<br>
&gt; &gt; &gt; &gt;&gt; troubles using it. I did:<br>
&gt; &gt; &gt; &gt;&gt;<br>
&gt; &gt; &gt; &gt;&gt; $ ploop_userspace /virtual/.snapshot/nightly.0/vz/private/2006/root.hdd/root.hdd<br>
&gt; &gt; &gt; &gt;&gt;<br>
&gt; &gt; &gt; &gt;&gt;   We process: /virtual/.snapshot/nightly.0/vz/private/2006/root.hdd/root.hdd<br>
&gt; &gt; &gt; &gt;&gt;   Ploop file size is: 4193255424<br>
&gt; &gt; &gt; &gt;&gt;   version: 1 disk type: 2 heads count: 16 cylinder count: 81920 sector count: 2048 size in tracks: 20480 size in sectors: 41943040 disk in use: 1953459801 first block offset: 2048 flags: 0<br>
&gt; &gt; &gt; &gt;&gt;   For storing 21474836480 bytes on disk we need 20480 ploop blocks<br>
&gt; &gt; &gt; &gt;&gt;   We have 1 BAT blocks<br>
&gt; &gt; &gt; &gt;&gt;   We have 262128 slots in 1 map<br>
&gt; &gt; &gt; &gt;&gt;   Number of non zero blocks in map: 3998<br>
&gt; &gt; &gt; &gt;&gt;   Please be careful because this disk used now! If you need consistent backup please stop VE<br>
&gt; &gt; &gt; &gt;&gt;   !!!ERROR!!! We can&#39;t found GPT table on this disk<br>
&gt; &gt; &gt; &gt;&gt;   !!!ERROR!!! We can&#39;t find ext4 signature<br>
&gt; &gt; &gt; &gt;&gt;   Set device /dev/nbd0 as read only<br>
&gt; &gt; &gt; &gt;&gt;   Try to found partitions on ploop device<br>
&gt; &gt; &gt; &gt;&gt;   First ploop partition was not detected properly, please call partx/partprobe manually<br>
&gt; &gt; &gt; &gt;&gt;   You could mount ploop filesystem with command: mount -r -o noload /dev/nbd0p1 /mnt<br>
&gt; &gt; &gt; &gt;&gt;<br>
&gt; &gt; &gt; &gt;&gt;<br>
&gt; &gt; &gt; &gt;&gt; Despite the errors, I tried to mount the ploop-partition:<br>
&gt; &gt; &gt; &gt;&gt;<br>
&gt; &gt; &gt; &gt;&gt; $ mount -r  -o noload /dev/nbd0p1 /mnt/<br>
&gt; &gt; &gt; &gt;&gt;<br>
&gt; &gt; &gt; &gt;&gt; and got:<br>
&gt; &gt; &gt; &gt;&gt;<br>
&gt; &gt; &gt; &gt;&gt;   mount: special device /dev/nbd0p1 does not exist<br>
&gt; &gt; &gt; &gt;&gt;<br>
&gt; &gt; &gt; &gt;&gt; Apparently, ploop_userspace wasn&#39;t able to read the GPT partition table.<br>
&gt; &gt; &gt; &gt;&gt;<br>
&gt; &gt; &gt; &gt;&gt; Tell me, if you need further information.<br>
&gt; &gt; &gt; &gt;&gt;<br>
&gt; &gt; &gt; &gt;&gt; Thanks,<br>
&gt; &gt; &gt; &gt;&gt; Roman<br>
&gt; &gt; &gt; &gt;&gt;<br>
&gt; &gt; &gt; &gt;&gt;<br>
&gt; &gt; &gt; &gt;&gt;<br>
&gt; &gt; &gt; &gt;&gt;<br>
&gt; &gt; &gt; &gt;&gt;<br>
&gt; &gt; &gt; &gt;&gt;<br>
&gt; &gt; &gt; &gt;&gt;<br>
&gt; &gt; &gt; &gt;&gt;<br>
&gt; &gt; &gt; &gt;&gt; On Tue, 2014-08-19 at 12:48 +0400, Pavel Odintsov wrote:<br>
&gt; &gt; &gt; &gt;&gt; &gt; Hello!<br>
&gt; &gt; &gt; &gt;&gt; &gt;<br>
&gt; &gt; &gt; &gt;&gt; &gt; You can mount ploop from RO root.hdd images with my tool:<br>
&gt; &gt; &gt; &gt;&gt; &gt; <a href="https://github.com/FastVPSEestiOu/ploop_userspace" target="_blank">https://github.com/FastVPSEestiOu/ploop_userspace</a> but it&#39;s not stable<br>
&gt; &gt; &gt; &gt;&gt; &gt; now. You can try it and provide feedback.<br>
&gt; &gt; &gt; &gt;&gt; &gt;<br>
&gt; &gt; &gt; &gt;&gt; &gt; On Tue, Aug 19, 2014 at 12:24 PM, Roman Haefeli &lt;<a href="javascript:;" onclick="_e(event, &#39;cvml&#39;, &#39;reduzent@gmail.com&#39;)">reduzent@gmail.com</a>&gt; wrote:<br>
&gt; &gt; &gt; &gt;&gt; &gt; &gt; Hi all<br>
&gt; &gt; &gt; &gt;&gt; &gt; &gt;<br>
&gt; &gt; &gt; &gt;&gt; &gt; &gt; At the university I work, we plan to switch all containers from simfs to<br>
&gt; &gt; &gt; &gt;&gt; &gt; &gt; ploop images on the long run. Despite the many advantages of using<br>
&gt; &gt; &gt; &gt;&gt; &gt; &gt; ploop, there is one major drawback that keeps us from switching<br>
&gt; &gt; &gt; &gt;&gt; &gt; &gt; production already now: We can&#39;t mount ploop images from read-only<br>
&gt; &gt; &gt; &gt;&gt; &gt; &gt; snapshots. In case of a recovery of a single file, we have to copy the<br>
&gt; &gt; &gt; &gt;&gt; &gt; &gt; ploop image from the read-only snapshot to some read-write storage in<br>
&gt; &gt; &gt; &gt;&gt; &gt; &gt; order to be able to mount it and extract the file. For CTs with huge<br>
&gt; &gt; &gt; &gt;&gt; &gt; &gt; ploop-images this is a big hurdle.<br>
&gt; &gt; &gt; &gt;&gt; &gt; &gt;<br>
&gt; &gt; &gt; &gt;&gt; &gt; &gt; Wouldn&#39;t it be possible to add a some flag to the &#39;ploop&#39; utility to<br>
&gt; &gt; &gt; &gt;&gt; &gt; &gt; allow mounting ploop images from read-only storage (by bypassing some<br>
&gt; &gt; &gt; &gt;&gt; &gt; &gt; checks or skipping to set the dirty flag or whatever is necessary)?<br>
&gt; &gt; &gt; &gt;&gt; &gt; &gt;<br>
&gt; &gt; &gt; &gt;&gt; &gt; &gt; Cheers,<br>
&gt; &gt; &gt; &gt;&gt; &gt; &gt; Roman<br>
&gt; &gt; &gt; &gt;&gt; &gt; &gt;<br>
&gt; &gt; &gt; &gt;&gt; &gt; &gt;<br>
&gt; &gt; &gt; &gt;&gt; &gt; &gt; _______________________________________________<br>
&gt; &gt; &gt; &gt;&gt; &gt; &gt; Users mailing list<br>
&gt; &gt; &gt; &gt;&gt; &gt; &gt; <a href="javascript:;" onclick="_e(event, &#39;cvml&#39;, &#39;Users@openvz.org&#39;)">Users@openvz.org</a><br>
&gt; &gt; &gt; &gt;&gt; &gt; &gt; <a href="https://lists.openvz.org/mailman/listinfo/users" target="_blank">https://lists.openvz.org/mailman/listinfo/users</a><br>
&gt; &gt; &gt; &gt;&gt; &gt;<br>
&gt; &gt; &gt; &gt;&gt; &gt;<br>
&gt; &gt; &gt; &gt;&gt; &gt;<br>
&gt; &gt; &gt; &gt;&gt;<br>
&gt; &gt; &gt; &gt;&gt;<br>
&gt; &gt; &gt; &gt;<br>
&gt; &gt; &gt; &gt;<br>
&gt; &gt; &gt; &gt; _______________________________________________<br>
&gt; &gt; &gt; &gt; Users mailing list<br>
&gt; &gt; &gt; &gt; <a href="javascript:;" onclick="_e(event, &#39;cvml&#39;, &#39;Users@openvz.org&#39;)">Users@openvz.org</a><br>
&gt; &gt; &gt; &gt; <a href="https://lists.openvz.org/mailman/listinfo/users" target="_blank">https://lists.openvz.org/mailman/listinfo/users</a><br>
&gt; &gt; &gt;<br>
&gt; &gt; &gt;<br>
&gt; &gt; &gt;<br>
&gt; &gt;<br>
&gt; &gt;<br>
&gt;<br>
&gt;<br>
<br>
<br>
_______________________________________________<br>
Users mailing list<br>
<a href="javascript:;" onclick="_e(event, &#39;cvml&#39;, &#39;Users@openvz.org&#39;)">Users@openvz.org</a><br>
<a href="https://lists.openvz.org/mailman/listinfo/users" target="_blank">https://lists.openvz.org/mailman/listinfo/users</a><br>
</blockquote><br><br>-- <br>Sincerely yours, Pavel Odintsov<br>