У нас есть диск с изменённым порядком разделов.
2 EXT3 |
3 SWAP |
4 EXT3 |
1 NTFS |
О чём любезно сообщает fdisk
fdisk -l
[...] Device Boot Start End Blocks Id System /dev/sda1 19579 60801 331123747+ 7 HPFS/NTFS /dev/sda2 1 2089 16779861 83 Linux /dev/sda3 2090 2350 2096482+ 82 Linux swap / Solaris /dev/sda4 2351 19578 138383910 83 Linux Partition table entries are not in disk order
Приведём диск в порядок, пардон за тавталогию.
Сохраним первые 512 байт диска (MBR (http://www.it-simple.ru/?p=4402)), на всякий случай.
dd if=/dev/sda of=sda-boot-512.img bs=512 count=1
Сохраним в образ sda-partitions.img текущую структуру разделов:
dd if=/dev/sda of=sda-partitions.img bs=1 count=64 skip=446
Загрузим из образа три последних раздела на место трёх первых:
dd if=sda-partitions.img of=/dev/sda bs=1 skip=16 seek=446 count=48
а первый - на место последнего:
dd if=sda-partitions.img of=/dev/sda bs=1 seek=494 count=16
Вот теперь наш диск будет выглядеть как надо.
1 EXT3 |
2 SWAP |
3 EXT3 |
4 NTFS |
fdisk -l
[...] Device Boot Start End Blocks Id System /dev/sda1 1 2089 16779861 83 Linux /dev/sda2 2090 2350 2096482+ 82 Linux swap / Solaris /dev/sda3 2351 19578 138383910 83 Linux /dev/sda4 19579 60801 331123747+ 7 HPFS/NTFS
Неправильный порядок разделов мог сложиться, если, например, на таком диске:
1 NTFS |
освободить место в начале
Неразмеченная область |
1 NTFS |
и создать новые разделы
2 EXT3 |
3 SWAP |
4 EXT3 |
1 NTFS |
Хотя, конечно, надо по возможности избегать такой кривой разметки.