NetBSD/pmppc can run in GXemul on an emulated Artesyn PM/PPC board. Currently, no SCSI or other disk controller is emulated for this machine type, but it is possible to run NetBSD with root-on-nfs.
These setup steps will let you run NetBSD/pmppc with root-on-nfs:
gxemul -e 3max -d nbsd_pmax.imgand enter the following commands as root inside the emulator:
echo hostname=server >> /etc/rc.conf
echo ifconfig_le0=\"inet 10.0.0.2\" >> /etc/rc.conf
echo nameserver 10.0.0.254 >> /etc/resolv.conf
echo 10.0.0.254 > /etc/mygate
echo /tftpboot -maproot=root 10.0.0.1 > /etc/exports
echo rpcbind=YES >> /etc/rc.conf
echo nfs_server=YES >> /etc/rc.conf
echo mountd=YES >> /etc/rc.conf
echo bootparamd=YES >> /etc/rc.conf
printf "client root=10.0.0.2:/tftpboot \\\n swap=10.0.0.2:/tftpboot/swap\n" > /etc/bootparams
echo "bootps dgram udp wait root /usr/sbin/bootpd bootpd -d 4 -h 10.0.0.2" >> /etc/inetd.conf
cat >> /etc/bootptab
client:\
:ht=ether:\
:ha=102030000010:\
:sm=255.0.0.0:\
:lg=10.0.0.254:\
:ip=10.0.0.1:\
:rp=/tftpboot:
(press CTRL-D)
echo "10:20:30:00:00:10 client" > /etc/ethers
echo 10.0.0.1 client > /etc/hosts
reboot
|
ftp://ftp.netbsd.org/pub/NetBSD/iso/3.1/pmppccd-3.1.iso ftp://ftp.NetBSD.org/pub/NetBSD/NetBSD-3.1/pmppc/binary/kernel/netbsd-PMPPC.gz
gxemul -e 3max -d nbsd_pmax.img -d pmppccd-3.1.isoand extract the files from the PM/PPC CD-ROM image to the DECstation disk image:
cd /tftpboot; mount /dev/cd0a /mnt for a in /mnt/*/binary/sets/[bcemt]*; do echo $a; tar zxfp $a; done echo 10.0.0.2:/tftpboot / nfs rw 0 0 > /tftpboot/etc/fstab echo rc_configured=YES >> /tftpboot/etc/rc.conf echo 10.0.0.254 >> /tftpboot/etc/mygate echo nameserver 10.0.0.254 >> /tftpboot/etc/resolv.conf echo rc_configured=YES >> /tftpboot/etc/rc.conf dd if=/dev/zero of=swap bs=1024 count=65536 cd /tftpboot/dev; sh MAKEDEV all cd /; umount /mnt; halt |
! Configuration file for running NetBSD/pmppc diskless with
! a NetBSD/pmax machine as the nfs server.
net(
add_remote("localhost:12444") ! the server
local_port(12445) ! the client
)
machine(
name("client machine")
serial_nr(1)
type("pmppc")
load("netbsd-PMPPC.gz")
)
|
net(
local_port(12444) ! the server
add_remote("localhost:12445") ! the client
)
machine(
name("nfs server")
serial_nr(2)
type("dec")
subtype("5000/200")
disk("nbsd_pmax.img")
)
|
It should now be possible to boot NetBSD/pmppc using the NetBSD/pmax nfs server, using the following commands: (NOTE! Execute these two commands in separate xterms!)
gxemul @config_server gxemul @config_client
You might want to log in as root on the server machine, and run tcpdump -lnvv or similar, to see that what the client machine actually does on the network.
When asked for "root device:" etc. on the client machine, enter the following values:
root device: tlp0 dump device: (leave blank) file system (default generic): (leave blank) .. init path (default /sbin/init): (leave blank)