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.