Installing Irix from scratch using Docker.

Pre-reqs:

  • Access to a Linux machine (physical or vm), with at least 8gb of ram (Docker is very memory hungry).
  • Docker is installed on linux machine. On Ubuntu sudo apt-get install docker.io.
  • SGI Machine capable of running 6.5.30 (Steps are the same for 6.5.22).
  • Both machines connected on the same network
  • Lots of Paitences

Docker image we are using for reference https://hub.docker.com/r/dexter1/irix-install/

  1. Before start:
    1. Download irix 6.5.30 installer https://archive.org/details/IRIX6530 this is a couple of GB so worth downloading before hand.
    2. Download the two foundation disks https://archive.org/details/sgi_IRIX_6.5_Foundation_1 & https://archive.org/details/sgi_IRIX_6.5_Foundation_2
    3. Download the NFS disk https://archive.org/details/sgi_ONC3-NFS_Version_3_for_IRIX_6.2__6.3__6.4_and_6.5
  2. Initial SGI Setup:
    1. Power on machine
    2. Hit ‘ESC to get into maintenance mode
    3. Press ‘5’ to go to ‘Enter Command Monitor’
    4. At the command line enter printenv
    5. Note down the value of ‘eaddr’ for example ’08:00:69:AA:BB:CC’
    6. Using the following command set your SGI machines ip address setenv netaddr 192.168.0.2 this will set the machines ip address to 192.168.0.2.
    7. Type exit to return back to the maintenance menu.
  3. Linux setup:
    1. Create a new working directory for the files to live on your machines for example ~/Documents/irix
    2. Copy the ‘Irix 6.5.30_cdimages.zip’ in your new working directory in my case ~/Documents/irix
    3. Unzip the disk images unzip Irix 6.5.30_cdimages.zip, it should give you the following files.
      Archive: Irix 6.5.30_cdimages.zip
      creating: Irix 6.5.30_cdimages/
      inflating: Irix 6.5.30_cdimages/Applications.image
      inflating: Irix 6.5.30_cdimages/Complementary_Applications.image
      inflating: Irix 6.5.30_cdimages/Instalation_Tools_and_Overlays1.image
      inflating: Irix 6.5.30_cdimages/Overlays2.image
      inflating: Irix 6.5.30_cdimages/Overlays3.image
    1. Make the following directories ‘apps’, ‘comp_apps’, ‘installer’, ‘overlay2’ ‘overlay3, found1, found2, nfs’ using mkdir apps comp_apps installer overlay2 overlay3 found1 found2 nfs theses will be your mount points for your disks
    2. Mount the disks:
      mount Irix\ 6.5.30_cdimages/Applications.image ./apps -o loop -t efs
      mount Irix\ 6.5.30_cdimages/Complementary_Applications.image ./comp_apps -o loop -t efs
      mount Irix\ 6.5.30_cdimages/Instalation_Tools_and_Overlays1.image ./installer -o loop -t efs
      mount Irix\ 6.5.30_cdimages/Overlays2.image ./overlay2 -o loop -t efs
      mount Irix\ 6.5.30_cdimages/Overlays3.image ./overlay3 -o loop -t efs
      mount IRIX-6.5-Foundation1.iso found1/ -o loop
      mount IRIX-6.5-Foundation2.iso found2/ -o loop
      mount ONC3-NFS Version 3 for IRIX 6.2, 6.3, 6.4 and 6.5-v2.img nfs/ -o loop
    1. Create a new file called ‘bootptab’
    2. Get your Linux machines ip address using for example ip addr in my case it is ‘192.168.0.42’.
    3. Edit ‘bootptab’ with the contents,
      Replace ‘0800690AABBCC’ with your SGI machines ‘eaddr’ we got in step 1.5 making sure to remove the colons.
      Replace ‘192.168.0.42’ with your Linux machines ip address
      iris:ha=0800690AABBCC:sa=192.168.0.42:ds=192.168.0.42:rp=/DIST
    1. Now drop to a root shell using su or sudo.
    2. There is a bug in newer Linux kernels, to work around use.
      sudo sysctl -w net.ipv4.ip_local_port_range="2048 32767"
      sudo sysctl -w net.ipv4.ip_no_pmtu_disc=1
    1. Execute docker with the following command.
      Replace ‘192.168.0.2’ with your SGI machines ‘netaddr’ we set in step 1.6.
      Replace ‘/home/user/Document/irix’ with your current working directory which you can get using pwd.
      docker run --network host \ --add-host iris:192.168.0.2 \ --volume /home/user/Document/irix/:/DIST:ro \ -P \ -it dexter1/irix-install
  4. Irix Installation:
    1. From the maintenance screen press 2 “Install System Software”.
    2. In the “Install System Software” screen select 2 “Remote Directory”.
    3. Enter the ip address of your Linux system which you got in step 2.7 for example ‘192.168.0.42’.
    4. Enter the directory of the disk you want to install for example ‘/installer/dist’
    5. Click ‘install’ and you will be presented with ‘Obtaining installation tools from 192.168.0.42/installer/dist’
      5a. If all is good you will get a screen that says “Copying installation tools to disk”
      5b. Get a cup of tea.
      5c. You may be prompted for machine name & network address (use the one we set in step 1.6).
      5d. You will be dropped at the “Inst 4.1 Main Menu”.
    6. Enter 13 for “admin”
    7. Enter 11 for “mkfs”
    8. “y” (enter)
    9. “yes” (enter) *This will format the disk.
    10. Enter 21 for “return” this will take you back to the non admin menu.
    11. Enter 1 for “from” and enter your linux machines address “192.168.0.42:/DIST/installer/dist”
    12. Enter “done”.
    13. Select “1” for maintenance stream.
    14. Enter “done”
    15. From the “Inst 4.1 Main Menu” select option 2 for “open”.
      15a. add a new distribution “192.168.0.42:/DIST/overlay2/dist”
      15b. add a new distribution “192.168.0.42:/DIST/overlay3/dist”
      15c. add a new distribution “192.168.0.42:/DIST/found1/dist”
      15d. add a new distribution “192.168.0.42:/DIST/found2/dist”
      15f. add a new distribution “192.168.0.42:/DIST/nfs/dist”
    16. Resolve any conflicts within the “keep conflicting” menu.
    17. Enter 5 or ‘go’ and this will trigger the new install.
    18. ‘r’ to restart.
    19. Wait……. pre install stuff is running.

3 Replies to “Installing Irix from scratch using Docker.”

  1. Oh dear, first snag. My Fedora 35 system doesn’t seem to know about efs:

    [root@owl irix]# mount Irix\ 6.5.30_cdimages/Applications.image ./apps -o loop -t efs
    mount: /home/nick/Downloads/irix/apps: unknown filesystem type ‘efs’.

    Do you happen to know what package this might be in, or how ? I couldn’t see anything obvious. Thanks.

Leave a Reply

Your email address will not be published. Required fields are marked *