About Scott C. Lemon

I'm a techno futurist, interested in all aspects of humanity, sociology, community, identity, and technology. While we are all approaching the Singularity, I'm just having fun effecting the outcomes of the future!

Migrating NetWare to Linux …

Today I took another step forward in migrating my last NetWare servers to Linux.

While working at Novell I did a considerable amount of R&D on my
own time to set up a complete ISP using Novell’s NetWare. I
experimented with web servers, mail servers, IRC servers, voice/video
conferencing servers and even wrote an MP3 streaming server for
NetWare. By the time that Eric Schmidt joined us at Novell, I had
already created a long list of limitations that were stopping me from
being successful. The irony of the entire situation is that now NetWare
v6.x really has some powerful Internet services … but it’s really too
late. SuSE Linux is going to be the future for Novell.

One of the primary Internet services – of course – is the web server. As a part
of the executive team that partnered with Netscape to create the
Novonyx venture, I quickly embraced the Novonyx SuiteSpot Web Server
on NetWare and have been running it since. To facilitate my move to Linux, I
wanted to first move to Apache on NetWare, and then take the configuration to Linux. Once I have Apache on NetWare working
solid, then changing out the kernel underneath is no big issue.

To get from Netscape Enterprise Server to Apache, the first thing that I did was to take copies of the two core
configuration files – obj.conf for Netscape, and httpd.conf for Apache.
What I found is that there were three core areas that I had to address:

  1. virtual host definitions
  2. log file specs
  3. cgi handling

The first two items in this list were fairly simple to convert. It really
just came down to creating all of the httpd.conf virtual host
definitions. In the obj.conf it might look like this:

<Client urlhost=”www.inevitable.org”>
   NameTrans fn=”document-root” root=”/users/org/Inevitable/Web/Docs”
</Client>

and so in the httpd.conf it now looks like this:

# the.inevitable.org
<VirtualHost 63.230.21.106:80>
    ServerAdmin support@onepostal.com
    DocumentRoot /users/org/Inevitable/Web/Docs
    ServerName the.inevitable.org
    ErrorLog /users/org/Inevitable/Web/Logs/error_log
    CustomLog /users/org/Inevitable/Web/Logs/WebHits.log combined
</VirtualHost>

Note that this also addresses the ‘combined’ log file format and location. In the obj.conf I had to have some lines like:

Init
log0=”/users/org/Inevitable/Web/Logs/WebHits.log”
format.log0=”%Ses->client.ip% – %Req->vars.auth-user% [%SYSDATE%]
“%Req->reqpb.clf-request%” %Req->srvhdrs.clf-status%
%Req->srvhdrs.content-length% “%Req->headers.referer%”
“%Req->headers.user-agent%”” fn=”flex-init”

and:

