Archive for April, 2007

Sunday Ride Report

Sunday, April 29th, 2007

Left my house at 0700 to meet Rick in Longwood at 0730. Rick and I rode out to the Ocoee Cafe to meet up with Mike and Don for breakfast at 0800. Food was good. The locals sitting outside on the bench making comments were entertaining too.

The route plan was simple: Rick and I were heading south/west to explore the far reaches of Polk county and enjoy some of Bogus Dave’s favorite roads. Mike and Don tagged along for a while then had to turn back toward home around 1000. Rick and I continued our journey.

I don’t remember most of the road names, but the nice view where we stopped for a short break on Lk. Buffum Rd. sticks in my mind. In total, we enjoyed many good roads, didn’t get arrested, and took the LONG way home from the southernmost point. East on 60, then 441 north to Kenansville, then north on Canoe Creek Rd. at a “very spirited pace” and eventually winding our way around the far east side of Orlando back up toward Longwood where Rick and I parted ways. My remaining 30 mile ride to Deltona was uneventful.

Rick: A huge thanks to you for leading the charge today and providing a great route well clear of the insanity happening in Leesburg (a.k.a. the Leesburg Bikefest).

380 miles total and I was home by 1800.

I hope everyone else had a good time today too.

Sunday Ride Report

Sunday, April 15th, 2007

I awakened at 0630 this morning to see if by chance the heavy storms had passed by sooner than expected. After hearing the rain pounding against the roof I went back to sleep for another 3 hours. The weather forecast I read before going to bed indicated we’d get a heavy, but narrow, line of storms moving through during the early morning hours. This is exactly what I saw when I looked at the weather radar at 1000 this morning. No problem…. today’s ride would simply start in the afternoon. Our riding group for the day decided to meet up at FZ1 Rich’s house at 1400 and begin the ride from there. This meant Tom and I had plenty of time to take a ride in my car in the rain over to Deland for a BBQ lunch, then leave from my house at 1300 to begin the 1 hour ride to Rich’s house where we were meeting up with the others. Before we could leave my place in Deltona, we spent a few minutes making minor adjustments to the positioning of Tom’s new Yoshimura muffler. As a result we were 15 minutes late getting over to Rich’s place in Ocoee.

I forgot to mention the wind. There was a constant wind of around 25mph and frequent gusts of perhaps 40mph for the entire ride. Enough to blow an inattentive rider an entire lane over.

There was no planned route. The only plan was that sometime much later in the afternoon we’d end up at a restaurant for supper. The official rider list was:

  • FZ1 Rich
  • CBR600 Gray
  • SV650S Patrick
  • SV650 Tom
  • GSXR1000 Jerry

Rich took point for the first leg of the ride and led us south and east down Seidel Rd then over to Marsh Rd stopping at hwy 27. Seidel has been very recently repaved and I was riding much more cautiously than usual since I had visions of coming into a turn too hot and finding those beloved little fresh asphalt pebbles at the worst possible time. After the stop at hwy 27, I suggested a long boring ride down to Rock Ridge/Green Pond Rd. via Dean Still Rd. So I was appointed ride leader. South on 27. Boring. Then west on Dean Still…..where I eventually found myself following a truck that was doing just over the speed limit. Normally I’d have led the group around the truck at the usual blistering pace, however, something told me take it easy and enjoy the scenery. Dean Still Rd is a long mostly straight wilderness road which is begging for high-speed operation but I maintained position behind the truck. Another 5 miles up the road, there he was…. a sheriff’s deputy parked under a big shade tree just waiting for a group of sport-bikers to come rolling through at 120+. I could sense his disappointment as we all rolled by. I then realized this was the exact same spot I had seen a deputy parked several years ago when doing that same route.

