Установщик не знает о томах BTRFS, но есть обходной путь.
Это адаптация ответа от Ask Ubuntu.
Поскольку я лишь случайный пользователь Ubuntu, а не BTRFS, лучше проверьте мой ответ.
- Do the server setup as usual, at the *Finish installation* step, select **Go Back** and **Execute a shell**.
- List all your target file systems:
mount | grep target
/dev/dm-0 on /target type btrfs (rw,noatime,space_cache,subvolid=257,subvol=/@)
/dev/dm-0 on /target/home type btrfs (rw,noatime,space_cache,subvolid=258,subvol=/@home)
proc on /target/proc type proc (rw,nosuid,nodev,noexec,relatime)
devtmpfs on /target/dev type devtmpfs (rw,nosuid,relatime,size=475608k,nr_inodes=118902,mode=755)
- Take a note of the BTRFS device, in this example `/dev/dm-0`.
- Now un-mount all of your mounted file systems.
umount /target/dev
umount /target/proc
umount /target/boot/efi
umount /target/home
umount /target/
- Mount your **flat** btrfs filesystem :
cd /tmp
mkdir work
mount /dev/dm-0 work
cd work
- Verify the mount is correct (should show `@` and `@home`):
ls
@ @home
- Create your additional subvolumes (`@tmp`, `@var`, `@var-log`)
btrfs subvolume create @tmp
btrfs subvolume create @var
btrfs subvolume create @var-log
- Move the data
mv @/var/log/* @var-log/
mv @/var/* @var/
# Remove data from tmp
rm @/tmp/* @/tmp/.*
# For 18.04, remove the swapfile since it won't work on btrfs
rm @/swapfile
- Add the new subvolumes to fstab, the device part may be different than the previous mount command, copy the device part from the already existing mount points.
...
/dev/mapper/root-root / btrfs noatime,subvol=@ 0 1
/dev/mapper/root-root /home btrfs noatime,subvol=@home 0 2
/dev/mapper/root-root /var btrfs noatime,subvol=@var 0 2
/dev/mapper/root-root /var/log btrfs noatime,subvol=@var-log 0 2
- Unmount
cd /tmp
umount work
sync
- `exit`, then **Finish the installation**
- Install and configure [snapper](http://snapper.io), a great tool for automatizing snapshots.