Port-sandpoint archive

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

Re: DSM-G600 block issue



Dear Frank,

your suggestion is working, thanks a lot.
I will wait for netbsd 6 release~ ^^

2012/2/9 Frank Wille <frank%phoenix.owl.de@localhost>
On Thu, 9 Feb 2012 15:02:48 +0900
"Toru Nishimura" <locore64%alkyltechnology.com@localhost> wrote:

> > wd0 at atabus0 drive 0
> > wd0: <WDC AC28400R>
> > wd0: 8063 MB, 16383 cyl, 16 head, 63 sec, 512 bytes/sect x 16514064
> > sectors boot device: wd0
> > root on wd0a dumps on wd0b
> > root file system type: msdos
> >
> > Then I always block here, no success boot my dsmg600.
>
> It seems the kernel misunderstands the disk has FAT filesyste
> inside, with unknown reason.

When mounting a generic root filesystem the kernel will check for a valid
msdos filesystem before it checks for ffs.

Your wd0a partition starts at block 63 and newfs(8) doesn't seem to
overwrite the first block. So the kernel is confused when it still finds
an MSDOS boot sector in block 63.

Just a few days ago I had the same problem with a disk which was previously
Linux ext2fs formatted. The ext2fs signature was still present after newfs,
so the kernel tried to mount an ext2fs file system.

Izumi Tsutsui committed a patch for it:
http://mail-index.netbsd.org/source-changes/2012/02/07/msg031583.html

Maybe we need a similar patch for an msdos boot sector?


For testing, you can select the filesystem manually. Enter the interactive
mode in altboot, then type:

bootargs> askroot wd0:

The kernel will stop and ask you for the root filesystem type. Then
enter "ffs". The system will boot.


To be on the safe side you should follow Toru's instructions and reinstall
the system. Alternatively you might try to overwrite block 63 only, which
would save you from reinstalling:

# dd if=/dev/zero of=/dev/rwd0c bs=512 seek=63 count=1
(untested!)

--
Frank Wille



Home | Main Index | Thread Index | Old Index