I just happened to run into the same or similar issues recently when attempting to fully automate differing un-attended system builds with ubuntu 14.04 on amd64 I was able to make the provided -atomic and -home recipes work, but they don't offer any control over the sizing of the logical volumes. The -multi recipe doesn't work. The expert-recipes don't work either, no matter what I specified, the end was result was the same, I'd get a /root a /swap_1 logical volume and /boot partition, and never close to the sizes specified, nor the filesystem type specified, nor the logical volume name specified :-) Below are the options and recipe used. I was about to try using kickstart versus preseed to try and setup LVM on ubuntu how I want. On my rhel/centos systems customizing LVM is a breeze with kickstart automation ### Partitioning d-i partman-auto/disk string /dev/sda d-i partman-auto/method string lvm d-i partman-lvm/device_remove_lvm boolean true d-i partman-md/device_remove_md boolean true d-i partman-lvm/confirm boolean true d-i partman-lvm/confirm_nooverwrite boolean true # You can choose one of the three predefined partitioning recipes: # - atomic: all files in one partition # - home: separate /home partition # - multi: separate /home, /var, and /tmp partitions #d-i partman-auto/choose_recipe select atomic #d-i partman-auto/choose_recipe select expert-recipe # Give the default VG a name d-i partman-auto-lvm/new_vg_name string vg d-i partman-auto/purge_lvm_from_device boolean true d-i partman-auto-lvm/guided_size string 90% d-i partman-partitioning/confirm_write_new_label boolean true d-i partman/choose_partition select finish d-i partman/confirm boolean true d-i partman/confirm_nooverwrite boolean true d-i partman-md/confirm boolean true d-i partman-partitioning/confirm_write_new_label boolean true d-i partman/choose_partition select finish d-i partman/confirm boolean true d-i partman/confirm_nooverwrite boolean true #### # Experimental disk recipe ##### d-i partman-auto/expert_recipe string custom-lvm :: \ 40 300 300 ext4 \ $primary{ } \ $bootable{ } \ method{ format } format{ } \ use_filesystem{ } filesystem{ ext4 } \ mountpoint{ /boot } \ . \ 2000 4000 10000 ext4 \ $lvmok{ } lv_name{lv_root} \ method{ format } format{ } \ use_filesystem{ } filesystem{ ext4 } \ mountpoint{ / } \ . \ 2000 1000 2000 ext4 \ $lvmok{ } lv_name{lv_var} \ method{ format } format{ } \ use_filesystem{ } filesystem{ ext4 } \ mountpoint{ /var } \ . \ 2000 1000 2000 ext4 \ $lvmok{ } lv_name{lv_home} \ method{ format } format{ } \ use_filesystem{ } filesystem{ ext4 } \ mountpoint{ /home } \ . \ 512 512 512 linux-swap \ $lvmok{ } lv_name{lv_swap} \ method{ swap } format{ } \ .