WordPress migration from Windows 2003 IIS to a Linux Ubuntu appliance (Debian)

This took me quite a while, and you may have noticed the downtime on this site as a result.  I thought I’d share my process and solutions in case anybody else is trying to do something similar.  These are my working notes from the migration, so please excuse any lack of polish.  Word to the wise: Don’t do this if you are in a hurry.

  • Installed Windows 2008 R2 on a brand-new box, then enabled HyperV 
  • Created a virtual server, and installed a wordpress (turnkeylinux) appliance from .ISO file.  I set this up for 256M and gave it a modest amount of disk space.
  • Configured the virtual to have a legacy NIC and removed the Virtual NIC, as Ubuntu doesn’t support the virtual NICs yet.
  • From wordpress admin on my old server, exported to an XML file (and checked "include content")
  • Using wordpress admin on new appliance, imported the XML file. This set up WP with just IP addresses instead of machine names, which is perfect for now.
  • Installed Arjuna theme on new WP (I wanted the new one to look exactly like the old one)
  • On checking wp_content/uploads, it looks like the export/import process already moved those images and things – a pleasant surprise. I thought I was going to have to transfer those manually.
  • In my browser, I opened new and old sites in different tabs (using IP addresses), and marched down "plugins" – adding plugins to new box, and configuring them where possible.  I have quite a lot of plugins (about 25) so this took a while.  Also, I suspect these plugins are what was contributing to my memory/swap usage issues below.
  • Using Firefox/FireFTP, transferred contents of wordpress /HLIC folder to the new box. This folder contains images cached by one of the plugins (If I link to an image on the web, this plugin grabs a copy, puts it in this cache folder, then updates the html so I am not reliant on external websites to serve those images).
  • Created old.inaneworld.com DNS and pointed to the old server, added to IIS. As of today that old server is still alive, so you can hit it if you want to compare, though obviously no content is being updated there.  I’ll probably decommission that next month.
  • Changed hostname of linux box to www.inaneworld.com
  • Edited /etc/postfix/main.cf so that outgoing emails would be happier (then did "postfix reload"). Changed "myhostname" to inaneworld.com – this makes outgoing email come from user@inaneworld.com
  • I upgraded the virtual to use 600M of RAM but I’m still having "hang" problems.  Ubuntu and HyperV don’t play well together so you can’t make it a “dynamic memory” virtual.  Ubuntu will never request more memory, so it’ll stay at whatever your starting allocation was.
  • Memory usage seems fine (check with "top"), but swap seems exhausted. This makes little sense, but I'm adding more swap via a swap FILE:
    • apt-get install dphys-swapfile
  • This seemed to help, but didn’t solve the hang problem.  Technically, it doesn’t “hang” anymore, it just responds so slowly that you think it’s hung.
  • From net.wisdom, and my own observation, the default apache2 configuration is very memory hungry, so tweaks are needed:
    • The Apache2 config file is /etc/apache2/apache2.conf
    • I Changed KeepAliveTimeout to 3
    • In the mpm_prefork_module section, I made it look like this:
      • StartServers 1
        MinSpareServers 1
        MaxSpareServers 5
        MaxClients 50
        MaxRequestsPerChild 5000
    • Then, I restarted apache:
      • /etc/rc6.d/K09apache2 stop
      • /etc/rc6.d/K09apache2 start
  • Note, to keep an eye on this, fire up "top", and then type G followed by 3 (must be capital G). This displays memory usage in descending order.

It's been a couple of weeks now and I have no hangs, and performance seems to be good!  I hope this information will be helpful, and best of luck to you in porting YOUR blog!

new server for inaneworld!