I’ll summarize the remainder of the route from here:

  • Rock Ridge/Green Pond Rd. up to hwy 33. Lots of debris left in the road by the wind.
  • 33 up to 561 North
  • Left onto Laws Rd. Yeah, I know the famous S-curve is anti-climactic in this direction :-)
  • 33 again up to Florida Boy’s Ranch Rd. back to 561 (almost no sand in the usual places today!)
  • 561 North all the way up to 19
  • then all the way around the lake shore over to Mt. Dora where we ate at the “Frosty Mug”. Damn I wish I had purchased some of THAT lakefront property years ago when it was affordable!
  • 46 east back toward Sanford, then various back roads north back home to Deltona.

Home by 2000 (8:00PM). It was a fantastic 230 mile ride!

While the engine was still hot from the ride I even changed the oil and poured in the fresh Wal-Mart Super-Tech 10W-40 non-synthetic oil! Yes, you read that correctly. I dumped $1 per quart Wal-Mart brand oil into my 2006 Suzuki GSXR-1000. No FUD here!!

Quick-n-easy archiving of a directory or file

Friday, April 13th, 2007

It happens all the time. You’re about to do something potentially stupid and decide that a quickie backup might be nice to have. I’ve written a simple script that makes this painless.

Suppose you have a directory named ‘whatever’ and you want a quick, recursive, backup of whatever is in it:

   arc whatever

will produce the following file:

   whatever.2007-04-13-150933.tgz

My arc script automatically handles the tar, gzip, and timestamp operations for you!

Put this in your /usr/local/bin/ directory in a file named ‘arc’ and make it executable:

#!/bin/sh

DT=$(date +%Y-%m-%d-%H%M%S)
verbose="v"

if [ "$1" == "-q" ]; then
  shift
  verbose=""
fi

