Monitoring Opensolaris from iPhone / iPad using iStat

How to get istatd running on Opensolaris …

Well after I tried myself months ago to get istatd to compile on my Opensolaris box (token) someone smarter and who is not as lazy has worked it all out and got it to compile. One thing he did not do tho was write an init script so that it would start @ boot time. Here you can find it.

Please follow the install instructions on the following blog – I have written scripts, included a sample configuration and written a init script.

Karim Berrah’s Weblog

Compile Script (Place in parent dir to source code):

[bash]
#!/bin/bash

DIR=istatd-
VER=0.5.7

ACLOCAL110=aclocal-1.10
export ACLOCAL110
AUTOMAKE110=automake-1.10
export AUTOMAKE110
AUTOCONF26=autoconf
export AUTOCONF26
AUTOHEADER26=autoheader
export AUTOHEADER26
LIBTOOLIZE15=libtoolize
export LIBTOOLIZE15

cd ${DIR}${VER}
pwd
./configure
if [ $? -ne 0 ]; then
echo "ERROR with configure"
fi

make

echo "–> Finished compiling …"

pfexec useradd istat
pfexec groupadd istat

if [ ! -d /var/cache/istat ]; then
mkdir /var/cache/istat
fi
pfexec chown istat:istat /var/cache/istat

echo "–> Finished …"
[/bash]

Sample Config:

[plain]
#
# /etc/istat.conf: Configuration for iStat server
#

# network_addr 127.0.0.1
network_port 5901
server_code 55551
server_user istat
server_group istat
# server_socket /tmp/istatd.sock
server_pid /var/run/istat/istatd.pid
cache_dir /var/cache/istat

# Note: Only support for one network interface, limited by client.
monitor_net ( bge0 )

# Array of disks to monitor. Specify mount path or device name.
monitor_disk ( / /home )

# Set to 1 if you want to use mount path as label instead of the device name.
disk_mount_path_label 0

# Try to probe the filesystem for disk label, will override the mount path label.
disk_filesystem_label 1

# Set custom disk label. Will override all other labels.
# disk_rename_label /dev/sda1 "root"
# disk_rename_label /home "home"

# End of file
[/plain]

Init Script:
[bash]
#!/bin/bash

# Basic support for chkconfig
###
# chkconfig: 35 99 55
# description: start and stop istatd – iphone monitoring tool daemon
###

DIR=/usr/local/bin/
BINARY=istatd
OPTS="-d"

PIDFILE=/var/run/istat/istatd.pid

case "$1" in
start)
echo -n "Starting $BINARY … "
$DIR/$BINARY $OPTS
if [ $? -ne 0 ]; then
echo "! Failed !"
else
echo "done"
fi
;;
stop)
echo -n "Stopping $BINARY … "
kill $(cat $PIDFILE)
echo "done"
;;
status)
ps -ef | grep "$BINARY $OPTS"
;;
*)
echo "Usage: $0 {start|status|stop}"
exit 1
esac

exit 0
[/bash]

ln -s /etc/init.d/istatd /etc/rc3.d/S99istatd
ln -s /etc/init.d/istatd /etc/rc3.d/K10istatd

If someone has written a SMF service I would love to take it from you 🙂

If you have any questions – feel free to ask …

Slashdot for iPhone hosted @ cooperlees.com …

Just thought I would let people know that I have borrowed the source from http://pixelcity.com/s/ (as it was broke 20090818) so that I can continue to look at a fast loading Slashdot for my iPhone. For more information visit http://www.pixelcity.com/slashdot/ – Thanks for the sweet (but very hacky) code :).

The URL:

https://cooperlees.com/s/

I made a couple of very small changes:

  1. Put cooperlees.com in the title.
  2. Changed the useragent sent via curl to be the Safari useragent string (so it gets the Slashdot returned that a normal Safari browser would get).
  3. Also wgetting all the images – They are copyright to their original creator.

Get source here.