├── README.md ├── docs ├── mock-server.png └── setup.png └── example ├── 5.3.dat ├── 5.3.selections ├── 6.5.22.dat ├── 6.5.22.selections ├── Indy.dat └── Octane.dat /README.md: -------------------------------------------------------------------------------- 1 | # SGI IRIX Net Booting Guide by Example 2 | 3 | ## Table of Contents 4 | - [SGI IRIX Net Booting Guide by Example](#sgi-irix-net-booting-guide-by-example) 5 | - [Table of Contents](#table-of-contents) 6 | - [Typographic Conventions](#typographic-conventions) 7 | - [Introduction](#introduction) 8 | - [Requirements](#requirements) 9 | - [Hardware](#hardware) 10 | - [Software](#software) 11 | - [Concept](#concept) 12 | - [Linux Machine Setup](#linux-machine-setup) 13 | - [isc-dhcp-server](#isc-dhcp-server) 14 | - [nfs-kernel-server](#nfs-kernel-server) 15 | - [tftpd-hpa](#tftpd-hpa) 16 | - [rpc-server](#rpc-server) 17 | - [Mock SGI Server Setup](#mock-sgi-server-setup) 18 | - [Diskless Tree Installation](#diskless-tree-installation) 19 | - [Diskless Tree Post-Installation](#diskless-tree-post-installation) 20 | - [bootparamd](#bootparamd) 21 | - [nfs-kernel-server contd.](#nfs-kernel-server-contd) 22 | - [SGI Net Boot Setup](#sgi-net-boot-setup) 23 | - [Troubleshooting](#troubleshooting) 24 | - [PANIC: KERNEL FAULT](#panic-kernel-fault) 25 | - [TFTP failure: get ...](#tftp-failure-get-) 26 | - [NFS server \ not responding still trying](#nfs-server-server-not-responding-still-trying) 27 | - [Port mapper failure](#port-mapper-failure) 28 | 29 | ## Typographic Conventions 30 | 31 | Ellipsis (...) in the code blocks just means "there might be stuff above or below this". Anything to the right of an ellipsis is just a comment. 32 | 33 | **Boldface** file paths accompanied by a code block show where this file is located and what content will be added/edited. 34 | 35 | ## Introduction 36 |     This guide explains how to configure and maintain Silicon Graphics software on a modern linux machine so that one or more networked SGI machines can net boot the IRIX operating system. The linux server software will be configured to both boot installation material as well as boot IRIX itself for the clients. 37 | 38 |     Throughout this guide, a specific setup will be used to give an example of what a configuration would look like. The network setup is described below: 39 | - Raspberry Pi 4 - 4 GB model 40 | - Raspberry Pi OS 64-bit 41 | - SGI Octane 42 | - IRIX 6.5.22 on local disk (explained later) 43 | - IRIX 6.5.22 64-bit desired net boot 44 | - SGI Indy 45 | - IRIX 5.3 32-bit desired as net boot 46 | - Network switch 47 | 48 |     This is the extent of my confirmed working setup, however this should work with any machine capable of completing the [Diskless Workstation Administration Guide](https://web.archive.org/web/20220326024413/https://techpubs.jurassic.nl/library/manuals/0000/007-0855-080/pdf/007-0855-080.pdf) setup processes client-side. 49 | 50 | ## Requirements 51 | ### Hardware 52 | - SGI machine(s) 53 | - At least one with local IRIX installation 54 | - Server machine 55 | - Networking equipment (switches, ethernet cables) 56 | 57 | ### Software 58 | - IRIX installation software 59 | - IRIX NFS software package 60 | - Linux software packages (these are available for Raspberry Pi OS, but any package that provides the same service should work. Configurations may vary): 61 | - bootparamd 62 | - isc-dhcp-server 63 | - nfs-kernel-server 64 | - rsh-server 65 | - tftpd-hpa 66 | 67 |     An NFS software package must be available for each IRIX version installed. 68 | 69 |     Knowledge on how to use inst or the software manager is also needed. The original [Software Installation and Licensing](https://web.archive.org/web/20211122115932/https://irix7.com/techpubs/007-1364-140.pdf) manual contains that info. Example selections files are in the example folder of the repository. 70 | 71 | ## Concept 72 | 73 |     Originally, the [Diskless Workstation Administration Guide](https://web.archive.org/web/20220326024413/https://techpubs.jurassic.nl/library/manuals/0000/007-0855-080/pdf/007-0855-080.pdf) describes a networked system where a diskless tree is locally created on an SGI. After installation, client SGIs can be configured to use the server for OS purposes. Here, we will be doing essentially the same thing but with one catch: the SGI server will play pretend and install to a modern server instead. The modern server will be given the software necessary to communicate with the SGI clients so that the clients don't know the difference. 74 | 75 |     The network setup is straightforward; all machines can talk over LAN. If the modern server needs internet, you can use a second interface or just hook the LAN up to a router with internet access. 76 | 77 | ![Example network setup](docs/setup.png "Network Setup") 78 | 79 |     The visual below demonstrates how the diskless tree installation makes a full round-trip. Install media is provided by the Pi and can be accessed by the Octane's software management system. The Octane will install the diskless tree to an NFS mounted directory pointing to a local directory back on the Pi. 80 | 81 | ![Example mock server setup](docs/mock-server.png "Mock Server Setup") 82 | 83 | ## Linux Machine Setup 84 | 85 | 86 | `sudo apt install bootparamd isc-dhcp-server nfs-kernel-server rsh-server tftpd-hpa` 87 | 88 |     Place any IRIX packages you want to install to a directory accessible via tftp. For the example, the directory used is the default at /srv/tftp. The folder storing the installation media will be /srv/tftp/inst. 89 | 90 | ### isc-dhcp-server 91 | 92 |     The DHCP server will attempt to start up but fail because configuration is required first. The example only utilizes the ethernet interface. You will need each client's LAN IP address and MAC address from the NVRAM environment variables. Information on how to find/edit these variables can be found [here](https://web.archive.org/web/20220401164835/http://retrogeeks.org/sgi_bookshelves/SGI_Admin/books/IA_ConfigOps/sgi_html/ch09.html). 93 | 94 |     The defaults for the isc-dhcp-server will be edited: 95 | 96 | **/etc/default/isc-dhcp-server** 97 | ``` 98 | ... 99 | INTERFACESv4="eth0" 100 | ... 101 | ``` 102 | 103 |     Next, we'll tell the server a little about mapping hostnames to IP addresses: 104 | 105 | **/etc/hosts** 106 | ``` 107 | ... 108 | 127.0.1.1 raspberrypi 109 | 192.168.1.152 octane 110 | 192.168.1.153 indy 111 | ``` 112 | 113 |     Then we'll allow any user from the SGI clients to log in (this is what [booterizer](https://github.com/unxmaal/booterizer) does, so it's a copy paste): 114 | 115 | **/etc/hosts.equiv** 116 | ``` 117 | + + 118 | ``` 119 | 120 |     Finally, the server's configuration file will be edited to allow booting protocols, a subnet definition, and the clients' networking information: 121 | 122 | **/etc/dhcp/dhcpd.conf** 123 | ``` 124 | ... 125 | allow booting; 126 | allow bootp; 127 | 128 | subnet 192.168.1.0 netmask 255.255.255.0 { ignore unknown-clients; } 129 | 130 | host octane { 131 | hardware ethernet 08:00:69:13:68:da; 132 | fixed-address 192.168.1.152; 133 | } 134 | 135 | host indy { 136 | hardware ethernet 08:00:69:08:76:a1; 137 | fixed-address 192.168.1.153; 138 | } 139 | ``` 140 | 141 |     To restart and verify the isc-dhcp-server is working correctly, restart and check the status of the service: 142 | 143 | `service isc-dhcp-server restart` 144 | 145 | `service isc-dhcp-server status` 146 | 147 | ### nfs-kernel-server 148 | 149 |     The NFS server has two purposes: 150 | 151 | 1. Network folder to load IRIX installation media 152 | 2. Network folder to install IRIX software to 153 | 154 |     The Octane will be used as the mock SGI server. We're going to pretend the filesystem it is installing the diskless tree to is local. Instead, the directory will be network mounted from a directory on the raspberry pi. The installation media will be located within the /srv/tftp/inst folder and the diskless tree will be installed to the /srv/tftp/diskless folder. 155 | 156 |     Verify that NFS versions 2 and 3 are enabled. The following line may need to be added to your defaults: 157 | 158 | **/etc/default/nfs-kernel-server** 159 | ``` 160 | ... 161 | RPCNFSDOPTS="--nfs-version 2 --nfs-version 3 --no-nfs-version 4" 162 | ``` 163 | 164 |     You can check if the specific NFS versions are enabled/disabled by using the following command: 165 | 166 | `cat /proc/fs/nfsd/versions` 167 | 168 | If you changed the defaults, restart the NFS service and verify the service is active: 169 | 170 | `service nfs-kernel-server restart` 171 | 172 | `service nfs-kernel-server status` 173 | 174 |     Next, the directories inside the tftp-accessible directory will need to be exported for NFS. Since the mock server will only need access to these top level locations, only the Octane will be given access: 175 | 176 | **/etc/exports** 177 | 178 | ``` 179 | ... 180 | /srv/tftp/inst octane(rw,no_root_squash,no_subtree_check) 181 | /srv/tftp/diskless octane(rw,no_root_squash,no_subtree_check) 182 | ``` 183 | 184 |     Update the NFS server's exported directories and check for errors: 185 | 186 | `exportfs -r` 187 | 188 | ### tftpd-hpa 189 | 190 |     The TFTP server will handle file transfers to and from the client SGIs. 191 | 192 |     For creation of files and troubleshooting purposes, the default options for the TFTP service will be edited: 193 | 194 | **/etc/default/tftpd-hpa** 195 | 196 | ``` 197 | ... 198 | TFTP_OPTIONS="--secure --create -vvvv" 199 | ``` 200 | 201 |     To restart and verify the service is active, run the service commands: 202 | 203 | `service tftpd-hpa restart` 204 | 205 | `service tftpd-hpa status` 206 | 207 | ### rpc-server 208 | 209 |     The RPC server will handle any remote calls by SGI's programs requiring access to a server shell. 210 | 211 |     Add the guest user to the Pi server. 212 | 213 | `adduser --home /srv/tftp --shell /bin/ksh --disabled-password guest` 214 | 215 |     Add a .rhosts file to the TFTP directory (this is what [booterizer](https://github.com/unxmaal/booterizer) does, so it's a copy paste): 216 | 217 | **/srv/tftp/.rhosts** 218 | ``` 219 | octane guest 220 | indy guest 221 | ``` 222 | 223 |     Since this service is managed under the inetd super server, we'll restart that. 224 | 225 | `service inetd restart` 226 | 227 | `service inetd status` 228 | 229 | ## Mock SGI Server Setup 230 | 231 |     The mock server requires a working local IRIX install including the nfs.sw.dskless_server subsystem. This can be done using `inst` or the software manager. The NFS software can be found in the ONC3/NFS Version 3 installation media (for 6.2-6.5). Note from the original documentation, in order to install a diskless IRIX the server's OS must be later or equal to the OS version being installed on the diskless tree. The example is using 6.5.22 on the Octane's local disk. 232 | 233 | Add the raspberry pi's IP to the mock server's /etc/hosts file. 234 | 235 | **/etc/hosts** 236 | 237 | ``` 238 | ... 239 | 192.168.1.23 raspberrypi 240 | ``` 241 | 242 |     Mount the diskless directory over NFS: 243 | 244 | `mkdir /diskless` 245 | 246 | `mount raspberrypi:/srv/tftp/diskless /diskless` 247 | 248 | ## Diskless Tree Installation 249 | 250 |     SGI's [Diskless Workstation Administration Guide](https://web.archive.org/web/20220326024413/https://techpubs.jurassic.nl/library/manuals/0000/007-0855-080/pdf/007-0855-080.pdf) chapters 3 and 4 (save the last couple of pages of chapter 4) are essentially what the procedure is during this phase. For software selection, I used the commands that [booterizer](https://github.com/unxmaal/booterizer) uses for inst. I then added the NFS dskless_client subsystem. If there will be many installs, selections files are your friend. The installation programs will ask you if you are sure you want to install to an NFS directory. Just continue and install as many versions as you desire. 251 | 252 |     For the example, a share tree will be installed for 64-bit 6.5.22 and 32-bit 5.3. A client tree will be installed for the Octane and Indy as well. The generated share and client .dat files can be found in the repository's example folder. 253 | 254 | Installing diskless tree for two IRIX versions and two clients: 255 | ``` 256 | cd /var/boot 257 | ./share_setup 258 | ... (6.5.22 file created) 259 | ./share_setup 260 | ... (5.3.dat file created) 261 | ./share_inst -r 6.5.22 262 | ... (6.5.22 share tree installed at /diskless/share/6.5.22) 263 | ./share_inst -r 5.3 264 | ... (5.3 share tree installed at /diskless/share/5.3) 265 | ./client_setup 266 | ... (Octane.dat file created) 267 | ./client_setup 268 | ... (Indy.dat file created) 269 | ./client_inst -h octane -r 6.5.22 -c Octane 270 | ... (octane client tree installed to /diskless/client/octane) 271 | ./client_inst -h indy -r 5.3 -c Indy 272 | ... (indy client tree installed to /diskless/client/indy) 273 | ``` 274 | 275 | Sometimes the installer might throw warnings about a deadlock being prevented or post-install scripts not working. This seems to be okay as far as I know. 276 | 277 | ## Diskless Tree Post-Installation 278 | 279 | ### bootparamd 280 | 281 |     Bootparams contain a list of client entries used for booting diskless clients. Referencing the generated version on the mock server, this should be moved over to the Pi server's bootparams file. Note that the raspberry pi's IP is used instead of the hostname. 282 | 283 | **/etc/bootparams** 284 | 285 | ``` 286 | ... 287 | octane root=192.168.1.23:/srv/tftp/diskless/client/octane \ 288 | sbin=192.168.1.23:/srv/tftp/diskless/share/6.5.22/sbin \ 289 | usr=192.168.1.23:/srv/tftp/diskless/share/6.5.22/usr \ 290 | var_share=192.168.1.23:/srv/tftp/diskless/share/6.5.22/var/share \ 291 | swap=192.168.1.23:/srv/tftp/diskless/swap/octane 292 | indy root=192.168.1.23:/srv/tftp/diskless/client/indy \ 293 | sbin=192.168.1.23:/srv/tftp/diskless/share/5.3/sbin \ 294 | usr=192.168.1.23:/srv/tftp/diskless/share/5.3/usr \ 295 | var_share=192.168.1.23:/srv/tftp/diskless/share/5.3/var/share \ 296 | swap=192.168.1.23:/srv/tftp/diskless/swap/indy 297 | 6.5.22 root=192.168.1.23:/srv/tftp/diskless/share/6.5.22 \ 298 | sbin=192.168.1.23:/srv/tftp/diskless/share/6.5.22/sbin \ 299 | swap=192.168.1.23: 300 | 5.3 root=192.168.1.23:/srv/tftp/diskless/share/5.3 \ 301 | sbin=192.168.1.23:/srv/tftp/diskless/share/5.3/sbin \ 302 | swap=192.168.1.23: 303 | ``` 304 | 305 |     Restart and verify that the bootparamd service is working correctly: 306 | 307 | `service bootparamd restart` 308 | 309 | `service bootparamd status` 310 | 311 | ### nfs-kernel-server contd. 312 | 313 |     Each client will need NFS access to their respective client tree as well as their share tree. Again, this will be generated after the mock server installs the trees and should be moved over and appended to the Pi server's exports file. 314 | 315 |     This is a sample of what exports are required for the octane client: 316 | 317 |     (Note that the share tree's software version must be identical to the installed client tree's software version and that the swap export below is synced) 318 | 319 | **/etc/exports** 320 | 321 | ``` 322 | /srv/tftp/diskless/client/octane octane(rw,no_root_squash,no_subtree_check) 323 | /srv/tftp/diskless/swap/octane octane(rw,sync,no_root_squash,no_subtree_check) 324 | /srv/tftp/diskless/share/6.5.22/usr octane(ro,no_root_squash,no_subtree_check) 325 | /srv/tftp/diskless/share/6.5.22/sbin octane(ro,no_root_squash,no_subtree_check) 326 | /srv/tftp/diskless/share/6.5.22/var/share octane(rw,no_root_squash,no_subtree_check) 327 | ``` 328 | 329 |     For each client tree installed, the network configuration may be incorrect due to the mock server not knowing this setup will only be temporary. Each client tree's hosts file should list itself along with it's LAN IP and the Pi server's IP: 330 | 331 | **/srv/tftp/diskless/\/etc/hosts** 332 | 333 | ``` 334 | ... 335 | 192.168.1.23 raspberrypi 336 | 192.168.1.152 octane 337 | 338 | ``` 339 | 340 |     Make sure the client's host name is what it should be too: 341 | 342 | **/srv/tftp/diskless/\/etc/sys_id** 343 | 344 | ``` 345 | octane 346 | ``` 347 | 348 |     The file systems table may also have incorrect entries pointing to the wrong host. Make sure the host these are pointing to is the Pi server: 349 | 350 | **/srv/tftp/diskless/\/etc/fstab** 351 | 352 | ``` 353 | raspberrypi:/srv/tftp/diskless/client/octane / nfs rw 0 0 354 | raspberrypi:/srv/tftp/diskless/share/6.5.22/usr /usr nfs ro 0 0 355 | raspberrypi:/srv/tftp/diskless/share/6.5.22/sbin /sbin nfs ro 0 0 356 | raspberrypi:/srv/tftp/diskless/share/6.5.22/var/share /var/share nfs rw 0 0 357 | raspberrypi:/srv/tftp/diskless/swap/octane /swap nfs rw 0 0 358 | ``` 359 | 360 | ## SGI Net Boot Setup 361 | 362 |     Note: Me personally, I took a picture with my phone of the initial environment variables before changing them for ease of reverting back to the previous configuration. 363 | 364 |     After all that work, it's time for the final step (unless something goes wrong). The SGI client's boot-up environment variables need to be configured to auto-boot into network mode. On some machines, there may be other variables that need changing as well. Documentation can be found at the end of chapter 4 in SGI's [Diskless Workstation Administration Guide](https://web.archive.org/web/20220326024413/https://techpubs.jurassic.nl/library/manuals/0000/007-0855-080/pdf/007-0855-080.pdf). Information on how to find/edit these variables can be found [here](https://web.archive.org/web/20220401164835/http://retrogeeks.org/sgi_bookshelves/SGI_Admin/books/IA_ConfigOps/sgi_html/ch09.html). 365 | 366 | ``` 367 | setenv diskless 1 368 | setenv OSLoader /unix 369 | setenv SystemPartition bootp():diskless/client/octane 370 | setenv OSLoadPartition bootp():diskless/client/octane 371 | init 372 | ``` 373 | 374 |     Hopefully, starting up the machine gives you a successfull network boot! First time setup may involve configuring the kernel, so a clean shut down will be needed. After that, the boot should be a bit faster. 375 | 376 | ## Troubleshooting 377 | 378 |     SGI's [Diskless Workstation Administration Guide](https://web.archive.org/web/20220326024413/https://techpubs.jurassic.nl/library/manuals/0000/007-0855-080/pdf/007-0855-080.pdf) provides a list of erros and troubleshooting hints near the end of the document. Any additional problems will be listed below. 379 | 380 | ### PANIC: KERNEL FAULT 381 | 382 |     This is either due to the client and share tree OS versions not matching (as described in the original guide) or the config files pointing to the wrong OS directories. 383 | 384 | - check the client.dat and share.dat to ensure matching OS versions and modes were used during the tree install process. 385 | - check the client's /etc/fstabs and the server's /etc/exports and /etc/bootparams files to ensure the paths are pointing to the correct OS version installed. 386 | 387 | ### TFTP failure: get ... 388 | 389 | - check bootparams config files for correct pathing 390 | - check /etc/exports for correct pathing 391 | 392 | ### NFS server \ not responding still trying 393 | ### Port mapper failure 394 | 395 |     Hostnames may be mismatched in client config files. The client also may not have guest permissions for the rcp server. 396 | 397 | - check the client's /etc/fstab, /etc/sys_id, and /etc/hosts file for incorrect entries 398 | - check the rcp server configuration files 399 | -------------------------------------------------------------------------------- /docs/mock-server.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Docter60/sgi-irix-net-boot-guide/4922c3dbff846fb8eaffb5ba9c8419e78567dd83/docs/mock-server.png -------------------------------------------------------------------------------- /docs/setup.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Docter60/sgi-irix-net-boot-guide/4922c3dbff846fb8eaffb5ba9c8419e78567dd83/docs/setup.png -------------------------------------------------------------------------------- /example/5.3.dat: -------------------------------------------------------------------------------- 1 | # Created by share_setup script! 2 | # 3 | HOSTNAME="octane" 4 | SHAREHOST="$HOSTNAME" 5 | SERVER_NIS="no" 6 | DISKLESS="/diskless" 7 | SHARE="/diskless/share/5.3" 8 | #Architecuture information 9 | CPUBOARD="IP20 -mCPUBOARD=IP22 -mCPUBOARD=IP32" 10 | CPUARCH="R4000 -mCPUARCH=R5000 -mCPUARCH=R10000" 11 | GFXBOARD="LIGHT -mSUBGR=LG1MC -mGFXBOARD=EXPRESS -mSUBGR=EXPRESS -mGFXBOARD=NEWPRESS -mSUBGR=NEWPRESS -mGFXBOARD=MGRAS -mSUBGR=MGRAS -mGFXBOARD=NEWPORT -mSUBGR=NG1 -mGFXBOARD=NEWPORT -mSUBGR=NEWTON -mGFXBOARD=CRIME -mSUBGR=CRM" 12 | VIDEO="VINO -mVIDEO=VICE" 13 | MODE="32bit" 14 | -------------------------------------------------------------------------------- /example/5.3.selections: -------------------------------------------------------------------------------- 1 | # this file was originally stored as /srv/tftp/inst/5.3/selections 2 | from raspberrypi:inst/5.3/Foundation/dist 3 | from raspberrypi:inst/5.3/Development/dist 4 | -------------------------------------------------------------------------------- /example/6.5.22.dat: -------------------------------------------------------------------------------- 1 | # Created by share_setup script! 2 | # 3 | HOSTNAME="IRIS" 4 | SHAREHOST="$HOSTNAME" 5 | SERVER_NIS="no" 6 | DISKLESS="/diskless" 7 | SHARE="/diskless/share/6.5.22" 8 | #Architecuture information 9 | CPUBOARD="IP28 -mCPUBOARD=IP30 -mCPUBOARD=IP35" 10 | CPUARCH="R10000" 11 | GFXBOARD="EXPRESS -mSUBGR=I2_64 -mGFXBOARD=MGRAS -mSUBGR=I2_64 -mGFXBOARD=MGRAS -mSUBGR=RACER -mGFXBOARD=ODYSSEY -mSUBGR=IP30 -mGFXBOARD=ODYSSEY -mSUBGR=IP35" 12 | VIDEO="" 13 | MODE="64bit" 14 | -------------------------------------------------------------------------------- /example/6.5.22.selections: -------------------------------------------------------------------------------- 1 | # this file was originally stored as /srv/tftp/inst/6.5.22/selections 2 | from raspberrypi:inst/6.5.22/Overlay/disc1/dist 3 | from raspberrypi:inst/6.5.22/Overlay/disc2/dist 4 | from raspberrypi:inst/6.5.22/Overlay/disc3/dist 5 | from raspberrypi:inst/6.5.22/Overlay/apps/dist 6 | from raspberrypi:inst/6.5/Foundation/disc1/dist 7 | from raspberrypi:inst/6.5/Foundation/disc2/dist 8 | from raspberrypi:inst/6.5/Foundation/nfs/dist 9 | 10 | from raspberrypi:inst/6.5/Development/devlibs/dist 11 | from raspberrypi:inst/6.5/Development/devf/dist 12 | from raspberrypi:inst/6.5/Development/mipspro/dist 13 | from raspberrypi:inst/6.5/Development/mipspro_update 14 | from raspberrypi:inst/6.5/Development/mipspro_c/dist 15 | from raspberrypi:inst/6.5/Development/mipspro_cee/dist 16 | from raspberrypi:inst/6.5/Development/mipspro_cpp/dist 17 | from raspberrypi:inst/6.5/Development/mipspro_ap/dist 18 | 19 | # Add this for extra perfcopilot software 20 | #from raspberrypi:inst/6.5/Extras/perfcopilot/dist 21 | 22 | # Add this for buttonfly demos 23 | #from raspberrypi:inst/6.5/Demos/Apps/dist 24 | -------------------------------------------------------------------------------- /example/Indy.dat: -------------------------------------------------------------------------------- 1 | # Created by client_setup script! 2 | # 3 | CLROOT="$DISKLESS/client/$HOST" 4 | SWAP="$DISKLESS/swap/$HOST" 5 | NISDOMAIN="" 6 | SWAPSIZE="128m" 7 | 8 | #Client architecture information 9 | CPUBOARD="IP22" 10 | CPUARCH="R4000" 11 | GFXBOARD="NEWPORT -mSUBGR=NG1" 12 | VIDEO="" 13 | MODE="32bit:" 14 | -------------------------------------------------------------------------------- /example/Octane.dat: -------------------------------------------------------------------------------- 1 | # Created by client_setup script! 2 | # 3 | CLROOT="$DISKLESS/client/$HOST" 4 | SWAP="$DISKLESS/swap/$HOST" 5 | NISDOMAIN="" 6 | SWAPSIZE="128m" 7 | 8 | #Client architecture information 9 | CPUBOARD="IP30" 10 | CPUARCH="R10000" 11 | GFXBOARD="MGRAS -mSUBGR=RACER" 12 | VIDEO="" 13 | MODE="64bit" 14 | --------------------------------------------------------------------------------