Devils punch bowl

April 27, 2008

Today I had preempted the decision on where to go by emailing the
BBT to say I was going to the Devils Punch Bowl so that I could be
sure to get some proper miles in. Six riders were at Molesey for the
start with two agreeing they were not going to do the whole ride.


Devils punch bowl
Find more Bike Rides in Walton-on-thames, United Kingdom

As I have mentioned
before
I love this ride. The route out is not spectacular or at
least not until after Tongham, but from then on as you climb to the
Devils Punch bowl it is great. Then the ride home is wonderful. The
short stretch along the A3 is a bit of a pain but once the road
narrows as long as you claim the lane is not bad at all.


From then on though the route is great. Even the rain and the
puncture I picked up in Albury could not dampen my enthusiasm.


My speedometer claims 78.69 miles and 17.33mph average. Top speed
was 40.6mph, not sure when that happened!


Strange Rumours

April 26, 2008

Now the builders have gone my hifi, with it’s turntable are back.
Our record collection is now an combination of four separate
collections as my sister and husband was kind enough to give me
theirs when they no longer had a record player. So I have been going
through the duplicate albums of which the most interesting is
Fleetwood Mac’s Rumours.


The reason for it being interesting is not that is was and still
is an excellent album or that it is one of the very few records that
I now have four copies of. The interesting thing is one of those
copies is different.


Side two is missing the track ¨You make loving fun¨.
Instead it is replaced with ¨Songbird¨ which is then repeated
on Side 2. Meanwhile the track listing in the centre of Side A is
claims the last track should be ¨You make loving fun¨ while
the disk contains ¨Songbird¨. The pressing claims to be “R/S
Alsdorf 56344 A2″. The other copies two are “56344 A” and one
“56345 A4″.


Here is a track listing













































































Normal tracks



Actual Listing on the record (56344 A2)



Actual tracks on the record (56344 A2)



Side 1



Side 1



Side 1



Second Hand News



Second Hand News



Second Hand News



Dreams



Dreams



Dreams



Never going to say good by



Never going to say good by



Never going to say good by



Don´t Stop



Don´t Stop



Don´t Stop



Go your own Way



Go your own Way



Go your own Way



Songbird



You Make Loving Fun



Songbird



Side 2



Side 2



Side 2



The Chain



The Chain



The Chain



You Make Loving Fun



Songbird



Songbird



I don´t want to know



I don´t want to know



I don´t want to know



Oh daddy



Oh daddy



Oh daddy



Gold Dust Woman



Gold Dust Woman



Gold Dust Woman



I wonder if this is a forgery or a mistake?


I’m surprised that google has not found me the answer. So if you
have a Rumours LP what tracks does it contain?


Why I run the latest Solaris build on my laptop

April 25, 2008

While on my holidays I was blissfully disconnected from the
internet but still had to have my laptop on hand to empty my camera.
This allowed me to trip over this bug that I filed on my return
6691387
which is already destined to be fixed in build 89. Result.


A Long Way to Work

April 23, 2008

Since I do really need to get fit for the Ventoux
ride in June I took the long route to work today. After a few miles
it began to rain but since it is not unknown for the weather on
Ventoux to be inclement even in June turning back did not seem very
good preparation. The rain howerver persisted for the whole ride, so
much so my normal cycle computer stopped working1.
The route is essentially the same as the long route I used to ride
prior to the Office
Move
until the turn into Christmas Pie which I don’t take. Oddly
only 3 miles longer however now the home run is 21 miles rather than
14 so I ended up with a 57 mile day.


Long ride to work
Find more Bike Rides in Walton-on-thames, United Kingdom


The route is not especially pleasant during rush hour as there was
quite heavy traffic for large sections, particularly from Chilworth
onwards. There was some relief on the road through Ash Vale to
Frimley as the bridge over the canal is closed to traffic but by
becoming a pedestrian a cyclist can get through so there was almost
no traffic up that section.









1The
failure mode was once again very strange in that when I returned to
my bike to ride home in the evening the computer had clearly stored
a number of miles worth of pulses so that the distance suddenly
moved forward three miles while I was putting my shoes on. Most
odd.



Good Morning Build 87

April 22, 2008

On arriving back from my well earned
holiday (yes I had a very relaxing time thank you) I see that not
only is there a nice new Solaris release on our server but the server
itself is no longer a power hungry SunFire box but an Eco friendly
Niagra based T5220 and today is Earth
Day
. It’s almost like we planned it!





