diff --git a/rules/solaris9/config-nrpe.sh b/rules/solaris9/config-nrpe.sh
new file mode 100755
index 0000000000000000000000000000000000000000..fc8bdcd2a10258f58ac6c07eab55cf26fa7cdda4
--- /dev/null
+++ b/rules/solaris9/config-nrpe.sh
@@ -0,0 +1,14 @@
+# Install the service.
+getent services nrpe >/dev/null
+if [ $? = 2 ]
+then
+    echo 'nrpe 5666/tcp # Nagios NRPE' >> /etc/services
+fi
+
+# Install the SVC
+if grep "^nrpe stream tcp" /etc/inetd.conf >/dev/null 2>&1
+then :
+else
+    echo "nrpe stream tcp nowait nagios $prefix/bin/nrpe nrpe -c $prefix/etc/nrpe.cfg -i" >> /etc/inetd.conf
+    pkill -HUP -P 1 -u root -x inetd
+fi
diff --git a/rules/solaris9/nrpe-host-auto.sh b/rules/solaris9/nrpe-host-auto.sh
new file mode 100644
index 0000000000000000000000000000000000000000..4e9c7e134fb220fa609eda448653dc6746bb2cb6
--- /dev/null
+++ b/rules/solaris9/nrpe-host-auto.sh
@@ -0,0 +1,20 @@
+FILESYSTEMS=`get_tempfile nrpfs`
+trap "rm -f $FILESYSTEMS" 0
+
+# Create a host-specific config file.
+{ df -F ufs; df -F tmpfs; } \
+| awk '{ print $1 }' \
+| tee $FILESYSTEMS \
+| while read mp
+  do
+    dev=`mount|awk '$1 == "'$mp'" { print $3 }'`
+    case $dev in
+	/*) arg=$dev;;
+	swap) arg=$mp;;
+	*) echo unknown: mp=$mp dev=$dev >&2
+	   arg=$mp;;
+    esac
+    echo $arg `echo $mp | sed -e 's%^/$%/root%' -e 's%/%-%g'`
+  done \
+|awk '{ print "command[check-disk" $2 "]='$prefix'/libexec/check_disk " $1 }'\
+> $prefix/etc/nrpe-host-auto.cfg
diff --git a/rules/solaris9/nrpe-os.cfg.in b/rules/solaris9/nrpe-os.cfg.in
new file mode 100644
index 0000000000000000000000000000000000000000..7945742702653c4751465cd52121787daf028893
--- /dev/null
+++ b/rules/solaris9/nrpe-os.cfg.in
@@ -0,0 +1,4 @@
+# This file is centrally managed.  Do not edit.  Source:
+# svn+ssh://lsvn.lysator.liu.se/svnroot/nagios-plugins/trunk/nagios-plugins
+
+command[check-iostatE]=@PREFIX@/libexec/check_iostatE -C @PREFIX@/etc/check_iostatE.cfg
diff --git a/rules/solaris9/setup-env.sh b/rules/solaris9/setup-env.sh
new file mode 100644
index 0000000000000000000000000000000000000000..71ca4098c923eea17f363cf45204b1aa47032bd5
--- /dev/null
+++ b/rules/solaris9/setup-env.sh
@@ -0,0 +1,2 @@
+PATH=/bin:/sbin:/usr/sbin:/usr/ccs/bin:/usr/local/bin
+export PATH
diff --git a/site-rules/lysator/solaris9/install-nrpe-posthook.sh b/site-rules/lysator/solaris9/install-nrpe-posthook.sh
new file mode 100644
index 0000000000000000000000000000000000000000..3f367f04f525ae011dc0025b87fe1084ee873a97
--- /dev/null
+++ b/site-rules/lysator/solaris9/install-nrpe-posthook.sh
@@ -0,0 +1,15 @@
+#!/bin/sh
+
+# Install gawk locally, as check_iostatE needs it.
+if [ -f /opt/lysator/bin/gawk ]
+then :
+else
+    if [ -f /usr/local/bin/gawk ]
+    then
+        mkdir -p /opt/lysator/bin
+        cp /usr/local/bin/gawk /opt/lysator/bin
+    else
+	echo '*** No gawk found, so not installed in /opt/lysator/bin.' >&2
+	echo '*** check_iostatE might fail!' >&2
+    fi
+fi
diff --git a/site-rules/lysator/solaris9/nagios-plugins-config-opts b/site-rules/lysator/solaris9/nagios-plugins-config-opts
new file mode 100644
index 0000000000000000000000000000000000000000..466fc6eb46889e21cfdde8a4fc4abbeaff06f8be
--- /dev/null
+++ b/site-rules/lysator/solaris9/nagios-plugins-config-opts
@@ -0,0 +1 @@
+--without-openssl --disable-nls
diff --git a/site-rules/lysator/solaris9/os b/site-rules/lysator/solaris9/os
new file mode 100644
index 0000000000000000000000000000000000000000..592315dbe15ca39f879e328cd2922aaafa8361be
--- /dev/null
+++ b/site-rules/lysator/solaris9/os
@@ -0,0 +1 @@
+solaris9