Annotation of wikisrc/ports/luna68k/luna68k_install.mdwn, revision 1.1

1.1     ! ryoon       1: [[!meta title="NetBSD/luna68k: Installation Instructions"]]
        !             2: 
        !             3: # How to install NetBSD/luna68k
        !             4: 
        !             5: There are two ways to boot a NetBSD kernel on your LUNA.
        !             6: 
        !             7: 1. network boot using "isiboot"
        !             8: 2. place NetBSD kernel on the root directory of the LUNA original disk
        !             9: 
        !            10: Because there is no provision of installation kernel tailored
        !            11: to run in standalone with the help of memory disk,
        !            12: either way requires to prepare an initial filesystem on an NFS server.
        !            13: 
        !            14: ## Preparing filesystem to NFS mount
        !            15: 
        !            16: NetBSD/luna68k is a cousin of various m68k port of NetBSD.
        !            17: Any set of m68k distribution is useful to run NetBSD/luna68k
        !            18: with minor adjustments as described below.
        !            19: 
        !            20: Inflate two files, base.tgz and etc.tgz, to the NFS server.
        !            21: Then replace two files, etc/ttys and dev/MAKEDEV,
        !            22: with ones found in the <ftp://ftp.NetBSD.org/pub/NetBSD/arch/luna68k/>
        !            23: directory of NetBSD ftp servers. Make sure to run **sh ./MAKEDEV all**
        !            24: in dev/ directory.
        !            25: 
        !            26: ## Preparing BOOTP/DHCP network service
        !            27: 
        !            28: NetBSD kernel requests its network parameters and NFS mount point.
        !            29: You need to know its station address (Ethernet MAC address),
        !            30: which can be found using ROM monitor (see how to do).
        !            31: 
        !            32: Here is the sample configuration of `/etc/bootptab`:
        !            33: 
        !            34: [[!template id=programlisting text="""
        !            35: dayan:\ 
        !            36:      ht=ethernet:ha=00000a02430f:ip=10.1.1.106:sm=255.255.255.0:\
        !            37:      gw=10.1.1.1:rp=/ccd/filesys/luna68k:
        !            38: """]]
        !            39: 
        !            40: where rp= field tells NFS root directory for LUNA exported by NFS server.
        !            41: bf= field is unnecessary to have.
        !            42: 
        !            43: Another sample configuration for `/etc/dhcpd.conf`:
        !            44: 
        !            45: [[!template id=programlisting text="""
        !            46: group {
        !            47:   option subnet-mask 255.255.255.0;
        !            48:   option broadcast-address 10.1.1.255;
        !            49:   option routers 10.1.1.1;
        !            50:   host dayan {
        !            51:     hardware ethernet 00:00:0a:02:43:0f;
        !            52:     fixed-address 10.1.1.106;
        !            53:     next-server 10.1.1.101;
        !            54:     option root-path "/ccd/filesys/luna68k";
        !            55:   }
        !            56: }
        !            57: """]]
        !            58: 
        !            59: ## Network boot with 'isiboot'
        !            60: 
        !            61: LUNA ROM monitor can download kernel image via network.
        !            62: 'isiboot' serves this purpose. The server program requires
        !            63: BPF (Berkeley Packet Filter) in the servicing machine to work.
        !            64: The source code of isiboot can be found <ftp://ftp.NetBSD.org/pub/NetBSD/arch/luna68k/>
        !            65: directory of NetBSD ftp servers. The description is here.
        !            66: 
        !            67: [[!template id=programlisting text="""
        !            68:   SYNOPSIS
        !            69:     isiboot [-i interface] [-s directory] [-d tracelevel]
        !            70: 
        !            71:   DESCRIPTION
        !            72:     isiboot is a server which supports LUNA network boot.  It listens
        !            73:     to ROM monitor download requests and serves for it.  The proprietary
        !            74:     protocol uses a special Ethernet type and works within a local wire.
        !            75: 
        !            76:     -i <interface> isiboot searches available network interfaces and
        !            77:     chooses one found first.  If the servicing machine has multiple
        !            78:     network interfaces in action, this option can be used to specify
        !            79:     which network interface to use.
        !            80: 
        !            81:     -s <directory> whose directory isiboot server makes chroot(2)
        !            82:     to after invocation.  Given no provision, isiboot searches the
        !            83:     downloading files in the current directory when started.
        !            84: 
        !            85:     -d <tracelevel> accepts value 1, 2 or 3.  Greater number provides
        !            86:     more detailed trace.
        !            87: 
        !            88:     The protocol uses server's hostname to start the downloading
        !            89:     dialogue.  isiboot makes the name using gethostname(3) trimmed
        !            90:     down by the first dot '.' if applicable.
        !            91: 
        !            92: [1] Invoke isiboot program on the root directory of NetBSD/luna68k
        !            93:     filesystem on NFS server.  Use -s option when necessary.
        !            94: 
        !            95: [2] Manipulate LUNA ROM monitor as follows;
        !            96: 
        !            97:     Given '> ' ROM monitor prompt;
        !            98: 
        !            99:     >[k]                       start to change boot parameters,
        !           100:     ctlr: dk [et]              specify network boot,
        !           101:     home: omron                        type a return, isiboot doesn't care this field, 
        !           102:     sver: servername           type another return,
        !           103:     fnam: server:/vmunix [pelican:netbsd]
        !           104:                                specify server hostname and the filename
        !           105:                                to download.  Leading / is not significant.
        !           106: 
        !           107:     Then type 'g' ROM monitor command to start downloading.  You will see
        !           108:     the progress like;
        !           109: 
        !           110:     >[g]
        !           111:     text(776872)+data(49788)+bss(131942)
        !           112: 
        !           113:     When completed, type 'x' ROM monitor command with '-s' string to
        !           114:     run NetBSD kernel.  -s specifies not to start multiuser mode.
        !           115: 
        !           116:     >[x -s]
        !           117: """]]
        !           118: 
        !           119: The kernel starts to configure itself, and requests BOOTP/DHCP
        !           120: on wire to get network parameters and the name of filesystem to mount.
        !           121: After receiving a proper reply, NetBSD/luna68k kernel invokes
        !           122: single user mode shell eventually.
        !           123: 
        !           124: ## Booting from disk
        !           125: 
        !           126: NetBSD/luna68k kernel can be booted off from the vender supplied
        !           127: original operating system. Place kernel image on the root directory,
        !           128: then type to ROM monitor as follows:
        !           129: 
        !           130: [[!template id=programlisting text="""
        !           131:     >[k]
        !           132:     ctlr: dk           type just a return to make no change,
        !           133:     drv: 0             return,
        !           134:     par: c             and another return,
        !           135:     fnam: vmunix [netbsd]
        !           136:                        specify the name of NetBSD/luna68k kernel.
        !           137: 
        !           138:     >[g]               load the kernel image from disk.  Litting
        !           139:                        front panel LED tells activity.
        !           140: 
        !           141:     >[x -sa]           run the kernel, where -sa instructs to ask
        !           142:                        which filesystem to mount.
        !           143: """]]
        !           144: 
        !           145: Now, tell the kernel to mount filesystem provided by NFS server;
        !           146: 
        !           147: [[!template id=programlisting text="""
        !           148:     boot device: sd0
        !           149:     root device (default on sd0a): [le0]       le0 to use NFS
        !           150:     dump device:                               return to choose default
        !           151:     filesystem (default generic):              another return to choose
        !           152: """]]
        !           153: 
        !           154: Then kernel requests BOOTP/DHCP for network parameters and
        !           155: its root directory, and eventually invokes single user mode shell
        !           156: when successful.
        !           157: 
        !           158: ## Installing NetBSD/luna68k on disk
        !           159: 
        !           160: NetBSD sysinst utility is not prepared for NetBSD/luna68k.
        !           161: Here is the instruction for manual installation.
        !           162: 
        !           163: It's reasonable and preferred to make fresh filesystems from scratch.
        !           164: Vender supplied OS has such a rather obscure convention
        !           165: to keep its root filesystem on partition c that's not comfortable
        !           166: with NetBSD standard.
        !           167: Use [disklabel(8)](http://netbsd.gw.com/cgi-bin/man-cgi?disklabel+8.luna68k)
        !           168: command to make the new filesystem layout.
        !           169: 
        !           170: LUNA ROM monitor can search and load kernel images on the root filesystem.
        !           171: To make this possible, the root filesystem must be created in the 'old FFS'
        !           172: format. Make sure to have -O (large letter oh) for [newfs(8)](http://netbsd.gw.com/cgi-bin/man-cgi?newfs+8.luna68k).
        !           173: Other filesystems do not require the option.
        !           174: 
        !           175: Then mount the root filesystem somewhere, say /mnt,
        !           176: and other filesystems for `usr/` or `var/` underneath it.
        !           177: If you have NetBSD distribution sets on a certain NFS mounted point,
        !           178: goto the directory and then issue a simple loop:
        !           179: 
        !           180: [[!template id=programlisting text="""
        !           181:        # for i in *.tgz
        !           182:        do
        !           183:        (cd /mnt && tar xvfp - ) < $i
        !           184:        done
        !           185: """]]
        !           186: 
        !           187: When completed, make sure to place NetBSD/luna68k kernel image on `/mnt`
        !           188: directory and to replace two files, `etc/ttys` and `dev/MAKEDEV`.
        !           189: Run **sh ./MAKEDEV all** on `/mnt/dev/` directory to have device nodes.
        !           190: 
        !           191: It's ok to halt the system now by typing **halt** for # prompt.
        !           192: 
        !           193: ## Arrange ROM boot parameters for daily use
        !           194: 
        !           195: [[!template id=programlisting text="""
        !           196:     >[k]
        !           197:     ctlr: dk           type just a return to make no change,
        !           198:     drv: 0             another return,
        !           199:     par: c [a]         change to choose 'a' partition to load,
        !           200:     fnam: vmunix [netbsd]
        !           201:     >[k+]              store those into NVRAM
        !           202: """]]

CVSweb for NetBSD wikisrc <wikimaster@NetBSD.org> software: FreeBSD-CVSweb