Looking for a Ghost Replacement

When describing the problems I was having configuring our new servers, I mentioned that I was going to try using Clonezilla to speed the process.  The idea was to get Windows installed and all the other software configured on one machine, and then just clone the drive.  Seemed like a good thing to do.

So I fired up Clonezilla, fought through the user interface to tell it what I wanted backed up and where, and then pressed the any key (really!  There was a prompt that said, “Press the any key”) to start the copy.  Clonezilla promptly told me that my network card wasn’t supported.  It would have been nice if it would have checked that when I first started the program.

Slightly discouraged but not yet willing to give up, I decided to try PING.  Another cryptic user interface, but I won’t complain too much considering the price.  This time my network card was supported and after a couple of house it had created a copy of my partition.  So I fired up the next machine, ran PING, told it to copy the partition image to the disk.  That went well, too.  Except that after I was done, the machine wouldn’t boot.  The BIOS doesn’t see a bootable image on the disk.

At that point I gave up.  I’d already spent almost a full day futzing with the things.  In that time I could have installed and configured all of the machines.  (Or so I thought.)  In any case, my experiments with free drive cloning software left me disappointed.

There’s a good overview of Ghost alternatives over at pack rat studios, but I haven’t had the opportunity to try any of the others mentioned.  Clonezilla didn’t support my hardware, and PING failed for reasons unknown.  Anybody know of a package that actually works?

By the way, telling a potential user, “if your network card isn’t supported, download it and compile it into the Clonezilla package” is not likely to be met with smiles and thanks.  More likely, users—even technically competent users like me who are capable of downloading and building—are more likely to say, “no thanks,” and move on to something else.

Another look at Cash for Clunkers

A few weeks ago I said that Cash for Clunkers is a wreck.  Now that the program has ended, let’s see the results.

The people responsible for Cash for Clunkers are hailing its success.  I’m still having trouble understanding what the goals of the program were beyond a “feel good” measure designed to make people think they’re getting something for nothing from the Obama administration.  By that metric, the program was certainly a success:  people will remember that Uncle Sam helped them buy a car.  Although they might be a little less enthusiastic when they realize that the $4,500 rebate is taxable.

Transportation Secretary Ray LaHood said that U.S. consumers and workers were “the clear winners” under the program:

Manufacturing plants have added shifts and recalled workers. Moribund showrooms were brought back to life and consumers bought fuel-efficient cars that will save them money and improve the environment.

Let’s take a look at those three “successes”:

“Manufacturing plants have added shifts and recalled workers.”  Surprisingly true.  But with car sales almost certainly going back to below pre-handout levels, I can’t imagine that those workers will be fully employed for very long.  Manufacturers will rebuild their inventories, find that people still aren’t buying cars, and then lay off the workers again.

“Moribund showrooms were brought back to life.”  Well, yeah.  But with no more giveaways, those showrooms are going to be empty of customers yet again.

“…consumers bought fuel-efficient cars that will save them money and improve the environment.”  This one is full of specious reasoning.  According to press reports, the most popular new vehicle purchased under the program was the Toyota Corolla.  So let’s use it for a little thought experiment.  But first, let’s construct our “average” purchaser under the program.

We’ll assume that the “average” person drives 40 miles to work and back each day, plus cruising around here and there.  Give him 300 miles per week.  Also assume that his clunker was paid off and it got 10 miles per gallon.  So he’s burning 30 gallons of gas a week.  At $2.50 a gallon (current price in the Austin area), that’s $75 per week in gas.

A new 2010 Toyota Corolla lists for between $15,350 and $20,000.  I’m going to assume that the cars were bought from dealers’ inventories and that there was a relatively even mix of feature packages, so the average price for a car was $17,500.  With the $4,500 rebate, the price of the car is $13,000.  I’m going to ignore other incentives  and tax, title, and license, figuring that they’d likely cancel each other out.  And since the car will be destroyed, there is no trade in value.  By the time everything’s said and done, the buyer owes the dealer $13,000 for the car.

The new Corolla gets an estimated 35 MPG on the highway and 27 MPG in the city.  Let’s be generous and assume that the guy will average 30 MPG in all of his driving.  So at 300 miles per week, he’s burning 10 gallons of gas a week at a cost of $25.  Quite a savings over the $75 per week he was burning in the other car.  So his monthly outlay for gas is now $100 rather than $300.  Such a deal!

Except we forgot to pay for the car.  If he pays that $13,000 balance in cash, it’ll take him 65 months (almost five and a half years) to make up the difference with his $200 per month savings in gas.  If he gets a loan for that $13,000 (figure 5 years at 5.25%), his monthly payment is $250.  So he’s saving $200 per month but it’s costing him $250.  That new car that was supposed to save him money is costing him $50 per month.  Oh, and don’t forget the $1,000 that rebate is going to cost on next year’s tax return.  That’s another five months of “savings”.