while [ "$1" != "" ]; do
  dir=$1
  dir=${dir/\//}
  tar czf$verbose $dir.$DT.tgz $dir
  shift
done

exit $?

Give it a first argument of -q to have it quietly execute with no output.

Of course, this script can also be called upon from inside other scripts to do very useful things.

Mount problem notification

Friday, April 13th, 2007

After having yet another problem with a mount point becoming unmounted for no good reason and me not discovering it until after bad things had already happened, I needed a simple stand-alone way to monitor status of mount points.

#!/bin/sh
# mount_check.sh by Jerry Jackson
# A crude and simple way to monitor status of critical mount points.
#
# After making sure the mount is actually mounted, simply:
#
#     touch /mount_point/.mount_check_file
#
# then schedule this to run as a cron job as often as you'd like, for example:
#
#     00 */6 * * * /root/scripts/mount_check.sh
#

HOST=`uname -n`
MOUNTS="/backup/ /boot/ /home/"
CHECK_FOR=".mount_check_file"
PEOPLE_TO_ALERT="sysadmin@yourdomain.com 3335557777@cingularme.com"

for MOUNT in $MOUNTS; do
  if [ ! -f $MOUNT/$CHECK_FOR ]
  then
    echo "$HOST:$MOUNT is not mounted!"
    for PERSON in $PEOPLE_TO_ALERT; do
      echo "$HOST:$MOUNT is not mounted!" | mail -s "$HOST mount problem!" $PERSON
    done
  fi
done

Motorola v3xx USB tether to Cingular with FC5

Wednesday, April 11th, 2007

I got a new Motorola v3xx phone from Cingular ($38 from Wal-Mart with a contract renewal) and wanted to use it to access the internet from my laptop (which can boot Windows or Linux). The Windows side was easy using the MPT software (Motorola Phone Tools). Problem there is I almost never use Windows. For Linux, I decided on using KPPP since it was already installed with FC5 and I was able to easily gather the few needed hints via searching with google.

In my case, the “Query Modem” button in the KPPP GUI actually worked and populated all the modem setting fields correctly. I had read elsewhere that this doesn’t always work.

The end result is: approximately 290Kbps download and 340Kbps upload speeds. More than enough for remote systems admin work when a wifi hotspot isn’t available!

Here is most of my kppprc file (and I’ve highlighted the settings I believe are most important):

[Account0]
AccountingEnabled=0
AccountingFile=
Authentication=1
AutoDNS=0
AutoName=0
BeforeConnect=
BeforeDisconnect=
CallbackPhone=
CallbackType=0
Command=
DNS=66.209.10.201,66.209.10.202
DefaultRoute=1
DisconnectCommand=
Domain=
ExDNSDisabled=1
Gateway=0.0.0.0
IPAddr=0.0.0.0
Name=cingular
Password=CINGULAR1
Phonenumber=*99***1#
ScriptArguments=
ScriptCommands=
StorePassword=1
SubnetMask=0.0.0.0
Username=WAP@CINGULARGPRS.COM
VolumeAccountingEnabled=0
pppdArguments=

[General]
DefaultAccount=cingular
DefaultModem=cingular
NumberOfAccounts=1
NumberOfModems=1
PPPDebug=0
ShowLogWindow=1

[Modem0]
AnswerResponse=CONNECT
AnswerString=ATA
BusyResponse=BUSY
BusyWait=0
ConnectResponse=CONNECT
DLPResponse=DIGITAL LINE DETECTED
Device=/dev/ttyACM0
DialString=ATDT
Enter=CR
EscapeGuardTime=50
EscapeResponse=OK
EscapeString=+++
FlowControl=None
HangUpResponse=OK
HangupString=+++ATH
InitDelay=50
InitResponse=OK
InitString=ATZ
InitString1=AT+CGDCONT=1,"IP","WAP.CINGULAR"
Name=cingular
NoCarrierResponse=NO CARRIER
NoDialToneDetection=ATX3
NoDialToneResp=NO DIALTONE
PreInitDelay=50
RingResponse=RING
Speed=921600
Timeout=60
ToneDuration=70
UseLockFile=0
Volume=1
VolumeHigh=M1L3
VolumeMedium=M1L1
VolumeOff=M0L0
WaitForDialTone=0

Sunday Ride Report

Sunday, April 8th, 2007

Last week, SV650 Tom became NEW SV650 Tom. For various reasons, Tom decided it was time to trade up to a new red/black 2006 SV650 which was available at an agreeable price. Today’s ride started out cold and miserable. We stopped for a lengthy breakfast expecting the clouds to disappear… but that didn’t work. The heavy cloud cover never lifted until well after noon time. We didn’t care. Tom was too happy to be out riding his new bike and I had my jacket-liner-heater plugged in and was plenty warm.

First thing in the morning we swapped bikes for 20 miles because Tom wanted my opinion on whether the bike needed any adjustments or attention. I noticed immediately there was way too much free play in the clutch cable and we fixed that. Otherwise I found the new SV650 to be a truly enjoyable and perfect all-around motorcycle. Some people might want to replace the seat, but I know I could ride it all day with ease. I do believe it had the smoothest transmission I’ve ever experienced on any motorcycle ever. This bike has “hooligan” written all over it! A surprising amount of torque off the bottom and plenty of power through the mid-range. I also felt like the fuel injection was spot-on perfect.

We did a leisurely 120 mile ride and found a nice place for a photo session.

Photos can be seen at: http://jcj.net/gsxr/suzuki_showcase/index.html

At the end of the ride we went to my place to change out the break-in oil and cut open the oil filter for close examination. At the 160 mile mark, there was the expected amount of very fine metallic debris in the oil. I cut open the filter and stretched out the paper element to find slightly less than the expected amount of fine metallic debris in the filter. Tom will change the oil again at the 600 mile mark and re-examine the filter element. Like any well-maintained SV650 engine, I expect it should last forever.

Is it too late to start doing this new blog?

Wednesday, April 4th, 2007

Years after everyone else has already done it I am finally getting around to starting a blog. Those who know me also know I’ve been a little busy with an endless stream of projects for a long time. Starting this blog and keeping up with it may prove to be two very different things.

Who really cares what I have to say? Actually, I am intending for this to be mostly a technical reference for things I do. The only thing I hate worse than fumbling around to find a solution to a difficult problem is having to do it AGAIN because I didn’t keep good notes the FIRST TIME.

The wide range of technologies I work with have enough combined complexity and nuances that I simply don’t have enough gray matter to store it all. Moreover, I’ve conditioned my brain to forget EVERYTHING that I can easily find in a reference later. This can be a bad thing too. Sometimes it’s almost embarrassing to need a reference for basic syntax of a programming language I haven’t used recently….but at the same time I wonder why I can remember dozens of 128-bit WEP keys from nearly every wireless router I’ve ever configured.

Therefore, I could end up being the only consumer of my own blog postings about things like “DHCP Server Setup Notes” or “howto make Acrobat Reader work in FC6″.

On the other hand, maybe someone else will find something useful here too.

HOWTO: get VMWare Server running under FC6 x86_64

Wednesday, April 4th, 2007

I found out XEN and VMware won’t play nice together. Make sure XEN is not installed.

If they’re not already installed:

  • yum install xinetd
  • yum install kernel-devel

Download and install the latest VMWare Server rpm package. Don’t worry… even though the download suggests it’s an i386 version, it will still work just fine on the x86_64 platform.

Create a blank config.h file in /usr/src/your-kernel/include/linux/

      touch /usr/src/your-kernel/include/linux/config.h
      (where your-kernel is whatever kernel you're running)

run vmware-config.pl as usual.

ADDENDUM (found at: http://www.linux-noob.com/forums/index.php?showtopic=2952):

If you have a newer kernel like me kernel 2.6.20-1.2948.fc6 (where they are talking about 2.6.19-1.2911.fc6), this is how i got it working.

1)Register to get your free serial number(s) to start using VMware Server & then download http://download3.vmware.com/software/vmser…-44356.i386.rpm.
2)Make sure you have the following or updated
* gcc
* gcc-c++
* kernel-devel
* xinetd
& if i was in your shoes i will also install
compat-gcc-34
compat-gcc-34-c++
which will not harm your box (FC6 includes GCC 4.1 compiler. Some applications will NOT compile in GCC 4.1)
install GCC 3.4 to allow compiling applications which do not yet support GCC 4.1

yum install
3)uname -r & it should spit 2.6.20-1.2948.fc6
4)rpm -q kernel-devel & should spit [kernel-devel-2.6.20-1.2948.fc6]
5) rpm -i /home/user_name/VMware-server-1.0.3-44356.i386.rpm
6)VMWare server is installed & for your box to use it you will have to configure it
7)$ su -
# vmware-config.pl
this is what you get:

