Port-i386 archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

Re: Disk Problems



    Date:        Mon, 7 Jul 2014 14:50:31 +0200
    From:        Ib-Michael Martinsen <i.m.martinsen%gmail.com@localhost>
    Message-ID:  <21434.38807.969734.320295%asus.immnet.dk@localhost>

  | The disk settings are identical except for the BIOS settings
  | and the partition alignment and offset parameter. I am and was
  | unsure about the consequences of this.

There are no consequences on any modern drive.   If you were using an
old (say 512MB or something) drive that didn't support LBA addressing
it would matter, but there are probably not many of those still around
in a workable state.   Everything from at least the past 10 years
(probably much older than that) supports LBA, and for that, all that
matters are the block numbers.   The cylinder/head/sector stuff is
all just a fiction these days (can you imagine how big a drive would
need to be to actually have 63 heads - that is, 63 platters (0r 32, using
both sides) not just lots of heads positioned around the drive to
lower rotational delays - even then, 63 would be a real feat of engineering.
I suppose one could imagine, 4 platters, making 7 usable surfaces, and
9 heads on each surface - that might just be able to be manufactured in
a way that makes the drive still be able to be mounted in a standard size slot,
but ...   these days manufacturers mostly don't even tell you what's actually
inside the sealed section so very few people would know if there actually
was such a thing)

That is, the drive uses block numbers, NetBSD uses block numbers, nothing
that you care about is in the slightest bit interested in some fictional
conversion to cyl/head/sector values (and these days, it would probably make
sense for fdisk to simply hide all tha nonsense for any drive bigger than
a GB or so).   Given the ranges of values allowed for cyl, head, and sector
(max 1024, 255, and 63) the biggest number of sectors that are possible is
1024*255*63 - ie: 16450560 which is 8422686720 bytes (just under 8GB).
Any drive larger than that (eg: your 2TB drives) cannot possibly do anything
particularly useful with c/h/s values.

They are kept around just so the drive manufacturers can keep selling
drives to all those people (???) still using ancient software that
believes c/h/s is the only way to access a disk.


  | root@asus:/root # fdisk -A 3963/63 -b 1024/63/63 /dev/rwd1d

-A isn't doing anything useful for you (and you wouldn't really want those
values anyway, just giving them to make them the same as wd0 isn't really
very useful), and you didn't read the fdisk man page carefully enough...

     -b cylinders/heads/sectors
             Specify the BIOS geometry parameters for cylinders, heads, and
             sectors.  It is used only in conjunction with the -u flag.

Try
        fdisk -u -f -b 1024/63/63 /dev/rwd1d

or, to be more cautious, just
        fdisk -u wd1
and say 'y' when it asks
        Do you want to change our idea of what BIOS thinks? [n]
and then when prompted, give the values you want, and then eventually
allow fdisk to write it all back.

kre



Home | Main Index | Thread Index | Old Index