Port-atari archive

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

Re: Testing sysinst.fs

Ahh, spoke a little too soon. After hte disk format is complete, sysinst runs the following command:

/usr/mdec/installboot -v /dev/rsd0c

..and I get:

installboot: Cannot stat /netbsd, no bootversion check done
installboot: /dev/rsd0c: unknown: Device type not supported.

I think the first message may just be a warning. The second one is certainly a critical failure and sysinst takes me back to the main menu without continuing the install.

If I start up a shell and try the command myself I get the same result. I can also try /dev/sd0c instead of /dev/rsd0c and I get the same thing.

This is exciting though, I'm optimistic that this could be the last major problem to solve before we get a working install!

David Ross

----- Original Message ----- From: "David Ross" <dross%pobox.com@localhost>
To: "David Brownlee" <abs%NetBSD.org@localhost>; "T. Makinen" 
Cc: <port-atari%netbsd.org@localhost>
Sent: Saturday, November 08, 2008 9:29 PM
Subject: Re: Testing sysinst.fs

It works!!!

The root device mounted read-write and went into sysinst no problems. The drive is now being formatted.

Once this change is submitted and the ATARITT kernel gets built in daily/HEAD, I'll try an install with networking so I can grab the packages. The final big hurdle, at least on the TT, is having the bootloader install properly. So far I haven't been able to get that to happen on anything > 1.6.1. We'll see, maybe things are better in 4.0.

David Ross

----- Original Message ----- From: "David Brownlee" <abs%NetBSD.org@localhost>
To: "T. Makinen" <tjamaloo%gmail.com@localhost>
Cc: "David Ross" <dross%pobox.com@localhost>; <port-atari%netbsd.org@localhost>
Sent: Saturday, November 08, 2008 2:33 PM
Subject: Re: Testing sysinst.fs

On Sat, 8 Nov 2008, T. Makinen wrote:

On Fri, Nov 7, 2008 at 5:57 PM, David Brownlee <abs%netbsd.org@localhost> wrote:

OK, found the issue. Would you believe it was an unmatched quote? :)

       Could you try http://mono.org/abs/sysinst2.fs.gz

       It should give you a message like

           "Mounted /dev/md2a read-write"

       before prompting for keyboard layout and running sysinst.

I tried this with Falcon, now there's different problem; after sysinst is
loaded, it starts to loop following messages:

erase ^H, werase ^W, kill ^U, intr ^C
mount: cannot open '/dev/md2a': no such file or directory
Unable to mount /dev/md2a read-write

I can break to sh shell with Cntr-C and there are only: md0a, md0c and md1a,
md1c devices in /dev ...

sysctl -n kern.root_device kern.root_partion returns

I wonder why md2a does not exist in /dev, but it can be used as root device
to launch installer ?

I tried with fd0a device and it launches installer as assumed (I tried it to
the point when it prompts for keyboard layout).

 Could you try http://mono.org/abs/sysinst3.fs.gz ?

 OK, cue long explanation about device nodes and mountpoints
 (just skip any parts you already know :)

 /dev contains device special files, which are just there to
 provide a way for a userland program to pass a reference to
 a device into the kernel.

 Each device special file contains a major and minor numeric
 id, these index into a table in the kernel.

 Whether a device has an entry in /dev doesn't affect the
 kernel access to that device, but it does stop a userland
 program from passing the details of what device to access
 to the kernel.

 The root filesystem is a special case - it needs to be
 mounted before /dev can be accessed, so the kernel
 fakes up a rootdev device path when it mounts it before
 it starts running init.

 Its a special case again in that if there is no 'real' /dev/
 entry for the root filesystem there is no way for the mount
 command to tell the kernel to remount it read-write.

 Once the root filesystem (or any filesystem) is mounted
 read-write you can use the mknod(8) or MAKEDEV(8) commands
 to create files for any device nodes you want.

 Actually there is a cute way around this which is used by
 some installers - the mount_mfs(8) command will allocate
 a block of memory and mount it on a directory, so init(8)
 has a special test - if it cannot locate /dev/console it
 opens /dev/MAKEDEV, then runs mount_mfs(8) to mount a
 ramdisk on /dev, copies the old /dev/MAKEDEV (now hidden
 under the mountpoint but still readable as it has it open)
 to /dev/MAKEDEV and then runs it.

 This gives a read-only root filesystem, but a read-write
 /dev.  Now init can start up the system as normal.

 If you search for 'floppy' in /dev/MAKEDEV on a NetBSD/atari
 box you will see it only contains md0 and md1. I'll update
 the version in tree, and have built a new sysinst3.fs.gz :)

 David/absolute       -- www.NetBSD.org: No hype required --

Home | Main Index | Thread Index | Old Index