In which directory do you want to install the mime type icons ?
[/usr/share/icons]
What directory contains your desktop menu entry files? These files have a .desktop file extension. [/usr/share/applications]

In theory , you can valid & confirm each section.

8)End of installation if you have no errors !!! your configuration should look like this
The configuration of VMware Server for Linux for this
running kernel completed successfully.

You can now run VMware Workstation by invoking the following command:
“/usr/bin/vmware”.

Enjoy,

–the VMware team

as root

/etc/init.d/xinetd start

9)Now if everything went wrong & the vmware-config.pl aborted to configure with something like this

Using 2.6.x kernel build system.
make: Entering directory `/tmp/vmware-config0/vmnet-only’
make -C /lib/modules/2.6.19-1.2911.fc6/build/include/.. SUBDIRS=$PWD SRCROOT=$PWD/. modules
make[1]: Entering directory `/usr/src/kernels/2.6.19-1.2911.fc6-i686′
CC [M] /tmp/vmware-config0/vmnet-only/driver.o
CC [M] /tmp/vmware-config0/vmnet-only/hub.o
CC [M] /tmp/vmware-config0/vmnet-only/userif.o
/tmp/vmware-config0/vmnet-only/userif.c: In function ‘VNetCopyDatagramToUser’:
/tmp/vmware-config0/vmnet-only/userif.c:629: error: ‘CHECKSUM_HW’ undeclared (first use in this function)
/tmp/vmware-config0/vmnet-only/userif.c:629: error: (Each undeclared identifier is reported only once
/tmp/vmware-config0/vmnet-only/userif.c:629: error: for each function it appears in.)
make[2]: *** [/tmp/vmware-config0/vmnet-only/userif.o] Error 1
make[1]: *** [_module_/tmp/vmware-config0/vmnet-only] Error 2
make[1]: Leaving directory `/usr/src/kernels/2.6.19-1.2911.fc6-i686′
make: *** [vmnet.ko] Error 2
make: Leaving directory `/tmp/vmware-config0/vmnet-only’
Unable to build the vmnet module.

