You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
109 lines
3.8 KiB
109 lines
3.8 KiB
|
|
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 |
|
|
|
|