Skip to content
Permalink
Branch: master
Find file Copy path
Find file Copy path
Fetching contributors…
Cannot retrieve contributors at this time
80 lines (74 sloc) 3.66 KB

VMDK image format as used by Bitnami

images for Bitnami appliances are shipped as a series of vmdk images.

Each vmdk image is variable in size - but each image represents a 2G virtual disk segment.

For sparse images some of the files will be large (but less than 2G) and some quite small, since they probably represent null bytes. The 2G size is so that the image can be indexed by 32bit systems (old versions of 32bit OS's often had 2GB user space, and 2GB kernel space - so that userland and kernel could co-exist in the same physical address space).

Here's an example

  • File system representation
[gary@arches bitnami-postgresql-11.3-0-r56-linux-debian-9-x86_64]$ ls -lh
total 3.7G
-rw-r--r-- 1 gary gary 1.2K Jun 19 07:42 bitnami-postgresql-11.3-0-r56-linux-debian-9-x86_64.vmdk. <--- Header
-rw-r--r-- 1 gary gary 1.2G Jun 19 07:42 bitnami-postgresql-11.3-0-r56-linux-debian-9-x86_64-s001.vmdk <--- 1st segment
-rw-r--r-- 1 gary gary 640K Jun 19 07:42 bitnami-postgresql-11.3-0-r56-linux-debian-9-x86_64-s002.vmdk
-rw-r--r-- 1 gary gary 576K Jun 19 07:42 bitnami-postgresql-11.3-0-r56-linux-debian-9-x86_64-s003.vmdk
-rw-r--r-- 1 gary gary 5.0M Jun 19 07:42 bitnami-postgresqPresumablyl-11.3-0-r56-linux-debian-9-x86_64-s004.vmdk
-rw-r--r-- 1 gary gary 576K Jun 19 07:42 bitnami-postgresql-11.3-0-r56-linux-debian-9-x86_64-s005.vmdk
-rw-r--r-- 1 gary gary 1.9M Jun 19 07:42 bitnami-postgresql-11.3-0-r56-linux-debian-9-x86_64-s006.vmdk
-rw-r--r-- 1 gary gary 512K Jun 19 07:42 bitnami-postgresql-11.3-0-r56-linux-debian-9-x86_64-s007.vmdk
-rw-r--r-- 1 gary gary 192K Jun 19 07:42 bitnami-postgresql-11.3-0-r56-linux-debian-9-x86_64-s008.vmdk
  • qemu-img representation The entire image being represented is 15G - so there are 7 2G sements and 1x1G segment.
[gary@arches bitnami-postgresql-11.3-0-r56-linux-debian-9-x86_64]$ qemu-img info bitnami-postgresql-11.3-0-r56-linux-debian-9-x86_64.vmdk 
image: bitnami-postgresql-11.3-0-r56-linux-debian-9-x86_64.vmdk
file format: vmdk
virtual size: 15G (16000000000 bytes)
disk size: 1.2G
cluster_size: 65536
Format specific information:
    cid: 1214070319
    parent cid: 4294967295
    create type: twoGbMaxExtentSparse
    extents:
        [0]:
            virtual size: 2146435072
            filename: bitnami-postgresql-11.3-0-r56-linux-debian-9-x86_64-s001.vmdk
            cluster size: 65536
            format: SPARSE
        [1]:
            virtual size: 2146435072
            filename: bitnami-postgresql-11.3-0-r56-linux-debian-9-x86_64-s002.vmdk
            cluster size: 65536
            format: SPARSE
        [2]:
            virtual size: 2146435072
            filename: bitnami-postgresql-11.3-0-r56-linux-debian-9-x86_64-s003.vmdk
            cluster size: 65536
            format: SPARSE
        [3]:
            virtual size: 2146435072
            filename: bitnami-postgresql-11.3-0-r56-linux-debian-9-x86_64-s004.vmdk
            cluster size: 65536
            format: SPARSE
        [4]:
            virtual size: 2146435072
            filename: bitnami-postgresql-11.3-0-r56-linux-debian-9-x86_64-s005.vmdk
            cluster size: 65536
            format: SPARSE
        [5]:
            virtual size: 2146435072
            filename: bitnami-postgresql-11.3-0-r56-linux-debian-9-x86_64-s006.vmdk
            cluster size: 65536
            format: SPARSE
        [6]:
            virtual size: 2146435072
            filename: bitnami-postgresql-11.3-0-r56-linux-debian-9-x86_64-s007.vmdk
            cluster size: 65536
            format: SPARSE
        [7]:
            virtual size: 974954496
            filename: bitnami-postgresql-11.3-0-r56-linux-debian-9-x86_64-s008.vmdk
            cluster size: 65536
            format: SPARSE
You can’t perform that action at this time.