For more information on how to troubleshoot module-related problems, please
visit our Web site at “http://www.vmware.com/download/modules/modules.html” and
“http://www.vmware.com/support/reference/linux/prebuilt_modules_linux.html”.

Execution aborted.

10) Rendez vous at this page & download http://ftp.cvut.cz/vmware/vmware-any-any-update109.tar.gz which is a patch to fix this problem where it will save you a great big headache.
11)put this file in your /home/user_name & -> tar -xzf vmware-any-any-update109.tar.gz
12)After the file has been extracted, change to the /vmware-any-any-update??? directory and run:
13) ./runme.pl
14)During the configuration, which automatically follows right after the patch has been applied, I accepted all of the defaults to the questions that are asked, meaning the paths to directories that were listed, “yes” wherever there was [yes] as default option, and “no” where it was [no].
15)I am not sure what those error logs are, but it doesn’t look serious and VMware worked nicely after complete install
16)Once it’s all configured, the final stage follows, which creates the list of modules that are supposed to be loaded when your fc6 starts, as well as loads them right away to start using your VMware Server.

again as root
/etc/init.d/xinetd start

& beware , everytime you update your kernel you have to vmware-config.pl & if it does not work & is aborted use the patch again which is regularly updated at http://ftp.cvut.cz/

Another person noted a different compile error and commented that the patch also fixed his problem as well:

Note: i did receive a different error when running vmware-configure.pl.

here’s what I received:
===BEGIN===
Building the vmmon module.

Using 2.6.x kernel build system.
make: Entering directory `/tmp/vmware-config4/vmmon-only’
make -C /lib/modules/2.6.20-1.2948.fc6/build/include/.. SUBDIRS=$PWD SRCROOT=$PWD/. modules
make[1]: Entering directory `/usr/src/kernels/2.6.20-1.2948.fc6-i586′
CC [M] /tmp/vmware-config4/vmmon-only/linux/driver.o
In file included from /tmp/vmware-config4/vmmon-only/linux/driver.c:80:
/tmp/vmware-config4/vmmon-only/./include/compat_kernel.h:21: error: expected declaration specifiers or ‘…’ before ‘compat_exit’
/tmp/vmware-config4/vmmon-only/./include/compat_kernel.h:21: error: expected declaration specifiers or ‘…’ before ‘exit_code’
/tmp/vmware-config4/vmmon-only/./include/compat_kernel.h:21: warning: type defaults to ‘int’ in declaration of ‘_syscall1’
make[2]: *** [/tmp/vmware-config4/vmmon-only/linux/driver.o] Error 1
make[1]: *** [_module_/tmp/vmware-config4/vmmon-only] Error 2
make[1]: Leaving directory `/usr/src/kernels/2.6.20-1.2948.fc6-i586′
make: *** [vmmon.ko] Error 2
make: Leaving directory `/tmp/vmware-config4/vmmon-only’
Unable to build the vmmon module.

For more information on how to troubleshoot module-related problems, please
visit our Web site at “http://www.vmware.com/download/modules/modules.html” and
“http://www.vmware.com/support/reference/linux/prebuilt_modules_linux.html”.

Execution aborted.
===END===

running the any-any patch resolved my issues as well.

ANOTHER ADDENDUM (found at: http://dev.urandom.karakoon.com/index.php?tempskin=_rss):

After I upgraded to the 2.6.22.4-45.fc6 kernel, vmware-config.pl was exploding again while attempting to compile the vmnet module. After a few minutes looking around I found this:

  • Download the file http://npw.net/~phbaer/vmnet.tar
  • Save it to /usr/lib/vmware/modules/source/
  • (just save the tar archive there, there’s no need to untar)
  • Run vmware-config.pl again