paulix
13th July 2004, 11:00 PM
Hello,
I have 2 hard disks and so that bug cannot affect me. Any how after having installed FC2 in the first hard disk I tried to recover from the alteration in the geometry using the suggested command:
sfdisk -d /dev/hda|sfdisk --no-reread -H255 /dev/hda
the output was:
Warning: HDIO_GETGEO says that there are 16 heads
Disk /dev/hda: 158816 cylinders, 255 heads, 63 sectors/track
Old situation:
Warning: The partition table looks like it was made
for C/H/S=*/16/63 (instead of 158816/255/63).
For this listing I'll assume that geometry.
Units = cylinders of 516096 bytes, blocks of 1024 bytes, counting from 0
Device Boot Start End #cyls #blocks Id System
/dev/hda1 * 0+ 202 203- 102280+ 83 Linux
/dev/hda2 203 154752 154550 77893200 83 Linux
/dev/hda3 154753 158815 4063 2047752 82 Linux swap
/dev/hda4 0 - 0 0 0 Empty
New situation:
Units = sectors of 512 bytes, counting from 0
Device Boot Start End #sectors Id System
/dev/hda1 * 63 204623 204561 83 Linux
/dev/hda2 204624 155991023 155786400 83 Linux
/dev/hda3 155991024 160086527 4095504 82 Linux swap
/dev/hda4 0 - 0 0 Empty
Warning: partition 1 does not end at a cylinder boundary
sfdisk: I don't like these partitions - nothing changed.
(If you really want this, use the --force option.)
so I tried with:
sfdisk -d /dev/hda|sfdisk --no-reread -H255 --force /dev/hda
and the output:
Warning: HDIO_GETGEO says that there are 16 heads
Disk /dev/hda: 158816 cylinders, 255 heads, 63 sectors/track
Old situation:
Warning: The partition table looks like it was made
for C/H/S=*/16/63 (instead of 158816/255/63).
For this listing I'll assume that geometry.
Units = cylinders of 516096 bytes, blocks of 1024 bytes, counting from 0
Device Boot Start End #cyls #blocks Id System
/dev/hda1 * 0+ 202 203- 102280+ 83 Linux
/dev/hda2 203 154752 154550 77893200 83 Linux
/dev/hda3 154753 158815 4063 2047752 82 Linux swap
/dev/hda4 0 - 0 0 0 Empty
New situation:
Units = sectors of 512 bytes, counting from 0
Device Boot Start End #sectors Id System
/dev/hda1 * 63 204623 204561 83 Linux
/dev/hda2 204624 155991023 155786400 83 Linux
/dev/hda3 155991024 160086527 4095504 82 Linux swap
/dev/hda4 0 - 0 0 Empty
Warning: partition 1 does not end at a cylinder boundary
Successfully wrote the new partition table
Re-reading the partition table ...
BLKRRPART: Device or resource busy
The command to re-read the partition table failed
Reboot your system now, before using mkfs
If you created or changed a DOS partition, /dev/foo7, say, then use dd(1)
to zero the first 512 bytes: dd if=/dev/zero of=/dev/foo7 bs=512 count=1
(See fdisk(8).)
Afetr rebooting the output of the command fdisk -l /dev/hda was:
Disk /dev/hda: 81.9 GB, 81964302336 bytes
16 heads, 63 sectors/track, 158816 cylinders
Units = cylinders of 1008 * 512 = 516096 bytes
Device Boot Start End Blocks Id System
/dev/hda1 * 1 203 102280+ 83 Linux
Partition 1 does not end on cylinder boundary.
/dev/hda2 204 154753 77893200 83 Linux
Partition 2 does not end on cylinder boundary.
/dev/hda3 154754 158816 2047752 82 Linux swap
Partition 3 does not end on cylinder boundary.
...so apart from the warning concerning the cylinder boundary (that I don't guess are relevant) the number of heads, seems still to be 16 instead of 255! And windows will continue to not be able to boot.......
I have 2 hard disks and so that bug cannot affect me. Any how after having installed FC2 in the first hard disk I tried to recover from the alteration in the geometry using the suggested command:
sfdisk -d /dev/hda|sfdisk --no-reread -H255 /dev/hda
the output was:
Warning: HDIO_GETGEO says that there are 16 heads
Disk /dev/hda: 158816 cylinders, 255 heads, 63 sectors/track
Old situation:
Warning: The partition table looks like it was made
for C/H/S=*/16/63 (instead of 158816/255/63).
For this listing I'll assume that geometry.
Units = cylinders of 516096 bytes, blocks of 1024 bytes, counting from 0
Device Boot Start End #cyls #blocks Id System
/dev/hda1 * 0+ 202 203- 102280+ 83 Linux
/dev/hda2 203 154752 154550 77893200 83 Linux
/dev/hda3 154753 158815 4063 2047752 82 Linux swap
/dev/hda4 0 - 0 0 0 Empty
New situation:
Units = sectors of 512 bytes, counting from 0
Device Boot Start End #sectors Id System
/dev/hda1 * 63 204623 204561 83 Linux
/dev/hda2 204624 155991023 155786400 83 Linux
/dev/hda3 155991024 160086527 4095504 82 Linux swap
/dev/hda4 0 - 0 0 Empty
Warning: partition 1 does not end at a cylinder boundary
sfdisk: I don't like these partitions - nothing changed.
(If you really want this, use the --force option.)
so I tried with:
sfdisk -d /dev/hda|sfdisk --no-reread -H255 --force /dev/hda
and the output:
Warning: HDIO_GETGEO says that there are 16 heads
Disk /dev/hda: 158816 cylinders, 255 heads, 63 sectors/track
Old situation:
Warning: The partition table looks like it was made
for C/H/S=*/16/63 (instead of 158816/255/63).
For this listing I'll assume that geometry.
Units = cylinders of 516096 bytes, blocks of 1024 bytes, counting from 0
Device Boot Start End #cyls #blocks Id System
/dev/hda1 * 0+ 202 203- 102280+ 83 Linux
/dev/hda2 203 154752 154550 77893200 83 Linux
/dev/hda3 154753 158815 4063 2047752 82 Linux swap
/dev/hda4 0 - 0 0 0 Empty
New situation:
Units = sectors of 512 bytes, counting from 0
Device Boot Start End #sectors Id System
/dev/hda1 * 63 204623 204561 83 Linux
/dev/hda2 204624 155991023 155786400 83 Linux
/dev/hda3 155991024 160086527 4095504 82 Linux swap
/dev/hda4 0 - 0 0 Empty
Warning: partition 1 does not end at a cylinder boundary
Successfully wrote the new partition table
Re-reading the partition table ...
BLKRRPART: Device or resource busy
The command to re-read the partition table failed
Reboot your system now, before using mkfs
If you created or changed a DOS partition, /dev/foo7, say, then use dd(1)
to zero the first 512 bytes: dd if=/dev/zero of=/dev/foo7 bs=512 count=1
(See fdisk(8).)
Afetr rebooting the output of the command fdisk -l /dev/hda was:
Disk /dev/hda: 81.9 GB, 81964302336 bytes
16 heads, 63 sectors/track, 158816 cylinders
Units = cylinders of 1008 * 512 = 516096 bytes
Device Boot Start End Blocks Id System
/dev/hda1 * 1 203 102280+ 83 Linux
Partition 1 does not end on cylinder boundary.
/dev/hda2 204 154753 77893200 83 Linux
Partition 2 does not end on cylinder boundary.
/dev/hda3 154754 158816 2047752 82 Linux swap
Partition 3 does not end on cylinder boundary.
...so apart from the warning concerning the cylinder boundary (that I don't guess are relevant) the number of heads, seems still to be 16 instead of 255! And windows will continue to not be able to boot.......