Granted, there’s some savings for maintenance because the new car is under warranty.  But that savings will be easily offset by the increased cost of insurance on the new car.  I’ll call it a wash.

I purposely was very generous with the numbers here in an attempt to make it look like a good deal.  I just couldn’t make it work out.  In general, you will not come out ahead by buying a new car in the hope that it will “pay for itself” by saving on gas.  Unless you drive a lot more than 500 miles per week.

The claim that the new cars will “improve the environment” is wishful thinking.  At best, driving the new car will cause less harm to the environment than will continuing to drive the new car.  And that statement is based only on the differences in fuel efficiency between the two cars.  It does not take into account the environmental costs of manufacturing the new car or disposing of the old car.

There’s no doubt that the Cash for Clunkers program stimulated some economic activity.  Whether that was good is another matter entirely.  They say that $2.8 billion in incentives were passed out.  We’ll round that up to $3 billion to include the cost of administration and other expenses that were incurred but they’re not telling us about.  Reports say that almost 700,000 new cars were purchased.  If we figure an average price of $20,000 (lots of Camrys were purchased under the program), that $3 billion resulted in $14 billion in direct economic activity.  But if we assume that the average loan on those cars was $15,000, then there is $10.5 billion in new consumer debt out there.  Not a good thing, in my opinion.

Certainly there are people who benefited from the program:  car dealers and manufacturers got a boost, as did those workers who got recalled to the manufacturing plants.  Companies making auto loans couldn’t be complaining.  But it’s not all roses.  Car salvage yards are grumbling a bit because their margins have been slashed:  apparently dealers are paying less per car to have them hauled off.  And used car sales have plummeted.  Only 700,000 cars using one-third the gas probably won’t affect gasoline retailers much.  But if it was seven million, I can imagine that convenience stores that depend on gasoline purchases for a large part of their profit would feel the squeeze.

Those who supported Cash for Clunkers can go ahead blindly believing that it was unquestionably a good thing.  I’m skeptical.  As I showed above, the “deal” almost certainly didn’t result in a savings for most buyers.  More importantly, I disagree with the idea that it’s government’s responsibility to prop up a sagging industry.  I also don’t believe that the immediately visible positive effects of this program will in the long term offset the negatives that I’ve outlined.

A few Linux nuggets

In general, it’s a bad idea to start a file name with a dash (-). For example, a file named --help is going to give you all kinds of trouble. Say you want to rename the file. mv --help help.txt is going to show you the help for the mv command. You’ll have to give it a path name: mv ./--help help.txt.

Say you’re behind a router and you want to know your external IP address. If you have a Web browser, you can go to www.whatismyipaddress.com or one of the scads of similar sites returned by a Google search of “what is my ip address”. But from the Linux command line? The easiest one I found (i.e. the program was already installed) was using wget. The following will show you your external IP address:

wget -O - -q icanhazip.com

By the way, going to http://icanhazip.com from your browser will also tell you your IP address.

If you’re configuring a local DNS cache, you probably don’t want to include your ISP’s DNS servers in the forwarders section of named.conf.options. If you do that, then all DNS requests will be forwarded to your ISP’s DNS server. What you really want is to query the root name servers. Just leave the forwarders blank. You’ll get better performance and you won’t annoy your ISP. Here’s a properly configured forwarders section:

