123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110 |
- LDM - Logical Disk Manager (Dynamic Disks)
- ------------------------------------------
- Originally Written by FlatCap - Richard Russon <ldm@flatcap.org>.
- Last Updated by Anton Altaparmakov on 30 March 2007 for Windows Vista.
- Overview
- --------
- Windows 2000, XP, and Vista use a new partitioning scheme. It is a complete
- replacement for the MSDOS style partitions. It stores its information in a
- 1MiB journalled database at the end of the physical disk. The size of
- partitions is limited only by disk space. The maximum number of partitions is
- nearly 2000.
- Any partitions created under the LDM are called "Dynamic Disks". There are no
- longer any primary or extended partitions. Normal MSDOS style partitions are
- now known as Basic Disks.
- If you wish to use Spanned, Striped, Mirrored or RAID 5 Volumes, you must use
- Dynamic Disks. The journalling allows Windows to make changes to these
- partitions and filesystems without the need to reboot.
- Once the LDM driver has divided up the disk, you can use the MD driver to
- assemble any multi-partition volumes, e.g. Stripes, RAID5.
- To prevent legacy applications from repartitioning the disk, the LDM creates a
- dummy MSDOS partition containing one disk-sized partition. This is what is
- supported with the Linux LDM driver.
- A newer approach that has been implemented with Vista is to put LDM on top of a
- GPT label disk. This is not supported by the Linux LDM driver yet.
- Example
- -------
- Below we have a 50MiB disk, divided into seven partitions.
- N.B. The missing 1MiB at the end of the disk is where the LDM database is
- stored.
- Device | Offset Bytes Sectors MiB | Size Bytes Sectors MiB
- -------+----------------------------+---------------------------
- hda | 0 0 0 | 52428800 102400 50
- hda1 | 51380224 100352 49 | 1048576 2048 1
- hda2 | 16384 32 0 | 6979584 13632 6
- hda3 | 6995968 13664 6 | 10485760 20480 10
- hda4 | 17481728 34144 16 | 4194304 8192 4
- hda5 | 21676032 42336 20 | 5242880 10240 5
- hda6 | 26918912 52576 25 | 10485760 20480 10
- hda7 | 37404672 73056 35 | 13959168 27264 13
- The LDM Database may not store the partitions in the order that they appear on
- disk, but the driver will sort them.
- When Linux boots, you will see something like:
- hda: 102400 sectors w/32KiB Cache, CHS=50/64/32
- hda: [LDM] hda1 hda2 hda3 hda4 hda5 hda6 hda7
- Compiling LDM Support
- ---------------------
- To enable LDM, choose the following two options:
- "Advanced partition selection" CONFIG_PARTITION_ADVANCED
- "Windows Logical Disk Manager (Dynamic Disk) support" CONFIG_LDM_PARTITION
- If you believe the driver isn't working as it should, you can enable the extra
- debugging code. This will produce a LOT of output. The option is:
- "Windows LDM extra logging" CONFIG_LDM_DEBUG
- N.B. The partition code cannot be compiled as a module.
- As with all the partition code, if the driver doesn't see signs of its type of
- partition, it will pass control to another driver, so there is no harm in
- enabling it.
- If you have Dynamic Disks but don't enable the driver, then all you will see
- is a dummy MSDOS partition filling the whole disk. You won't be able to mount
- any of the volumes on the disk.
- Booting
- -------
- If you enable LDM support, then lilo is capable of booting from any of the
- discovered partitions. However, grub does not understand the LDM partitioning
- and cannot boot from a Dynamic Disk.
- More Documentation
- ------------------
- There is an Overview of the LDM together with complete Technical Documentation.
- It is available for download.
- http://www.linux-ntfs.org/
- If you have any LDM questions that aren't answered in the documentation, email
- me.
- Cheers,
- FlatCap - Richard Russon
- ldm@flatcap.org
|