Notes on Solaris 2.6 Based Disk Images

# HELLO!

This README covers the Solaris 2.6 images I host on my site https://oldsilicon.com. This text also appears in the README file in the root directory of the image.

I make these images available to help classic workstation enthusiasts get old hardware running more easily. Installing older OS versions can be time-consuming, so the goal of these prototype images is to simplify the process, allowing you to get started quickly and then customize as needed.

Below, you'll find a checklist of tasks to get your machine up and running on your network.

If you end up compiling useful tools and utilities not included in these images, please consider contributing them back to my project for inclusion in future versions.

## SECURITY NOTES

These are very old operating systems. An installation of any of them wouldn't last a minute on the Internet without being hacked, so they should only be used behind a NAT cable modem, firewall or similar device. Most of these images don't use passwords by default, so be cautious and add a password after getting the system running for basic security.

I host a SHA1 hash on my site to verify the image you downloaded before booting it.

Since the SHA1 will become invalid once you boot the image, it's a good idea to verify it right after downloading. If you got this image from another website, I would caution you that one of these images could easily host some code that could infiltrate your home network. Be safe and download a new copy from https://oldsilicon.com

## HOW TO USE THIS IMAGE

This image was taken from my ZuluSCSI SD-CARD. The OS installation was from a CD-ROM image, and modified as described below. I use Zulu RP2040s because they are a bit faster, but I'm sure other devices will work fine as well. Format the SD card to ExFAT and place the image on the card. None of the images require a special Zulu.ini file but I encourage you to leave the final part of the name of the image “_512.img” as tells the Zulu to use 512 by blocks.

This image should also work on a SCSI2SD if you bit copy it and configure the card ahead of time. It should work on an actual hard disk, though I haven't tested this.

## ROOT

There are two accounts on the image: root and user. The root account has no password.

Solaris 2.6 won't let you telnet into the root account, so if you are telnetting in, telnet into the user account, then su to root.

The user account is a prototype that you can rename and use as needed. The user account by default has a password of user

## ROOT SHELL

I've compiled "tcsh" from source, and it’s located i /usr/local/bin. The root account uses this as its default shell. If you want to change the root shell, use the usermod commands to change the shell.

## TELNET

You can telnet into the system using the user account after changing the IP address.

Many modern machines present themselves as xterm-256color. You can add a definition to termcap

if you like. The .cshrc file in both accounts remaps the terminal to xterm for common terminals I log in from, but you can adjust this as needed.

## NETWORKING SETUP

This image is set up for my home network, so you'll need to make some changes for it to work on yours. It's currently set to "192.168.7.x" on the "192.168.7.x" network, with my DNS server at "192.168.7.90".

To adapt this image to your environment, you will need to change the following files:

- /etc/hostname.XX: Replace with the hostname you are giving the machine
- /etc/defaultrouter: Replace "192.168.7.1" with your gateway router.
- /etc/hosts: Update with your desired workstation IP, name, etc
- /etc/netmasks: Replace my network with yours.
- /etc/resolv.conf: Update with your nameserver IP and optionally your search domain

## CDE Environment

Solaris 2.2 uses the CDE xdm login mechanism. Both accounts were setup to use CDE rather than Openwindows. Im sure its easy to change them to OpenWindows but you'll have to google that.

## XSERVER CONFIG

Both accounts have a custom CDE menus script in ~/.dt/dtwmrc. In addition a custom script to start the Xserver is located in /etc/dt/config/Xservers. The last line has been modified to increate increase the keyboard repeat rate and repeat onset. To adjust edit the ar1 and ar2 value in the last line of the script or removed the two values for the default slow response.

## GNU UTILITIES, COMPILERS, AND USEFUL APPS

I'm functional at "vi" but its never been my favorite. I've installed my old standby uemacs (microemacs) in /usr/local/bin. If its good enough for linus torvalds its good enough for me. (https://github.com/torvalds/uemacs)

I built and compiled many common GNU utilities, as well as gcc and g++ up to version 2.95. These are 1990s-era compilers but work great. It was a multi-day effort to get this compiler suite working.

>ls /usr/local/bin
 id.                        rvim
autopoint           idn                         screen
base64               infocmp                screen-4.0.3
basename         infotocap             sed
bash                    install                    seq
bashbug             irc                          sha1sum
bunzip2               irc-20060725       sha224sum
bzcat                   ircbug                   sha256sum
bzcmp                 ircflush                 sha384sum
bzdiff                   ircio                       sha512sum
bzegrep              jcf-dump             shred
bzfgrep               join                        shuf
bzgrep                jpegtran               sleep
bzip2                   jv-scan                 sort
bzip2recover     kill                          sparc-sun-solaris2.6-gcc
bzless                 less                        split
bzmore              lessecho               stat
c++                     lesskey                  stty
c++filt                libpng-config      sudo
captoinfo          libpng12-config  sudoedit
cat                      link                        sudoreplay
chcon                links                       sum
chgrp                 ln                           sync
chill                    logname              tac
chmod              ls                            tack
chown               lsof                        tail
chroot               lynx                       tcsh
cjpeg                make                     tee
cksum              md5sum               test
clear                 minigzip                tic
comm              minigzip64           timeout
cp                      mkdir                    toe
cpp                   mkfifo                   top
csplit                mknod                  touch
curl                   mktemp               tput
curl-config     msgattrib             tr
cut                    msgcat                 true
date                 msgcmp               truncate
dd                     msgcomm           tset
ddrescue         msgconv              tsort
df                      msgen                   tty
dir                     msgexec              uname
dircolors          msgfilter              uncompress
dirname          msgfmt                unexpand
djpeg               msggrep             uniq
du                     msginit               unlink
echo                msgmerge         unprotoize
env                  msgunfmt           unzip
envsubst        msguniq             unzipsfx
eview              mv                        uptime
evim                nano                    users
ex                    ncurses5-config  vdir
expand          ngettext               view
expr                nice                      vim
factor             nl                           vimdiff
false               nohup                   vimtutor
fmt                 od                          vs
fold                paste                     wc
funzip            pathchk                wget
g++                pinky                     who
g77                 pr                          whoami
gcc                 printenv              wrjpgcom
gcj                  printf                    wserv
gcjh                protoize               xgettext
gcov               ptx                        xxd
gettext           pullconfig            yes
gettext.sh      pushconfig         zcat
gettextize      pwd                      zcmp
groups          rdjpgcom               zdiff
gunzip           readlink                zegrep
gview             recode-sr-latin  zfgrep
gvim              reset                     zforce
gvimdiff        rgview                  zgrep
gvimtutor     rgvim                    zipgrep
gzexe             rm                         zipinfo
gzip                rmdir                    zless
head              rnano                   zmore
hexedit           rsync                   znew
hostid            runcon
iconv             rview

## FINALLY, HELP

Finally, if you find this image helpful and you end up compiling more software using it, please let me know! I would love to keep adding to the image and re-releasing it.

Enjoy!