The Man who Saved Everything

Let me introduce you to my friend Steven Shaw, or "Fat Guy," as he likes to be called.

Let me introduce you to my friend Steven Shaw, or “Fat Guy,” as he likes to be called.

Fat Guy lives in New York City, is a lawyer, and over the last three or four years, has cultivated a second career as a professional food writer — and a damn good one, too. At 32, Fat Guy was one of the youngest men to win the James Beard Award for Food Journalism.

Some other interesting facts: Fat Guy owns a seventy-pound, drooling bulldog named Momo, Fat Guy likes to wear fish pants, and he has an Indiana Jones-like wife that frequently leaves for months on hiking trips through Nepal, Mongolia, and other far-flung regions of the earth. Fat Guy’s also the co-founder of my food web site, eGullet.com.

Fat Guy is a Windows user, just like most people that use a PC. So, it came as something of a surprise when one day he called me asking for help. (It seems I’m the resident computer expert among my group of friends and family.) The conversation went something like this:

“I’m sick of getting all these goddamn viruses and spyware! Can’t you do something? This is a Pentium 4 that’s only two years old, and it’s going as slow as a 286 from all the crap that’s clogging it up!”

“Well, we could re-install Windows and put on some more aggressive spyware, firewall, and anti-virus software, but perhaps you should consider moving over to Linux.”

“Linux? You mean the server OS we use for eGullet? On my PC? What about compatibility issues? What about all of my files? Is it that much harder to use than Windows?”

“Don’t worry, it’ll all work. Linux has really gotten a lot better for desktop use recently.”

“Okay, but I want to be able to revert to Windows in case this cockamamie scheme of yours doesn’t work.”

“No problem. But don’t worry. It’ll work. I promise.”

So, one afternoon, I went over to his apartment, armed with all my Windows software (should we need to reinstall anything) and all my Linux distros, including the various bootable, live CDs I’ve collected for hardware debugging and rescue situations.

