About A.P. Lawrence

A.P. Lawrence provides SCO Unix and Linux consulting services http://www.pcunix.com
Hardening your Kernel with OpenWall

The Openwall Project provides security related kernel patches for Linux and BSD kernels.

Goal seeking code

This is an extremely unsophisticated program that demonstrates evolutionary DNA. You start by passing it a string:

Understanding PAM

PAM is the Pluggable Authentication Module, invented by Sun. It’s a beautiful concept, but it can be confusing and even intimidating at first. We’re going to look at it on a RedHat system, but other Linuxes will be similar – some details may vary, but the basic ideas will be the same.

Replacing a Spreadsheet

Spreadsheets can be powerful tools, and particularly so in the hands of an expert user. A spreadsheet can be used to reorganize data and to extract information not otherwise available. For example, at a client site, an application report generates a listing of hourly billing, but can’t give the cross-reference totals desired.

Javascript setTimeout Problem

A neighbor wanted to run Google ads on his website. It’s one of these turnkey things that give you an on-line store that you can add products to.

Transfer SCO Acucobol to Linux
· 1

I doubt I’ll see too many more of these, but I had a call from someone with a crashed SCO 3.2v4.2 system.

Linux Certification Gaining Ground but Cisco Still on Top

I was interested to see that RHCE (Red Hat Certified Engineer) was listed in slot 3 of certifications IT professionals want to get.

Troubleshooting: Preserve the scene
· 1

You’ve seen it on television or in the movies: important evidence is lost at a crime scene because someone wasn’t careful enough to preserve it.

Transferring Mail to a New Mail Server

Sometimes we just have to move on. Your current mail server may just not be meeting your needs, so you’ve put up something new. But what about old mail? If your servers are identical (Sendmail to Sendmail, etc.) or use the same mailbox storage format, you may be able to just transfer files directly. If not, read on..

Fixing 404 errors

A 404 error is what you get when your browser tries to access a page that doesn’t exist. Maybe you mistyped something, or the link you followed was mistyped by someone else, or maybe the webmaster moved it or renamed it or just deleted it. It’s annoying for you, and sites that care about your visit try to avoid it happening.

Dynamic DNS Services Update Scripts

Strangely enough, I never had any need for a dynamic DNS service until this week. In retrospect, it really does seem odd that I’ve never needed such a service before now, but so be it.

SME Server Software Raid Failure, Grub 0x10 error

An SME customer called this morning saying that his system had apparently stopped working (web pages and mail were unavailable) and therefore he had rebooted.

Creating ext3 File Systems

The ext3 filesystem is a journaled file system that is compatible with ext2 (an ext3 filesystem can be mounted as ext2 if necessary).

ProFTPd, wu-ftpd, and general ftp security

FTP in general has a long and sad history of security problems. If you need to run an ftp server, you need to keep careful track of vulnerabilites and exploits that may make for a very unhappy day.

Writing and Compiling C programs on Linux

Most Linux and Unix programs are written in C. When you download source for a project, it will often be C or C++ source code. You don’t necessarily need to know a darn thing about C or anything else to compile the source if you aren’t changing it. It may be helpful for you to understand a bit if you are having problems with the compile, but even that isn’t really necessary.

Testing for Network Connectivity in a Script

Sometimes a script needs to know if it has network or internet connectivity before it continues, or perhaps its whole purpose is the report a loss of connectivity or inability to reach specific services.

Waiting Too Long to Upgrade

had related at Another Raid Failure that an initial attempt to rebuild the raid had failed, and left the story with fresh drives on order and winging their way toward us. The drives did arrive, but unfortunately the rebuild still failed. A Knowledge Base article suggested that there might be unreported problems on other elements of the array, with the suggested solution of blowing it all away and recreating from scratch. As we still had some suspicions about backups at that point, I didn’t want to do that until we had unquestioned good recovery capability.

Text Configuration files and XML

Configuration files are a problem for both operating systems and applications. Where do you keep them, how are they structured?

Custom Tab Completion

I’m sure you already know about tab completion: type part of a command name and hit TAB and you get its matches. Leave a space and then hit TAB, and you get filenames. Wonderful stuff. But what if YOUR command wants user names instead of file names?

Sun offering free, open source Solaris 10 – not quite yet

II’m reading everywhere that Sun is making Solaris 10 free and open source ( http://www.rednova.com/news/display/?id=106224).

Text::Autoformat: Smart Text Reformatting with Perl

I’ve been using http://groups-beta.google.com/ for Newsgroup posting for a while now. It’s convenient for me because of my nomadic life style where I have different ISP’s and often different machines with varying OSes. Google only needs a browser, and they aren’t overly fussy about that, either.

Sun and Open Source

We don’t even yet know what Sun means by “open source”, but already the pundits are arguing about whether making Solaris “open source” (whatever that turns out to mean) will help them or hurt them.

How Old is That File?

Sometimes you want to know the age of a file. Perl has a “-M” test that gives you age in days, but this customer needed it in minutes. That’s easy:

Another RAID failure

There must be something in the air. I’ve had another RAID failure. This time, it was a hardware RAID, specifically a seven year old DPT controller (DPT was subsequently bought by Adaptec).