
This README covers the Solaris 2.6 images I host on my site 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.
Machines with a Solaris 2.6 image available
Each machine below has its own per-machine image (hostname and install tuning vary) on its page:
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 oldsilicon.com.
For the verification procedure on Mac and Windows, see Image Security and Checksums.
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 it tells the Zulu to use 512-byte
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 in
/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— Replace192.168.7.1with 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.6 uses the CDE xdm login mechanism. Both accounts were set up to use CDE rather than OpenWindows. I’m sure it’s 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 increase the keyboard repeat rate
and repeat onset. To adjust, edit the ar1 and ar2
values in the last line of the script, or remove the two
values for the default slow response.
GNU utilities, compilers, and useful apps
I’m functional at vi but it’s never been my favorite.
I’ve installed my old standby uemacs (microemacs) in
/usr/local/bin. If it’s good enough for Linus Torvalds
it’s good enough for me
(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.
The full /usr/local/bin listing:
autopoint gcc pullconfig
base64 gcj pushconfig
basename gcjh pwd
bash gcov rdjpgcom
bashbug gettext readlink
bunzip2 gettext.sh recode-sr-latin
bzcat gettextize reset
bzcmp groups rgview
bzdiff gunzip rgvim
bzegrep gview rm
bzfgrep gvim rmdir
bzgrep gvimdiff rnano
bzip2 gvimtutor rsync
bzip2recover gzexe runcon
bzless gzip rview
bzmore head rvim
c++ hexedit screen
c++filt hostid screen-4.0.3
captoinfo iconv sed
cat id seq
chcon idn sha1sum
chgrp infocmp sha224sum
chill infotocap sha256sum
chmod install sha384sum
chown irc sha512sum
chroot irc-20060725 shred
cjpeg ircbug shuf
cksum ircflush sleep
clear ircio sort
comm jcf-dump sparc-sun-solaris2.6-gcc
cp join split
cpp jpegtran stat
csplit jv-scan stty
curl kill sudo
curl-config less sudoedit
cut lessecho sudoreplay
date lesskey sum
dd libpng-config sync
ddrescue libpng12-config tac
df link tack
dir links tail
dircolors ln tcsh
dirname logname tee
djpeg ls test
du lsof tic
echo lynx timeout
env make toe
envsubst md5sum top
eview minigzip touch
evim minigzip64 tput
ex mkdir tr
expand mkfifo true
expr mknod truncate
factor mktemp tset
false msgattrib tsort
fmt msgcat tty
fold msgcmp uname
funzip msgcomm uncompress
g++ msgconv unexpand
g77 msgen uniq
msgexec unlink
msgfilter unprotoize
msgfmt unzip
msggrep unzipsfx
msginit uptime
msgmerge users
msgunfmt vdir
msguniq view
mv vim
nano vimdiff
ncurses5-config vimtutor
ngettext vs
nice wc
nl wget
nohup who
od whoami
paste wrjpgcom
pathchk wserv
pinky xgettext
pr xxd
printenv yes
printf zcat
protoize zcmp
ptx zdiff
zegrep
zfgrep
zforce
zgrep
zipgrep
zipinfo
zless
zmore
znew
Troubleshooting
If your machine boots very slowly, see Why is my Disk Image boot so slow? — most cases come down to first-boot RPC timeouts from an unconfigured network, a defective SD card, or a non-contiguous image on the card.
Finally, help
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!
Addendum
The .cshrc shipped with both accounts does not include
/usr/ccs/bin in PATH. That directory holds ar (and
other bundled Solaris build tools), so if you plan to
compile code you’ll likely want to add it:
set path = ( $path /usr/ccs/bin )