<Object ppath=”/users/org/Inevitable/Web/Docs/*”>
    AddLog fn=”flex-log” name=”log0″
</Object>

… to write to the logs. Apache is much simpler. It’s just the line within the virtual host above:

CustomLog /users/org/Inevitable/Web/Logs/WebHits.log combined

With all of my .conf file converted, everything seemed to work well. Except cgi …

NetWare was always an interesting animal to deal with when it comes
to server-side development languages. There are a lot of
intersting hoops that have to be jumped through to invoke scripts …
and most of this is done through “NLMs” which are the binary
executables on NetWare. On my servers I had some scripts written
in various languages – including Netbasic and Novell Script – and this
turned out to be the toughest part to define and get working.

The first step was to get ‘mod_lcgi.nlm’ working. I added it to the httpd.conf with the following line:

LoadModule lcgi_module modules/mod_lcgi.nlm

I then had to find the right combination of statements to
get mod_lcgi working properly. The following section I added to
the end of the httpd.conf … and it took me a *long* time to get it
right!

<IfModule mod_lcgi.c>
    AddHandler lcgi-script .nlm .ns .asp .nsp .pl .bas

    ScriptAlias /nsn sys:/nsn/web
    LCGIModuleMap sys:/nsn/lcgi/cgi2ucs.nlm /nsn .ns

    ScriptAlias /sp sys:/nsn/web
    LCGIModuleMap sys:/nsn/lcgi/scrptpgs.nlm .asp .nsp /sp

    ScriptAlias /perl sys:/perl/web
    LCGIModuleMap sys:/perl/lcgi/cgi2perl.nlm .pl /perl
    AddEnvVar PERL_ROOT sys:/perl/web

    ScriptAlias /netbasic sys:/netbasic/web
    LCGIModuleMap sys:/netbasic/lcgi/cgi2nmx.nlm /netbasic .bas
</IfModule>

Once I had that working, I just had to add the mod_lcgi.nlm to the
apachemodules directory … uh and then things went very wrong.

When I restarted the server, mod_lcgi barfed with a whole lot of
“Unresolved Externals” … symbols that could not be resolved and
dynamically linked. It appeared that mod_lcgi.nlm was attempting to
autoload ‘nslcgi.nlm’ and dynamically link.  I had to dig for a
while to determine what
the issue was. I found this Novell TID
that explained my problem! I went and looked at one of my newer
servers where Apache was running fine, and sure enough I found an
updated ‘nslcgi.nlm’ in the
system directory of that server … once I updated this NLM I was
up and going …

I am now running all of my web sites on Apache on NetWare … and so it
is now just one next step to get all of this running on Linux … maybe
next week … 😉

If anyone else is trying to do something like this … feel free to contact me and ask questions!

Off the net for a bit …

We left on vacation on Monday … the 28th of June … and so I’ve been
off the net until today. It’s a little strange to not be checking
e-mail … or even keeping up on news. I found out that Marlon
Brando died
… what a bummer. He was an amazing actor … and
always will be. His movies will be around forever …

What was interesting about getting back on the net tonight, is how I
really take bandwidth for granted. I’m up here in West
Yellowstone, Montana
… and have wireless Internet because I stumbled
on it last year. While we stayed Monday and Tuesday in Lava Hot
Springs, Idaho
although it was fun to swim at the Olympic Swimming Complex … I didn’t have any access.

That does remind me of a cool little company that I stumbled on in Lava Hot Springs … 😉

What kind of parties do you go to?

My friend John Pugh sent me this link last night … I liked it.

Someone posted to a mail list:

A few weeks back I was a party
and someone brought up a product which enabled you to hack into
wireless networks and scan for them similar to Netstumbler. I can not
remember its name or find it using search engines.

What was great, was the response:

I wanna go to a party with you. I’ve never been able to talk about
anything like that at a party. At least not with someone who was
interested in it.

It is a funny sign of the times, when so many people are
becoming so aware of technology. Of course, it also could be a
sign of the location. My other friend Erin Quill indicated that
of course in Silicon Valley this would be a commonplace conversation.

Next week we’ll be having a 4th of July party up in West Yellowstone
with a lot of friends. Of course we’ll be outside bicycling,
hiking, visiting Yellowstone park, etc. with a large group of families … most who have parents that work in high tech.

Of course … out there in the middle of the wilderness … I’ll be on the net the whole time.  There is wireless
Internet access up there … I found it last year using NetStumbler …

Backyard Bear!

Last night I was on our back deck talking with my wife. We were
talking about where we might plant some sunflowers. As I was
looking around the backyard, I saw something in the corner of my eye,
that was just over the fence in the back corner of our property.

My first thought was that a big brown dog was slowly running up the mountain … and then I realized it was a big brown bear!

It turns out that my neighbor called the county sheriff when this bear
chose to walk through his back yard … then crossed the street …
then went though the yard next to mine … and then we watched it amble
up the mountain towards my Internet communications shed. The bear
quickly crossed over the top of the rise near the shed and we lost site
of it.

This is the first time that I have seen a bear that close to our house
…. it was fun and a good reminder about the presence of wildlife!

Fedora Core 1 up2date problems

Once I was able to get Fedora Core 1 installed and working – and past
the issues that I had with the Dell GXa systems that I’m using – I ran
into the next issue … Up2Date not seeming to work …

I had seen this on previous Fedora Core 1 installations, however had
never looked around the see what the issue might be. I dug in
this time and found the following great article on Fedora Core 1 Up2Date problems.
It seems that the obvious problem was that the Redhat servers were
getting swamped with update requests and downloads. Changing the
configuration for ‘yum’ so that it would use one of the many ‘mirror
servers’ out there fixed the problem in a second.

I’m now experimenting with both Fedora Core 1 and Core 2. I know
that there are other distros out there, but for now I want to track
both Fedora and SuSE … I’m also going to continue my experimentation
with Darwin … I think it’s a dark horse that it going to make some
progress … just not sure how much yet.

Fedora Core 2 … problems and answers …

After all of the problems installing SuSE Linux on my Dell Optiplex GXa
machines (some old boxes that I’m using for wireless gateways) I
figured that I’d jump to Fedora. Fedora Core 1 installed just
fine … and took almost no time … except …

Once I rebooted I was unable to get the integrated 3Com Ethernet
adapter to work. I figured that I would jump to Fedora Core 2 and
see how that worked … just for the fun of it. No good … the
3Com driver still wouldn’t work.

I had to do some real digging to finally find the answer … this bug report at Redhat detailed the problem … Kudzu!  Seems that Kudzu might just leave the board in a weird state …

I followed the instructions as was written … disable Kudzu on boot … and
everything works fine. It was interesting to see this resolved as
of this month! Well … now I’m onward and upward …

No longer at The SCO Group …

I am out.

After just slightly more than a year, I am no longer working at The SCO Group.  It has been quite an experience.

Several years ago, I began to work with a small start-up company –
iBase Systems – that had one of the best engineering teams that I have
ever worked with.  They were extremely capable, motivated, and
practiced XP and Agile methodologies for development.  It was a
blast.  I joined them as a consultant, and worked with them
through some initial rounds of funding, and then as we worked to evolve
the company from a ‘tools’ company to a product company.

In early 2003 – pre-SCO lawsuits – we began discussions with SCO about
partnering and licensing.  These talks expanded into acquisition,
and in June of 2003 we were acquired by The SCO Group … just as the
first lawsuit was announced.  I have to admit that I was a little
unsure of the step we had just taken, however I did know that I was
going to get a good education and experience of UNIX and Linux.  I
did.

Over the last year I was able to gain incredible insight and knowledge
about the history and evolution of UNIX, and the birth and origins of
Linux.  No … I am not ‘anti-Linux.’  No … I do not agree
with the media hyped versions of things … I was able to develop a
more objective perspective.  I have my own opinions about the
whole situation … and nothing is ever black and white.

Anyhow … after a year working at SCO on next generation products,
UNIX, and various other assorted things … it became apparent that I
was open to moving on to other things.  I love to create and
communicate new and leading edge technologies.  I am not one for
sitting around to wait out the outcomes of lawsuits.

As of June 11th, 2004 I am no longer working at The SCO Group. 
I’ll enjoy watching as things related to the lawsuit unfold.

I’m off to get back to work, and to re-engage in the industry!

Installation experiences with SuSE …

Last night I was experimenting with the installation of various
versions of SuSE Linux. I had received two copies of SuSE 9.0 at Novell’s Brainshare several months back, and also downloaded the .iso images of SuSE Linux Enterprise Server 8.0 from the Novell SuSE download site.

During one of the sessions at Brainshare the speaker was giving out
‘prizes’ for answering various questions, and so I picked up both SuSE
9.0 ‘personal’ and SuSE 9.0 ‘professional’ … along with several other
little trinkets for the kids.

I have to admit that I was shocked when I could not get three different
versions of SuSE to install on my Dell Optiplex GXa server!

I tried to install SLES 8.0 … after the first CD it told me to insert
the next CD … but had locked the CD drive! No matter what I did
I could not get the CD to eject.

I tried the SuSE 9.0 versions and found that ‘personal’ didn’t include any of the packages that I required.

I tried SuSE 9.0 ‘pro’ and it also died during the first CD with errors installing a package.

I tried RedHat and Fedora … both worked flawlessly.

I installed Fedora … what one Novell friend called a “hobbyist”
operating system … due to the fact that it worked! I want to
know why SuSE wouldn’t install … it really surprised me!

Counting down till Friday …

I know that I have been *really* quiet on my blog lately.  I have
been very busy on a number of fronts, and I also have been counting
down the days for this Friday the 11th.  There are a number of
reasons for this … and I’m sure that I’ll be bloggging on Monday the
14th to share some of the things that are going on in my life …

It’s all good … I am looking forward to taking the month of June to
complete a number of things, and I am really looking forward to our camping trip to Yellowstone for the 4th of July.  After that I’ll be ready to get going again on some new projects.

There is a lot going on out in the world, and in the computer industry … and I am about to re-engage!