: enoexec.eu FSS 1 $; uname -a
SunOS enoexec 5.11 snv_87 sun4v sparc SUNW,SPARC-Enterprise-T5220
: enoexec.eu FSS 2 $;





We have actually been here before with
respect to the Huron server as we tried one out for a few weeks
around the time of build 83. I left the blogging of it to a colleague
as it was not 100% successful or was 100% successful depending on
your point of view. The system would crash regularly and finally a
bug (which unfortunately is not published as it contains the way to
panic an un-patched system running nevada so is marked as a
“security” issue. I think this is a bit harsh) was filed
and rapidly fixed. So if you are using a system to shake out bugs,
which is why I use a nevada Sun Ray server at work, then this was
100% successful.


The performance of the system is well
good enough. That is to say the only clue I had that something was
“up” was that the performance meter I run, I know I
should not but I do, get over it, looks “inverted”. We
are not making a dent on the threads.


We can be quick

April 11, 2008

Yesterday I managed to get the fix for 6686086
putback into the nevada gate and as the bug reflects the fix will be
in build 88. It does show that it is possible to get things done
quickly if there is the will. 24 hours from filing
the bug
to the fix being delivered. Yes the fix is trivial but
the “paper work” still has to be done.


Thank you to the reviewers and Evaluator for being prompt.


Will I ever escape NIS+?

April 10, 2008

Todays blast from the past is what do to when your NIS+, yes I did
say NIS+, name space does not do what you are expecting. Contrary to
popular myth NIS+ can be reliable and can scale to large deployments,
so much so that there are a number of customers that do have large
deployments and that does not include the two that I’m aware of in
Sun. That said, even I would not advocate anyone setting up a NIS+
namespace now. LDAP is the future and the way to go.


Now back to NIS+. Today’s problem was not atypical of the kind of
issues you can see with NIS+ and was also an interesting as the SGRT
questions or at a least the answers to the SGRT
questions did not immediately lead to a resolution. The problem
statement was “New users are not correctly authenticated”.
So when they logged in “nisdefautlts -p” would say they
were “nobody”. Having them keylogin would then, it was
claimed, resolve the issue.


After a bit of questioning it was clear that either I was asking
the wrong questions or the answers I was getting were not accurate or
someone had installed some randomizing function into the system.
Shared Shell to the rescue. I
could now see with my own eyes what was going on and then suggest the
next command to run without worrying about translation. It became
clear that the problem was indeed random. Successive calls to
“nisdefaults -p” would give different results and I would
hazard a guess, although I did not confirm this, this effected all
the users and all the systems.


The key to tracking this down is the NIS_OPTIONS
envirnment variable which allows you to see each NIS+ call and it’s
return status and more interestingly in this case lets you see which
server served you:


: estale.eu FSS 6 $; env NIS_OPTIONS="debug_bind debug_calls" nisdefaults -p
nis_list([auth_name=14442,auth_type=LOCAL],cred.org_dir.eu.cte.sun.com., 0×30003, 0×0, 0×0)
binding to directory cred.org_dir.eu.cte.sun.com. (parent first)
bind succeeded
create handle: DG
release otis.cte.sun.com., status = 0
status=Success, 1 object, [z=427, d=363, a=3327, c=4918]
cg13442.eu.cte.sun.com.
: estale.eu FSS 7 $;


I got lucky with the customer and the problem fell out at the first
attempt. They had a half deleted a NIS+ replica server so it was still
in the org_dir directory object and was still running rpc.nisd but
would respond with an error when ever it was called. If you got
another NIS+ server you were o.k. In a way it was a pity to get there
so quickly as I never had the chance to send them this script:


