Strange error when compiling ports on FreeBSD

I was compiling portaudit on an older FreeBSD 5.3 machine today and received this strange message after typing make.

On FreeBSD before 6.2 ports system unfortunately can not set default X11BASE by itself so please help it a bit by setting X11BASE=${LOCALBASE} in make.conf.
On the other hand, if you do wish to use non-default X11BASE, please set variable USE_NONDEFAULT_X11BASE.
*** Error code 1

Strange, since I have X11 disabled in /etc/make.conf and the port in question doesn’t depend on X11. Anyway, simply adding the suggested line to my make.conf resolved the issue.

Linux/UNIX/IP Telephony ninja for hire

I’ve recently started looking for my next gig. If you or someone you know needs someone who can architect/build/operate Linux/UNIX or IP Telephony (VOIP) solutions please drop me a note . I will happily pass my current resume on to anyone who requests it. I’m located in the Calgary area at present but I am willing to telecommute/travel as required and I’m available for both contract and salary positions.

Some of my work includes:

– Built and operated the systems infrastructure of one of Canada’s largest e-commerce websites for 6 years. I scaled their server infrastructure to support millions of page views a day. They had over 50 million dollars in sales for 2006 on the infrastructure I built.

– Implemented a nation wide geographically redundant IP based business telephony solution that can support 50,000 subscribers and scale to millions of subscribers by simple hardware additions. Our small team delivered this solution in less than 90 days.

– Worked on the acquisition of a multi-million dollar e-commerce site, migrating the site from it’s infrastructure to my client’s in 3 weeks.

UPDATE: Since I’m still receiving requests for copies of my resume I thought I’d update this post to note that I’m currently employed full time.

Old school cable management.

While reading some messages on the nanog mailing list today I picked up on a discussion regarding a cable management technique called “Cable Lacing“. This is where cables are tied in bundles with waxed twine instead of zip ties or velcro. I remember seeing this when I was at a CO once, it never really dawned on me how much work would be involved in lacing up that much twisted pair. It’s the kind of thing you do once, not something you want to do with cabling that needs to be moved from time to time. That being said, it makes for an incredibly neat wire management solution.

Apparently it’s becoming a bit of a lost art as the old school telecom guys retire. Here’s a simple explanation of this lost art.

Cable Lacing

IBM Bladecenter “Can not read power-on VPD for blade”

Spent two hours at the DC Friday night trying to install some new blades in our bladecenter. Every time I installed a new blade the power light kept flashing rapidly. I logged into the web management for the bladecenter and saw the event log entry “Can not read power-on VPD for blade”. Because the bladecenter would not read the hardware VPD from the blade it would not allow it to power on.

After speaking with IBM support we decided to update the firmware of the AMM (advanced management module) in the bladecenter. When I tried to update the firmware it gave me an error saying that it could not install the update. After 45 mins of trial and error with the IBM engineer (great support BTW, 1000 times better than dell!) we decided to reboot the AMM. (this had no affect on the running blades btw).

After a reboot everything worked fine! I was able to install the 6 new blades and update the AMM firmware to the latest release. It was strange because all the other functions of the AMM seemed to be working fine, the already installed blades were communicating with the AMM without issue. I would suggest that anyone who runs into this issue should try to reboot the AMM first, as it’s a fairly low impact thing to do and it would have saved me an hour if I had thought to do it from the start.

Remove comments and blank lines from a file

Want to make that httpd.conf look clean and tidy? Have a file that contains a lot of blank lines or comments that you don’t want? Here’s a quick trick to remove all the extra cruft.

Say I have a file called config.conf. This file looks like this:
-bash2.05b cswanson@helios ~ % cat config.conf
# Sample config file!

# Here is a sample comment. Note the blank lines.

$config=/etc/blah
echo $config $1

# Here is some more sample comments.

Now we run egrep on the file to remove the commented and blank lines:

-bash2.05b cswanson@helios ~ % egrep -v '^$|^#' config.conf
$config=/etc/blah
echo $config $1
-bash2.05b cswanson@helios ~ %

If you want to save this output to a file just use a simple redirect:

-bash2.05b cswanson@helios ~ % egrep -v '^$|^#' config.conf > config.conf-new
-bash2.05b cswanson@helios ~ % cat config.conf-new
$config=/etc/blah
echo $config $1
-bash2.05b cswanson@helios ~ %

UPDATE: If you’re using vi you can use the following commands to achieve the same thing.

Remove blank lines:
:g/^$/d

Remove commented lines:
:g/^\s*#/d

Of course there are other ways to skin this cat using sed/awk etc but the above two commands have proven to be quick and easy for me.