One of my favorite distros is the Linux Bootable Business Card (LNX-BBC, http://www.lnxbbc.com). It’s just big enough to contain most of the programs you need for debugging a system and testing, but the total contents fit on one of those business-card-sized CDs, so you can keep it in your wallet at all times. I also recently have become fond of Knoppix (http://www.knoppix.org), which is an entire distro filled with over 900 programs and a full-blown version of KDE. Its good for making sure someone’s hardware is a viable candidate for Linux, and Knoppix contains GUI applications such as QtParted, in case you need to resize an NTFS or FAT32 partition to make space for Linux.

In this case, however, I decided to give Fat Guy one of my spare hard disks, a 120 GB Maxtor, because his 40 GB hard drive was full (more on that in a moment) and I didn’t want to risk any of the data on his machine. He’d also likely sic his bulldog on me if I botched his setup, and I’m rather fond of my extremities.

The hard disk install went flawlessly. We attached it to the secondary IDE chain and set it up as a master in his Dell PC.

Next came the decision of which Linux distro to install. As Fat Guy was going to be a new Linux user, I suggested we go with Xandros Desktop 2, which closely mimics the Windows desktop experience, installs easily, and has very good integration with Windows files and Windows networks. Being Debian-based, it also has the ability to install a vast library of applications from the Debian “testing” and “unstable” repositories should we need some stuff that didn’t come with Xandros.

We went down the list of stuff that Fat Guy would need. He needed an office suite that could read his Microsoft Office documents, as he has a huge library of legal templates and cases that he’s worked on. The office suite would be provided by OpenOffice.org 1.1, which comes pre-installed with Xandros. As a fallback, we would also re-install his existing copy of Microsoft Office 2000 using the Crossover Office compatibility software that also comes with Xandros.

Instant messaging, photo editing, and scanner support would be provided by GAIM .77, GIMP 2.0, and Xsane, respectively, which we would install from the Debian testing feeds.

His email and browser needs would be met by Mozilla, Konqueror, and Evolution, whichever combination of those he ended up most comfortable with.

The Xandros install on the new hard drive went fine, but with one minor hitch: we discovered that the Dell BIOS was setting the hard disk as AUTO, and the machine refused to boot the OS after installation. After shouting many obscenities, praying to the gods, doing the trial and error dance, and doing some quick research on the ‘net, we discovered that if we manually entered the drive geometry for heads and sectors and drive type in the BIOS, everything worked fine.

X11, the graphics card, sound card, and networking pretty much went flawlessly. Xandros properly detected his Nvidia graphics adapter, his on-board sound chip, and his network card, and automatically configured his IP address via DHCP from his Linksys router. Windows workgroup and network printer configuration was fairly straightforward, as Xandros has good setup utilities for that in its Control Center. His network shares showed up, and network printing to his HP Deskjet attached to his other Windows box worked flawlessly. So far, so good.

For his PC faxing solution, we decided on using eFax.com, and set his account to use PDF files for sending and receiving faxes instead of its proprietary .efx format.

Next, set up his e-mail.

Oh, the e-mail. As I was setting up the POP and SMTP account settings in Mozilla Mail, Fat Guy said something that sent a chill down my spine.

“Uh, you’re gonna copy my email over, right?”

“Why would you need to do that? You mean you don’t clean out your Inbox?”

“I can’t delete anything. I’m an attorney. I’ll be disbarred if I lose any correspondence. I have to keep all my stuff for like six years. And if you can’t migrate it over to the new system, there’s no point in moving over to Linux. I need to be able to access it at all times.”

“Um, okay, that should be possible. What email client do you use?”

Microsoft Outlook Express, the one that comes with Windows 2000.

“Holy crap, no wonder you were complaining about viruses. Well, I think they have a way to import that into Evolution, but we may have to convert it into a .pst file, the data format that Outlook uses, not Outlook Express.”

“Okay, whatever you say, just make it work.”

“Sure. No biggie. How big is your mail file?”

“Um, I dunno, I have everything I’ve ever sent or received going back to 1999. My email is my personal filing system. I can’t do without any of it.”

So, I looked at his Outlook Express data directory. It was 8 GB! I felt a sinking feeling in my stomach. We might not pull this off so easily.

“Okay, I can do this,” I thought. “I’ll just use the .mbx import routine from Evolution”.

There were several large .mbx files comprising Fat Guy’s email. I tried importing the biggest one first. KABOOM! Evolution crashed hard. That did not portend well.

Apparently, there are alternate methods of converting such a Brobdingnagian Windows email repository over to something Linux could use, but they involved installing Outlook Express’ big brother, Outlook, importing the files into it, doing an export to a .pst file, and then converting that over to something neutral that Linux could use, like a standard UUCP mail file. Unfortunately, some of those methods involved some rather flaky third-party utilities to do the conversion.

Another novel method involved installing an IMAP server on a Linux box, having Outlook connect to that to copy the data, and then moving the data off the IMAP server to the new Linux machine. Unfortunately, we didn’t have a spare Linux box, and his data was too massive to send over to eGullet. com’s IMAP server even over his broadband cable modem connection. So, that procedure was out, too.

So began the painful Wile E. Coyote-like process of exporting the Outlook Express mail file and trying every method possible to get the data converted. First, we had to free up space on his constipated Windows hard disk. We moved all his Office documents and digital photos — all 10 GB of it — onto his home directory on the new Linux disk by read-only mounting his NTFS partition and copying the files over with the Xandros File Manager (XFM). This was a cinch to do, as Xandros automatically detected his Windows drive and assigned a mountpoint for us. We might have had to do this manually on another Linux distro.

After booting back into Windows, we deleted the data we had just copied over, installed Outlook 2000, and went thru the routine of converting his 250,000+ emails (not including his SPAM collection) using the Outlook Express import filter in Outlook. Once we were able to verify his emails were copied intact (after waiting this out during a three hour lunch break at the local Syrian take-out joint and wandering the streets of Manhattan), we ran the Outlook 2000 export routine and exported his data into a rather large personal folder file (a .pst). So far, so good.

Next step was to get Evolution or Mozilla to import the mail. According to the Ximian Evolution Users Guide, Evolution is able to read mbox format, which is used by Windows programs such as Eudora 6.1 and Mozilla Mail, which are able to import from Outlook. However, we found out we couldn’t use the Linux version of Mozilla Mail: we had to install the Windows version and run the Outlook import routine. (As it turned out later, we probably would have saved a few steps by downloading the free version of Eudora and copying over the data from that.)

After installing Mozilla on Windows, we ran the mail import routine, which again took a while, as Mozilla created the indexes. However, this alone didn’t create an mbox file: Mozilla was still using the native file format from Outlook, as it uses an Outlook DLL to access the data. To fully convert it over, we created several new mail folders in Mozilla for Windows, and copied over the imported emails. This created new, native mbox data files that we could copy over to his .mozilla directory in his home directory on Linux, or directly into Evolution using the mbox import routine.

Whew!

So, now Fat Guy is a Linux user and free of spyware, spam, and viruses, and is as happy as a clam with his newfound speed and stability. And, the next time I have to migrate his data over to a new PC, we just FTP, Samba, or NFS copy the mbox files over. Easy peasy.

And I still have my arms and legs to show for it.



Jason Perlow lives, breathes, and eats Linux (as well as many other gourmet foods), and is a regular contributor to Linux Magazine. Send foie gras and email to perlow@linux-mag.com.

Fatal error: Call to undefined function aa_author_bios() in /opt/apache/dms/b2b/linux-mag.com/site/www/htdocs/wp-content/themes/linuxmag/single.php on line 62