Yay! After several days of tedious work, inaneworld is now running on it's new server.  It was running on windows 2003 with IIS.  Now, it's running on Ubuntu with Apache.  I used the turnkeylinux.com "wordpress" appliance.  A word of caution: watch the memory usage.  Docs say that you can run this with 256M of RAM (I'm running it under HyperV, but this probably applies whichever hypervisor you are using).  I found that after I loaded all my dozens of plugins, the bloat caused the machine to become unusably slow (sometimes hang).  I bumped the RAM to 400M and it lasted longer, but still hung.  I bumped it again to 600M and now it seems happy.  Please let me know what you think of the performance, especially if you notice a difference vs the old server.

Merry Christmas and Happy New Year!


Invasion of personal privacy – Big Brother becomes Little Brother

People like to complain about the specter of Big Brother – our government watching our every move, “protecting” us, regulating us, and generally sticking their bureaucratic nose where it doesn’t belong.  With technological advancements, this sort of thing becomes easier to do and more monitoring becomes possible.  The scary part is this is now expanding to little brother: Parents.

I have talked to parents who delight in these newfound abilities to spy on their kids.  Cell-phone GPS tracking can now track your kid (or anyone you have influence over) without their knowledge.  Alerts can be sent to you if they stray outside certain “zones” you can define (such as school, work, etc).  Time-sensitive alerts can be sent if the drone (your kid) is not where they are supposed to be at 10:00 at night for example.  There is now a device you can get from your insurance carrier (currently in beta test) which plugs into the car’s diagnostic port and provides a real-time tracking feed.  You can track speed (is Johnny driving too fast?), you can track all kinds of telemetry data, all of which is subpoena-able in the event of an accident (possibly not in your best interest).

There are other surveillance techniques and technologies like these which enable you to do some very detailed monitoring of your offspring.  So, it’s clear that we can do this and more now!

The burning question is (or should be)… should we do this?  Just because the individual being monitored is your son or daughter, it doesn’t make any difference.  This is a serious invasion of privacy.  I can’t wait for the first lawsuit where some kid sues their parents over this.

One of the key things we need to learn when growing up is responsibility and trust.  This is a two way street.  You learn to trust people, or not, and you learn to be responsible or suffer the consequences.  You also learn about respect.  Respect is not something that you get at birth, it’s something you earn, and must constantly maintain – sort of like a good credit rating.  If we don’t trust our kids, they won’t trust us.  If we don’t respect our kids, they won’t respect us.  If we spy on our kids, perhaps our kids will spy on us.  Do we want to encourage that?

I know if I were a kid growing up today and I found out my parents were doing this to me, they would lose all my respect and trust in a heartbeat, and those are MUCH easier to lose than regain.

Are you sure? Really sure? Recycle Bin paranoia


Why yes, I AM sure, that’s why I selected “delete” in the first place.  Now don’t get me wrong, I think it’s good to confirm things which may be questionable, such as “Are you sure you want to launch the ICBM?”.  However, deleting a file doesn’t really delete it.  It just puts it into the “Recycle Bin”.  If you really didn’t mean to do that, or have pangs of regret a few minutes later, you can get it back.  So why do we need to be pestered for confirmation of an undoable event?  Answer: We don’t, it’s just inane.

Here’s an excerpt from Tim’s UI Guidelines (coming soon to a theater near you):

Don’t pester the user.  Confirm actions that cannot be reversed, but otherwise allow the user to do what they want, when they want.

Microsoft? Are you listening?

Webcam gadget for windows sidebar – TWIV (Timed Web Image Viewer)

For the last few years, I have been doing my annual pilgrimage to the gadgets gallery looking for a gadget that will take a URL of a webcam generated image, and will display it on my desktop, refreshing it on some schedule.  You wouldn’t think this would be a difficult thing, would you?  Every single one of these I have downloaded and tested seems to work, after a fashion, but has issues.

My goal is this: As you know, I live in the mountains.  In the winter, this means snow.  So, I want to keep a couple of the local road condition webcams in little windows on my desk so I can watch conditions, and if they are deteriorating fast then maybe I’d leave work early before things get bad and congested.

Finally, I found one that seems decent!  Click here

This is called “Twiv” (Timed Web Image Viewer).  You give it the URL for an image out on the web, and it displays it for you in a 320×240 window – a good size.  You can set the refresh time in seconds, and that’s it.  Very simple, no goofy features, and who knows, maybe this one will actually run without causing horrible system performance problems like the others I have tried.  I now have 3 webcams on my desktop, which is ideal.  I set them to refresh every 5 minutes which should keep my system load at a minimal level, and that’s more than frequent enough for road conditions.

Update: Cyber-D has released a new version so now you can have multiple webcams and they will persist through a reboot – Thanks, Dario!

Winter will soon be here. Time to think about snow!

Well ok, not everybody in sunny Southern CA needs to think about snow.  I happen to live in the mountains, and so it is a factor for me.  I thought I’d share my recent thoughts & discoveries in this area as ski season approaches.  Every year, we get “flatlanders” who drive up the hill woefully unprepared to deal with snow.  They drive rear-wheel cars with low clearance, and don’t bring chains or anything!  Needless to say, the roads are a mess with people stuck and blocking the road for no good reason other than their own lack of preparedness.

My primary vehicle is a Toyota Prius.  This is a great car, but not well suited for snow.  The biggest problem with it is low ground clearance.  I can put chains on it and it does well, but since it’s so low, the front spoiler/bumper gets torn up plowing the snow in between the wheel ruts.  My solution was to buy a cheap 4WD vehicle and put snow tires on it.  That’s really nice because 99% of the time you aren’t required (and don’t need) chains, you just drive on through the checkpoints and don’t have to sweat it.  Still, I keep chains in the Prius just in case I end up needing them.

When we first moved up the hill, I wanted chains I could very quickly put on and take off, as I’d be doing that twice daily.  After some research, I found Spikes Spiders.  These are really great:Spikes-Spider SportYou install “hub rings” on your wheels.  When you want to put the chains on, you shove the plastic thing (above) over the tire, and the black disc with the red handle in the center locks them in place with a twist.  I can install these on both wheels, without moving the car or laying out chains, get back in and drive off in literally less than a minute.  Other folks with chains and cables are still untangling them and laying them out – it’s quite amusing to see their faces.  Removal is just as quick.  Unlock the hub, pull them off the wheels, then back the car up a couple of feet and they fall off.

The big drawback with these is price.  They are expensive (for the sport model I need, about $550 per set – ouch).  Traction isn’t as good as chains, admittedly, but it’s good enough for my needs.  I never had traction problems with these installed.  They’ve been through several seasons and the links are wearing very thin, so I was thinking about what to do about that.  Their website offers parts, but these parts aren’t cheap either.  So, that makes me look around to see what else is out there.

I came across two products which seem easy and fast to install and remove, and also have the additional feature that you can use them on multiple cars with different tire sizes!

Jeko, an Italian company has some neat products.  Their “Put & Go” tire straps look really easy to use.  Also, on the same website, they have a really neat RV leveling device.


I also like their claims of low vibration.  Spikes Spiders rattle the car (and your teeth) a LOT when you are driving on anything but deep snow.

This appears to be an Italian company also, and they don’t have distribution in the US, but they are willing to ship.  They quoted me € 180,00 per set, and € 95,00 FedEx shipping to the USA. (roughly $374 – dirt cheap compared to a new set of Spiders)

Lytro light field camera is now available

I wrote a bit on the Lytro “light field” camera back in July.  The first version of their nifty new camera technology is now available for purchaseHere is a neat article from ArsTechnica which describes a bit about how this technology works.


At the moment, you’ll need a Macintosh computer to work with it, but they are working on a windows version of the software too.  I was very surprised at the price point too, starting at $399.  That’s actually affordable for mere mortals.

The big feature Lytro touts is the lack of focusing needed when taking a picture.  The camera actually only has a shutter button and an optical zoom control.  You focus later, touching the part of the image which you want to be sharp.  They are also talking about having the ability to lose depth of field entirely and make everything in focus, regardless of distance.  That would be great for your average casual photo-snapper.  For the more serious “artsy” photographer, depth of field is a great tool.  I’m hoping that you’ll be able to adjust the depth of field, as sometimes you want it very narrow to get a particular effect, and sometimes you want to widen it a bit without necessarily losing it entirely.

The odd thing to me is that it seems like this is all they talk about with this product.  On the beta discussion list it was mentioned that the camera is inherently 3D and they showed a couple of examples of pictures rendered in a couple of different 3D systems.  I’d have thought this was a pretty key feature to crow about.

Also, the camera has no flash as they claim it does fine in low light situations.  I’m skeptical of course, but if true, that would be very nice.

They say that future versions of these cameras will be available with interchangeable lenses and other more “pro” features.  Personally, I think it’s a good move to hit the mass market hard first, and try to get a foothold and establish a standard for “light field” images and processing software.  It will be interesting to see where this goes in a few years.



It’s the Platform, Stupid, says Google Engineer – and I totally agree!

I ran across this blog by Ed Burnette today:


He’s talking about a tirade by Steve Yegee of Google (click here to read it).  Warning: It’s long, so get comfortable.  On the other hand, it’s also right!  As Ed says in his blog above, people are missing the point about Steve’s rant.  He’s not bashing Google+ or really any Google product, he’s talking about a way of looking at things.  I’d think the higher ups at Google should want to take him out to dinner and buy him a new car, and start pushing people to move in the Platform direction.  It is a very different way of doing things than writing discrete applications that don’t talk to anyone else, and it’s harder, but to take Steve’s point, SO worthwhile in the long run.  It empowers other developers (maybe not even at your company) to take work you have done and use it as a building block to create something way cooler that you probably never even thought of.

This was written as an internal rant for Google folks, but it’s easily Accessible to other folks too.  Anybody doing software development would be well served to give this some serious thoughts.  Thanks, Steve – it IS about the platform.

Personal Helicopters – aka the real geek’s Beanie Hat

So with the latest disappointment from Moller, I did some poking around to see what other people are doing.  I turns out that quite a few folks are working on VTOL, but in a different way!  It’s a shame that none of these products, even though some appear to work quite well, seem to make it to market.  Especially ‘cause I want one!

Here’s one for motorcycle enthusiasts that’s downright sexy, the Malloy Hoverbike:


This is a rather interesting approach, and being a motorcycle rider, I like it!  It’s being developed in Sydney, Australia and has a target price of approximately $45,000 AUD.  Projected specs are: Airspeed – 150KIAS, Service ceiling – >10,000 ft, Dry weight – 110kg, Max gross weight – 270kg,  Total thrust – 295kg.  Development is funded primarily by Chris Malloy himself, with some donations.  So, it’s a slow development process as a result.  According to their website (no idea when the last update was), it has only been flown tethered, but they say it seems to be very stable.

Moller Skycar M400X demonstration postponed

Today is the day Moller Interational was supposed to demonstrate untethered, manned flight with their Skycar M400X prototype.  There have been no announcements on their website, and the blog section where this (among other things) was being discussed has been taken down, supposedly due to abusive fake postings by people impersonating Moller employees.  Hmm… doesn’t seem like it would be rocket science to secure THAT, now does it?

After doing a bit more digging today, I unearthed an article in Yahoo! Finance which states that the demo has been postponed.  This was released Sept 27, 2011.  I find it very curious that Moller’s website does not have any of this information.  One would think that platform would be an obvious way to communicate with the public and investors, and that from a PR standpoint, transparency would be a good idea.  But hey, what do I know, eh?

According to the Yahoo! press release: “The new flight date will be announced once the final approvals have been given from the FAA, event sponsors, Moller's flight preparation team and an acceptable weather window can be identified.”

There’s lots of spin on there, but they say the rescheduled demo will be conducted at Lake Minden, a private 41 acre lake resort located 20 miles north of Sacramento International Airport.

The date, of course has not been set.  Dumb, dumb, dumb.  You’d think that Moller would want to regain a bit of credibility by setting a date (soon) and then actually (gasp) going through with it.  But again, what do I know, eh?

I tend to agree with one of the followup posters on the above article: “Surely 35+ years is enough time to successfully overcome the relevant challenges. It might be time to let a more practical, results oriented leader take the reins. I suspect Burt Rutan could get the thing up and running in about 20 minutes.”  Let’s give him a couple of months so he can do a really bang-up job!