forked from mirage/xen
-
Notifications
You must be signed in to change notification settings - Fork 0
setup_lvm
Nathan Pemberton edited this page Sep 14, 2016
·
1 revision
The use of LVM is central to this design. LVM allows for flexible allocation and resizing of disk partitions without worrying too much about the physical layout. Critically, it also allows for easy online snapshotting of systems (it's hard to overstate the usefulness of this feature for OS development).
Redhat has a detailed guide on LVM
On ubuntu I use either the command line or the useful system-config-lvm GUI tool.
- Physical Volumes (one partition per drive, formatted as LVM2)
- /dev/sda1
- /dev/sdb1
- Volume Groups
- rootvg (/dev/sda1) - Contains OS images and data partition
- vmvg (/dev/sdb1) - Contains VM images.
- Note: These are sepparate VGs primarily for namespace cleanliness. Also, some tools (like Open Stack's cinder) prefer to have their own VG for managing images.
- Logical Volumes
- Will be described in more detail below, this is just the minimal set.
- rootvg/boot (256MB) - Contains the multiboot grub configuration (see below)
- rootvg/root (10GB) - Contains a clean OS install. The idea of this is to have a stable OS at all times.
- rootvg/swap (8GB) - Swap space for all OSs
- rootvg/data (100GB) - Contains persistent data that is shared between OSs.