#!/bin/ksh
unset dom
unset host
verbose=0
vecho()
{
if [ $verbose -eq 1 ]
then
echo $@
fi
}
while getopts vd:h: c
do
case $c in
d) dom=$OPTARG ;;
h) host=$OPTARG;;
v) verbose=1 ;;
\?) echo "USAGE ${0##*/} [-v] -h host -d domain — command"
exit 2;;
esac
done
shift `expr $OPTIND – 1`
if [ "${host}" = "" -a "$dom" = "" ]
then
echo one or both of -h and -m must be used
exit 1
fi
if [ "$dom" != "" ]
then
for server in $(niscat -o ${dom} | nawk ‘/Master/ { master=1 } /Name/ { if (master==1) print $3 }’)
do
echo server=$server
vecho NIS_OPTIONS="server=$server" $@
NIS_OPTIONS="server=$server" $@
x=$?
if [ $x -ne 0 ]
then
niserror $x
fi
done
fi
if [ "$host" != "" ]
then
vecho NIS_OPTIONS="server=$host" $@
NIS_OPTIONS="server=$host" $@
x=$?
if [ $x -ne 0 ]
then
niserror $x
fi
fi
exit 0


Which amongst other things will run the same command using each NIS+
server for a directory in turn. Great when you think something is
misbehaving but can’t quite put your finger on which server it is.





: estale.eu FSS 10 $; ./nis_server -d org_dir.eu.cte.sun.com nismatch [auth_name=14442,auth_type=LOCAL],cred.org_dir
server=otis.cte.sun.com.
cg13442.eu.cte.sun.com.:LOCAL:14442:10,2192,14,2703,2400,2502,2705,2194,3000,2708,826:
server=enotty.cte.sun.com.
cg13442.eu.cte.sun.com.:LOCAL:14442:10,2192,14,2703,2400,2502,2705,2194,3000,2708,826:
server=pacrim-repzone-eu.cte.sun.com.
cg13442.eu.cte.sun.com.:LOCAL:14442:10,2192,14,2703,2400,2502,2705,2194,3000,2708,826:
server=eu-repzone-eu.cte.sun.com.
cg13442.eu.cte.sun.com.:LOCAL:14442:10,2192,14,2703,2400,2502,2705,2194,3000,2708,826:
: estale.eu FSS 11 $;
ls -l ./nis_server
-rwxr-x–x 1 cg13442 staff 910 Mar 30 2001 ./nis_server
: estale.eu FSS 12 $;


It appears that script is 7 years old. Again the problem was not
really NIS+ at all but an admin error.


Range check /etc/name_to_sysnum

April 9, 2008

Ever since I have worked at Sun I’ve had a list of “usual
suspects” when systems crash. Those drivers that when you got
bizarre memory corruption or the system would watchdog reset or fail
in other ways that you did not expect were always present, lurking,
staring at you with a “accuse me if you dare” look on
their face. Invariably disabling the driver would make the problem
disappear but proving it was that driver took days, weeks, sometimes
the proof never quite came. You know the drivers, fddi will be
burned into my brain as having such a driver.


Many of those drivers turned out to be third party products that
just had not taken the DDI/DKI interface to heart or feel that using
memory after freeing it is just fine. How we love kmem_flags.


However I digress.


Today’s problem is due two things;



  1. A third party application adding a bogus entry to
    /etc/name_to_sysnum


  2. The kernel not range checking the values in
    /etc/name_to_sysnum..



The result is often, but not always, a system that won’t boot.
What is worse is that if the system does boot then applying a patch
to it can change it into a system that does not boot.


So as a small step to prevent this I have filed this bug:


6686086
System call numbers in /etc/name_to_sysnmum should be range checked.


The fix is trivial, the pain relieved enormous. The webrev is here
if anyone wants to review it:
http://cr.opensolaris.org/~cjg/sysnum/webrev/.


Mounting a Mirrored root disk when booted from CDROM.

April 7, 2008

I previously mentioned about modifying
an underlying
mirror. So if you have booted from CDROM (yes I
know they are all DVDs now but at least I’ve stopped saying “tape”)
or the network then here is how on Solaris 91
and above.





First get a copy of the
/kernel/drv/md.conf file. Since mounting a file system in this case
will result in rolling the log, even for a read-only mount, this
actually breaks my rule. Which is why it is wise to keep a copy of
the md.conf file somewhere safe or failing that on that USB pen drive
that you have dropped behind the sofa. It will be in the back up of
the root file system you have.


# ufsrestore xf cg13442@1.2.3.4:/backup/root.dump kernel/drv/md.conf
Warning: ./kernel: File exists
Warning: ./kernel/drv: File exists
You have not read any volumes yet.
Unless you know which volume your file(s) are on you should start
with the last volume and work towards the first.
Specify next volume #: 1
set owner/mode for ‘.’? [yn] n
Directories already exist, set modes anyway? [yn] n
#


