Installing NetBSD 5.0.2 on the SIMH MicroVAX II
Tape file
#!/usr/local/bin/perl -w use strict; # Based on mkdisttap.pl # ftp://ftp.mrynet.com/pub/os/PUPS/PDP-11/Boot_Images/2.11_on_Simh/211bsd/mkdisttap.pl # # $Id: mkdisttap.pl,v 1.1 2006/09/16 23:33:46 kirk Exp kirk $ # # Based on the example in the HOWTO using dd. Does not work! # add_file("cat mtboot mtboot boot |", 512); # Based on the maketape.c program and the maketape.data data file. add_file("boot.fs", 512); end_file(); add_file("kern-GENERIC.tar", 10240); end_file(); add_file("base.tar", 10240); end_file(); add_file("etc.tar", 10240); end_file(); add_file("comp.tar", 10240); end_file(); add_file("games.tar", 10240); end_file(); add_file("man.tar", 10240); end_file(); add_file("misc.tar", 10240); end_file(); add_file("tests.tar", 10240); end_file(); add_file("text.tar", 10240); end_file(); end_file(); sub end_file { print "\x00\x00\x00\x00"; } sub add_file { my($filename, $blocksize) = @_; my($block, $bytes_read, $length); open(FILE, $filename) || die("Can't open $filename: $!"); while($bytes_read = read(FILE, $block, $blocksize)) { if($bytes_read < $blocksize) { $block .= "\x00" x ($blocksize - $bytes_read); $bytes_read = $blocksize; } $length = pack("V", $bytes_read); print $length, $block, $length; } close(FILE); }
ini file
I'm using this ini file for both install and running...
set rq0 ra81 set rq1 ra81 set rq2 dis set rq3 dis set rl dis att rq0 ra81.disk0 att rq1 scratch.disk1 att tq0 502.tap att xq 42323 23 boot cpu
boot from tape
boot mua0
VAX simulator V3.8-1 RQ: creating new file Loading boot code from ka655x.bin KA655-B V5.3, VMB 2.7 Performing normal system tests. 40..39..38..37..36..35..34..33..32..31..30..29..28..27..26..25.. 24..23..22..21..20..19..18..17..16..15..14..13..12..11..10..09.. 08..07..06..05..04..03.. Tests completed. >>>boot mua0 (BOOT/R5:0 MUA0 2.. -MUA0 1..0.. >> NetBSD/vax boot [1.11 Sat Feb 6 22:37:47 UTC 2010] << >> Press any key to abort autoboot 3
custom installation and deselect *ALL* sets...
The following is the list of distribution sets that will be used. Distribution set Selected ------------------------ -------- a: Kernel (GENERIC) No b: Base No c: System (/etc) No d: Compiler Tools No e: Games No f: Online Manual Pages No g: Miscellaneous No h: Test programs No i: Text Processing Tools No j: X11 sets None >x: Install selected sets
set partition sizes...
Free space will be added to the partition marked with a '+'. MB Cylinders Sectors Filesystem 64 184 131376 / 32 92 65688 swap 0 0 0 tmp (mfs) 338 972 694008 /usr 0 0 0 /var 0 0 0 /home Add a user defined partition Change input units (sectors/cylinders/MB) >Accept partition sizes. Free space 0 MB, 4 free partitions.
Let it continue, and select progress bar... It'll finish quickly then it's time to hit CONTROL+Z when this shows up to drop to a shell.
The extraction of the selected sets for NetBSD-5.0.2 is complete. The system is now able to boot from the selected harddisk. To complete the installation, sysinst will give you the opportunity to configure some essential things first. +-----------------------+ |>Hit enter to continue | +-----------------------+
manual intervention
I'm going to only extract the kernel, base & etc in this example... Although you can certainly extract more...
cd /targetroot mt -f /dev/nrmt0 rewind mt -f /dev/nrmt0 fsf 1 tar -xmf /dev/nrmt0 mt -f /dev/nrmt0 fsf 1 tar -xmf /dev/nrmt0 mt -f /dev/nrmt0 fsf 1 tar -xmf /dev/nrmt0
Now we need to make some device files....
cd /targetroot/dev ./MAKEDEV std ./MAKEDEV ra0 ./MAKEDEV pty0 ./MAKEDEV mt0 ln -s nrmt0 nrst0
Now we are done, and can let the installer finish. Just type in:
cd / fg
And now you can finish setting up the system with timezone selection and passwords. then 'reboot the computer' and it'll exit simh.
disk boot
Now you can just boot off the hard drive
VAX simulator V3.8-1 Loading boot code from ka655x.bin KA655-B V5.3, VMB 2.7 Performing normal system tests. 40..39..38..37..36..35..34..33..32..31..30..29..28..27..26..25.. 24..23..22..21..20..19..18..17..16..15..14..13..12..11..10..09.. 08..07..06..05..04..03.. Tests completed. >>>boot dua0 (BOOT/R5:0 DUA0 2.. -DUA0 1..0.. >> NetBSD/vax boot [1.11 Sat Feb 6 22:37:47 UTC 2010] << >> Press any key to abort autoboot 2
And then the kernel will load, and the disk will mount and it'll spend a few minutes building some databases....
nfs_open: must mount first. open netbsd.vax: Device not configured > boot netbsd 2388172+308476 [193664+183590]=0x2eea9c Copyright (c) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009 The NetBSD Foundation, Inc. All rights reserved. Copyright (c) 1982, 1986, 1989, 1991, 1993 The Regents of the University of California. All rights reserved. NetBSD 5.0.2 (GENERIC) #0: Sat Feb 6 22:45:58 UTC 2010 builds@b8.netbsd.org:/home/builds/ab/netbsd-5-0-2-RELEASE/vax/201002061851Z-obj/home/builds/ab/netbsd-5-0-2-RELEASE/src/sys/arch/vax/compile/GENERIC MicroVAX 3800/3900 total memory = 16328 KB avail memory = 12480 KB mainbus0 (root) cpu0 at mainbus0: KA655, CVAX microcode rev 6 Firmware rev 83 lance at mainbus0 not configured uba0 at mainbus0: Q22 dz1 at uba0 csr 160100 vec 304 ipl 17 mtc0 at uba0 csr 174500 vec 774 ipl 17 mscpbus0 at mtc0: version 5 model 3 mscpbus0: DMA burst size set to 4 mt0 at mscpbus0 drive 0: TK50 mt1 at mscpbus0 drive 1: TK50 mt2 at mscpbus0 drive 2: TK50 mt3 at mscpbus0 drive 3: TK50 uda0 at uba0 csr 172150 vec 770 ipl 17 mscpbus1 at uda0: version 3 model 3 mscpbus1: DMA burst size set to 4 ra0 at mscpbus1 drive 0: RA81 ra1 at mscpbus1 drive 1: RA81 qe0 at uba0 csr 174440 vec 764 ipl 17: delqa, hardware address 08:00:2b:aa:bb:cc ts0 at uba0 csr 172520 vec 224 ipl 17: TS11 ts0: rev 0, extended features enabled, transport offline Kernelized RAIDframe activated ra0: size 891072 sectors ra1label: 0 : no disk label: size 891072 sectors boot device: ra0 root on ra0a dumps on ra0b root file system type: ffs Tue Nov 16 18:26:30 GMT 2010 swapctl: adding /dev/ra0b as swap device at priority 0 Starting file system checks: /dev/rra0a: file system is clean; not checking /dev/rra0d: file system is clean; not checking Setting tty flags. Setting sysctl variables: kern.no_sa_support: 0 -> 1 ddb.onpanic: 1 -> 0 Starting network. /etc/rc: WARNING: $hostname not set. IPv6 mode: host Configuring network interfaces:. Adding interface aliases:. Building databases: dev, utmp, utmpx, services done Starting syslogd. Checking for core dump... savecore: no core dump Mounting all filesystems... Clearing temporary files. Creating a.out runtime link editor directory cache. Checking quotas: done. Setting securelevel: kern.securelevel: 0 -> 1 Starting virecover. Starting local daemons:. Updating motd. postfix: rebuilding /etc/mail/aliases (missing /etc/mail/aliases.db) newaliases: warning: valid_hostname: empty hostname newaliases: fatal: unable to use my own hostname Nov 16 13:27:36 postfix/sendmail[241]: fatal: unable to use my own hostname Starting inetd. Starting cron. Tue Nov 16 13:27:37 EST 2010 NetBSD/vax (Amnesiac) (console) login:
And go ahead and login....
Tue Nov 16 13:27:37 EST 2010 NetBSD/vax (Amnesiac) (console) login: root Password: Nov 16 13:31:11 login: ROOT LOGIN (root) ON console Copyright (c) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009 The NetBSD Foundation, Inc. All rights reserved. Copyright (c) 1982, 1986, 1989, 1991, 1993 The Regents of the University of California. All rights reserved. NetBSD 5.0.2 (GENERIC) #0: Sat Feb 6 22:45:58 UTC 2010 Welcome to NetBSD! Terminal type? [unknown] vt100 Terminal type is vt100. We recommend creating a non-root account and using su(1) for root access. #
I'll assume from here you know what to do.