forwarders {
// to query the root name servers,
// don't put any IP addresses in here.

Running BIND on the latest Ubuntu release, the root hints file is at /etc/bind/db.root. The root servers change from time to time, so it’s a good idea to keep this file updated. You can get the latest file from ftp://ftp.internic.net/domain/. Three files appear to contain the same information: db.cache, named.cache, and named.root. You can download any one of them, copy it to your /etc/bind/ directory as db.root (after making a copy of the existing file), and then tell BIND to reload its database: sudo rndc reload.

A Dog and a Doodle

I ran across a little carved dog online and thought I’d duplicate it.  After I’d finished and posted it on the woodcarving forum, I discovered that the original pattern came from Larry Green’s book, First Projects for Woodcarvers.  My little dog didn’t turn out exactly like the one I saw, or like the one in the book.  But it’s close.  Next time I’ll do a little better job on the eyes and ears.

The little dog is about two inches tall, two inches deep, and one inch wide.


Some people doodle on paper with a pencil.  I had a scrap of walnut, my pocket knife, and few extra minutes.  So I doodled in walnut.  The entire piece is two inches tall.

Yahoo! Mail customer care stinks

I am currently engaged in a week-long struggle with Yahoo! Mail’s “customer care” about an email that they’re blocking.  Since the beginning of the year, my server has been sending a daily report about crawler performance to me and to my coworkers.  The email consists of a single HTML file, inside of which are some internal links and hundreds of text URLs, but no actual links to those URLs.  Our company’s email is hosted by Yahoo.

Until 10 days ago, that report was delivered daily, without fail.  But since we changed our colocation setup and got new IP addresses, the mail has been sporadic:  bouncing eight of the last ten times I’ve tried to send it.  The error message I get back from Yahoo’s server says that the message is rejected “for policy reasons.”  Digging deeper, I find that Yahoo’s filter seems to think that there are “links to potentially objectionable material or malicious software.”

When contacting Yahoo, I gave them considerable detail, including the text of the message, a full description of the problem, and the reason why I thought that their filter was being over zealous.  Their responses have been canned boilerplate paragraphs, first asking for information that is not relevant or that I’ve already supplied, then explaining the policy:  the same policy that’s on their Web site and that I told them I already understood.  I have yet to receive a response from Yahoo to indicate that they’ve actually read and understood any of the information that I’ve sent to them.  I’m convinced that if I sent a message requesting a ham and swiss on rye, they’d reply by asking me to forward the full headers from the email in question.

I would strongly discourage anybody from using Yahoo for their business email.  Their response to this simple request has convinced me that Yahoo’s incompetence is not limited to search (which they’ve finally agreed to farm out to Microsoft), but permeates the entire organization.  If you want reliable email and intelligent, helpful support, find somebody other than Yahoo to host it.

Software Upgrades

Firefox just notified me of the available 3.5.2 update.  I figured what the heck and told it to apply the update.  After the update was applied, Firefox restarted and then I got a notification that one of my addons, the .NET Framework Assistant, is incompatible with the new version of Firefox and has been disabled.  Truthfully, I don’t know what that addon does, but if it was something I used regularly I’d be pretty ticked off that Firefox decided to disable it.  The update software should have checked for incompatible addons and notified me before applying the update.

I spent entirely too much time last week configuring our new machines, installing Windows, configuring updates, and getting the machines installed and running at the colocation facility.  After obtaining a USB diskette drive so that I could install BIOS updates, I ran into a problem where the BIOS update program wouldn’t work.  It took a while, but I finally tracked the problem down to the fact that we got OEM machines.  That is, Dell makes them exactly like the PowerEdge 1950, but they don’t have the Dell brand on the outside.  For reasons unknown to me, you can’t install the PowerEdge BIOS on the OEM machines.  You have to find the OEM BIOS on Dell’s site.

The OEM BIOS, by the way, comes in Windows and Linux versions, diskette, and as an ISO image.  Why doesn’t Dell supply an ISO for the regular PowerEdge BIOS?

If you’re installing Windows Server 2008 or Windows Vista from the original distribution media (that is, the 1.0 distribution), do the following.

  1. Install from the original source media.
  2. Download and apply the Service Pack 2 update.  This is a big download:  over 500 megabytes for the x64 version of Windows Server 2008.  And it takes an hour or more to install.  Be sure to reboot after the update is applied.
  3. Go to Windows Update and apply all other updates, rebooting as recommended.
  4. Finish configuring your system.

If you do anything else, like applying interim updates before installing the Service Pack 2 update, or try installing roles or Windows components before applying all of the updates, you will very likely have trouble.  Trust me on this one.  It vexed me for almost two days.

I suspect that some sequences of updates end up causing incompatibilities.  I can’t prove that, since I didn’t keep track of the order in which I applied updates with the machines that went wrong.  When you think about it, it’s pretty amazing that Windows Update works as well as it does.  Whatever the problem was, I found that I can avoid it by following the procedure above.

Note to software vendors:  update notifications continue to pop up in front of whatever I’m working on at the moment.  It’s bad enough that you found a security problem in your application that requires me to update.  But to interrupt what I’m doing by bringing your silly update notification to the front is horribly bad manners and you risk me wondering why I put up with your crap at all.  Make those notifications less intrusive, dang it!

Purple Teacher Eater

When I was in fourth grade, there was a kid named Gilbert (that might have been his last name) who would draw all manner of things.  At nine, I thought he was an incredibly gifted artist, especially considering that I could barely draw a stick figure.  Gilbert’s favorite drawing subject seemed to be bug-eyed monsters, usually coming out of spaceships on the hunt for teachers to devour.

After seeing my little alien posted on the woodcarving message board, another member carved one and posted a challenge to all others:  carve an alien.

I sat down Saturday with a little scrap of basswood and was somehow reminded of Gilbert and his teacher devouring monsters.  So I figured I’d carve one in his style.


The name Purple Teacher Eater was coined by yet another member of the woodcarving message board.  Works for me.

Aliens Among Us

Either I was abducted by aliens and forced to carve a likeness, or my exercise in “sit down carving” (picking up a block of wood with no specific plan of what to carve) has revealed something disturbing about my imagination.

Either way, I had fun carving this one.


I have it on good authority that the aliens don’t always dress this way.  They just don native attire when they’re trying to blend in.

A diskette? What’s that?

We just bought some off-lease Dell servers locally and I’m tasked with getting them set up and installed at the data center.  It’s not my favorite part of my work.  I’m at heart a programmer, and fiddling with hardware always manages to frustrate me.  Today’s encounter is particularly maddening.

We want to outfit these new servers with 32 GB of RAM each.  Since the machines only have eight RAM slots, we need 4 GB DIMMs.  I’ve mentioned before that quad-rank RAM is much cheaper than dual-rank RAM, so we go for the quad-rank parts whenever we can.  And our experience with these servers is that we can.

So I loaded one machine with 32 GB of RAM, turned it on, and it reported “No Memory.”  It turns out that these machines will support quad-rank RAM only if you have a later BIOS.  The BIOS on the machines we recently obtained is more than two years old.  But, hey, I’m okay with fiddling around a bit in order to save some money.

Now, Dell is great about making updates available on their support site, and within minutes I had downloaded the BIOS update on my workstation.  But installing the update turns out to be something of a problem.  You see, the BIOS update distribution creates a bootable FreeDOS diskette that contains the new BIOS image and the program to install it.

A diskette?  This is 2009!  Nobody even buys a server with a diskette anymore.  Hell, the Poweredge servers we bought don’t even have a place for a diskette drive!  How the hell am I supposed to install this BIOS update?  Would it be so hard for Dell to spend a little time making a bootable FreeDOS CD image that I can download?

There is another way to install the BIOS update, by the way.  Dell has Windows and Linux executable programs that will update the BIOS.  Of course, those require that your machine is running a version of Linux or Windows that Dell supports.  I find it irrational in the extreme that I have to install Windows just to update the BIOS on these machines.  If I’m really lucky, I won’t run into issues running Windows Server 2008 on a machine with an older BIOS.

I did briefly explore the idea of creating my own bootable FreeDOS CD with the required files on it.  There’s a program called FDOEMCD (FreeDOS OEM CD-ROM disc builder assistant) that supposedly will do that.  However, part of the build process is a 16-bit DOS program, which won’t run on my 64-bit Windows box.  I suppose I could put together a 32-bit XP system or a Virtual PC image, but doing that will take as much time as installing Windows.  Still, I’d sure like to explore that option one of these days when I don’t have anything more pressing to do like write rants.

And, no, I haven’t forgotten that I need to install Windows on these machines anyway in order to get everything running.  It’s just that having to install Windows first before doing the BIOS upgrade makes things a bit more inconvenient.

By the way, since I wasn’t looking forward to installing Windows five times, I’m taking a look at Clonezilla.  The idea is to install Windows once and then clone the drive image.  I’ll let you know how it goes.

A few carvings

I’ve been keeping up with the carving.  Mostly, I’ve been carving those little bears and smaller versions of the wizards.  But I’ve also done a few caricatures and some “found wood” pieces.  The thing everybody seems to like the most is Walter the Walnut Whale:


I find it interesting that this is what grabs people’s attention, as it’s probably the easiest thing I’ve carved in quite a while.  I cut the rough outline on my bandsaw, spent an hour or two rounding it, and then another hour or so sanding before applying the finish (orange oil and beeswax).

I’ve made quite a few of those little bears by now:  probably 30 or 35, all told.  I’ve given at least half of them away to various people.  The ones I like the most, though, are those that I made from found wood.  Here’s one I carved out of mesquite from the yard.  There are a few more in the gallery.


And then there are the caricatures.  Last week I finally painted the caricature that I’d carved in June.  The colors turned out a bit more vibrant than I had planned, and the flash made them even brighter.  But I”m happy with the way it turned out.


So that’s what’s happening on the carving front.  In addition to the photos above, the gallery contains:

  • A disembodied head, which was an experiment in flat plane face carving.
  • Another little caricature.  It stands 3″ tall.
  • A little bear carved from purpleheart.
  • My first try at carving a bear from mesquite.



A sample text widget

Etiam pulvinar consectetur dolor sed malesuada. Ut convallis euismod dolor nec pretium. Nunc ut tristique massa.

Nam sodales mi vitae dolor ullamcorper et vulputate enim accumsan. Morbi orci magna, tincidunt vitae molestie nec, molestie at mi. Nulla nulla lorem, suscipit in posuere in, interdum non magna.