If you have, like I have at home, backed up your root file system
into your ZFS pool you can have a quick demonstration as ZFS gets
this right when you get the md.conf, you just import the pool. You
have to use an alternative root as the root is read-only so it can’t
create /tank:


# zpool import -R /tmp tank
# ufsrestore xf /tmp/tank/backup/root kernel/drv/md.conf
Warning: ./kernel: File exists
Warning: ./kernel/drv: File exists
You have not read any volumes yet.
Unless you know which volume your file(s) are on you should start
with the last volume and work towards the first.
Specify next volume #: 1
set owner/mode for ‘.’? [yn] n
Directories already exist, set modes anyway? [yn] n
#


Now run update_drv(1M) to load the new md.conf and you are away.


# update_drv md
devfsadm: mkdir failed for /dev 0×1ed: Read-only file system


That is it. You can now access your meta devices:


# metastat
d10: Mirror
Submirror 0: d11
State: Needs maintenance
Submirror 1: d12
State: Needs maintenance
Pass: 1
Read option: roundrobin (default)
Write option: parallel (default)
Size: 70078473 blocks (33 GB)
d11: Submirror of d10
State: Needs maintenance
Invoke: metasync d10
Size: 70078473 blocks (33 GB)
Stripe 0:
Device Start Block Dbase State Reloc Hot Spare
c1t0d0s0 0 No Okay Yes
d12: Submirror of d10
State: Needs maintenance
Invoke: metasync d10
Size: 70078473 blocks (33 GB)
Stripe 0:
Device Start Block Dbase State Reloc Hot Spare
c1t1d0s0 0 No Okay Yes
d20: Mirror
Submirror 0: d21
State: Needs maintenance
Submirror 1: d22
State: Needs maintenance
Pass: 1
Read option: roundrobin (default)
Write option: parallel (default)
Size: 1022706 blocks (499 MB)
d21: Submirror of d20
State: Needs maintenance
Invoke: metasync d20
Size: 1022706 blocks (499 MB)
Stripe 0:
Device Start Block Dbase State Reloc Hot Spare
c1t1d0s1 26001 Yes Okay Yes
d22: Submirror of d20
State: Needs maintenance
Invoke: metasync d20
Size: 1022706 blocks (499 MB)
Stripe 0:
Device Start Block Dbase State Reloc Hot Spare
c1t0d0s1 26001 Yes Okay Yes
Device Relocation Information:
Device Reloc Device ID
c1t1d0 Yes id1,sd@SFUJITSU_MAP3367N_SUN36G_00N024DA____
c1t0d0 Yes id1,sd@SFUJITSU_MAP3367N_SUN36G_00N022FA____
#


There is a document in the service database formally know as
SunSolve #202794
(Previously Published As 75210) which claims you need to unload the md driver for Solaris 10 you don’t. I am updating that document.



1At
the time of publishing I have not verified this on Solaris 9 but I
think it should work. I have clearly verified it on 10! When I have
verified it I will update this post. Update: I can verify this works on Solaris 9



What does the home server do?

April 6, 2008

I was recently
asked
what the home server serves. So here is the list:



  1. NAS server. NFS and CIFS (via SAMBA). There is a single
    Windows system in the house which is increasingly not switched on.
    NFS for the two laptops that frequent the network. All supported via
    ZFS on two 400Gb drives with literally thousands of snapshots,44170.
    Space is beginning to get short thanks to the 10Mega pixel SLR
    camera so in the not to distant future a disk upgrade will be
    required.


  2. Sun Ray server. There are (currently) three Sun Rays. One
    acts as a photo
    frame
    and has no keyboard or mouse. The other two provide real
    interactive use. I can foresee a situation where we have two more
    Sun Rays.


  3. Email server. SMTP and IMAP via exim and imapd
    respectively. Clearly this implies spamassassin and and antivirus
    scanner, clamAV.


  4. SlimServer. I’ve just run up a slim server to get better
    access to internet radio stations. Having a radio player that I can
    hook up to the hi-fi that is not DAB,
    ie crap
    1,
    would be good. I feel a squeezebox
    coming soon.



Just occasionally and every time I ran up VirtualBox the system
would struggle to cope prior to the CPU
upgrade
even when using the Fair
Share Schedle
r. Since the upgrade it has not had any problems
with having us all using it.









1It
is nice to see that I am not alone in realising DAB
is crap
.