Giving an old Toughbook a new lease on life with Linux
Posted by Ed Lasher on 4th Mar 2016
We all know that Toughbook laptops are built to last, serving long after their Dell and Acer cousins retire to the scrap yard. I am currently typing on an old CF-29 MK4, pulled from the shelves of the BJCS warehouse. It's about ten years old at the time of this writing, but even after a rough life out in the field, it still looks better than the HP laptop that has done nothing but sit on my desk at home for the last two years.
The venerable CF-29 was built in the bygone days of Windows XP. It watched as the brief candle of Windows Vista flickered out and powered along through the reign of Windows 7. Even as Windows 8 began to shake things up, this CF-29 kept running XP as well as it did when it first emerged from the Panasonic assembly line in 2006.
On April 8th, 2014, Microsoft cut off support for Windows XP and the once great operating system fell like an ancient stone wall against modern artillery. A BJCS technician took the CF-29 and loaded it with Windows 7. The Toughbook carried the burden better than expected, but ultimately ran too slow. The technician closed the laptop and placed it on a shelf where it sat until last week when I brought it to my desk.
Choosing a Linux Distribution
I had heard that Linux could "breathe new life" into old hardware, so I decided to see if I could restore the CF-29 to its former glory. I had never used Linux before (not consciously, anyway; my smartphone runs Android, which is built on Linux), so I started with some research. When you install Linux, you're really installing a Linux distribution, or "distro" for short. The distro is the OS, and Linux is underlying framework on which the distro is built. I started by trying the two most popular distros, Ubuntu and Linux Mint. They both worked well enough to get me interested in trying more. In all, I ended up trying five distros in all: Ubuntu, Linux Mint, Lubuntu, Elementary OS and MX-15.
Ultimately, I decided to go with Elementary OS. I'm not saying it's the best one of the bunch, but it checked all my boxes: it's lightweight, user-friendly and aesthetically pleasing (even if it does look like a cartoon version of Apple OS X). While the others have their strengths, at this point in time I think that Elementary OS most elegantly meets the needs of a newbie like myself.
(Note: since I wrote this article, Elementary OS has discontinued the 32-bit version, which is the only version a CF-29 will run. So, unless you can find an old ISO file for it, I recommend a something like Xubuntu, which is similar under the hood and will have a very similar installation process. I've previously installed Xubuntu on a Toughbook CF-18.)
If, however, you are more intrigued by one of the other distros I listed, you should be able to adapt the following instructions to whichever one you'd like. As it turns out, all five of them are closely related. In the open source world, new software emerges from existing software like tree branches. Elementary OS, Lubuntu, and Linux Mint are all based on Ubuntu. Ubuntu itself, along with MX-15, branch off of a distro called Debian. Debian is the father and grandfather to nigh countless Linux distributions.
Installing Elementary OS on a Panasonic Toughbook CF-29 MK4
If you want to follow these instructions exactly, here's what you'll need:
- A computer with an Internet connection and a DVD-ROM burner (the computer I used was running Windows 7 Professional)
- A blank DVD-R
- A Toughbook CF-29 with a DVD drive and at least 6.5GB of available hard drive space
Creating a boot disc for Elementary OS
Navigate to elementary.io and locate the download link. Click it and select the 32-bit version. I found that the download kept failing in my Chrome browser, so I ended up using Internet Explorer.
Insert the blank DVD into your drive.
Once the download has finished, find the file in your download folder. The file type should be a Disc Image File (.iso). Right click the file and select "Burn disc image" at the top of the list. It'll open Windows Disc Image Burner. Click burn.
Installing Elementary OS
Before turning on your Toughbook, pop open its media drive and insert the disc you've just burned. Make sure your Toughbook is plugged into a power source, as installation can take a little while.
Power up your Toughbook. When the Panasonic logo comes up, hit F2 on your keyboard to bring up the BIOS setup utility. Tab over to the Boot settings using the arrow keys. You will be presented with a numbered list labeled "Boot priority order." Make sure that your DVD/CDRW drive is in the top position. If it isn't, use the F5/F6 keys to move it to the top of the list. Once you've done that, hit F10 to save and exit.
Once your Toughbook finishes booting up, it will display a welcome screen giving you the option to either try Elementary (that is, run it from the disc) or install it. Since we're installing it, we'll click the "install" button. After that, it will walk you through the install process.
A few steps in, it will give you the option to choose an installation type. If you want, this is your chance to set up a dual boot alongside whichever operating system is currently installed on your Toughbook. If you want to start clean and only run Elementary OS, select "Erase disk and install elementary."
Continue following the onscreen instructions, pop the disc out when it tells you to, and you're done (kind of, almost)!
Configuring Elementary OS for your Toughbook
Now that you've successfully booted up, you might notice a couple issues. The mouse pointer is excruciatingly slow. The touch screen (if you have one) is out of calibration. You keep getting an error message after you boot up. When you try to restart, your Toughbook gets halfway through the process and then just sits there forever like an idiot. We can fix these issues if you follow my instructions.
Speeding up the mouse pointer
This is the easiest fix. All you need to do is click the system settings icon in the dock (it looks like a white square with a switch), click the "Mouse & Touchpad" icon, then move the pointer speed sliders to the fastest setting.
Calibrating the touch screen
To do this, we'll need to use the terminal. The terminal is essentially a piece of text-based software that lets you bark commands at your computer. Linux enthusiasts insist it's better than using a graphical user interface (GUI), and it probably is if you have the time and inclination to learn how. For everyone else, just type every command exactly as I show it to you and you should be dandy.
You can access the terminal either by clicking the "Applications" button on the top left of the screen, or you can hit the Windows key + T to open it up (or Ctrl + Alt + T on most other distros in the Ubuntu/Debian family).
The terminal will show a black box with white text, like something from WarGames. It will show your user name and the name of your computer followed by a dollar sign. Commands go right after the dollar sign. Type the following and hit enter:
sudo mkdir /etc/X11/xorg.conf.d
Make sure the "X11" part has a capital X and two number ones.
After you hit enter, it will ask for your password. Type it and hit enter (it won't show it on the screen when you type).
(If you're curious what you just did, you created a directory where the Touchscreen configuration files will be kept.)
Now enter the following (this will install the touch screen calibration utility):
sudo apt-get install xinput-calibrator
It'll spit out a bunch of text about all the neat computer stuff it's doing. After it's done, you can open the touch screen calibration utility by entering the following command:
sudo xinput_calibrator
Before you hit enter, make sure you have something on hand to use as a stylus. You can use your finger, but it won't be as precise. The calibration tool will open up. Touch the little crosshairs to complete the process. Once you finish, the terminal will spit out a bunch of text. We don't want to ignore it this time. Find where it says
Section "InputClass"
and copy everything from there through where it says EndSection
. Mine looked like this:
Section "InputClass"
Identifier "calibration"
MatchProduct "LBPS/2 Fujitsu Lifebook TouchScreen"
Option "Calibration" "224 4021 177 3971"
Option "SwapAxes" "0"
EndSection
(Don't worry about the "Fujitsu Lifebook" thing.)
Now enter the following:
sudo nano /etc/X11/xorg.conf.d/99-calibration.conf
This will open up an empty text file. Paste in the stuff you just copied. Hit Ctrl + X to exit, then Ctrl + Y to save, then hit enter.
Now your touch screen should be properly calibrated and should stay that way even after restarting your computer.
Fixing the restart issue
You may find that your Toughbook locks up when you try to restart it. To fix it, first open up your terminal and enter the following:
sudo nano /etc/default/grub
Enter your password when it prompts you, then it will open up a text file. Find the line where it says,
GRUB_CMDLINE_LINUX_DEFAULT="quiet splash"
and change it so it reads,
GRUB_CMDLINE_LINUX_DEFAULT="reboot=bios quiet splash"
Close and save like you did last time, then enter the following in the terminal:
sudo update-grub
Hit enter and you're done!
Getting rid of the "Sorry, elementary OS has experienced an internal error" message
I found that shortly after booting up my CF-29, nearly every time I booted up, an error message would pop up reading "Sorry, elementary OS 0.3.2 has experienced an internal error." I looked into it, and it's just a common bug. There isn't anything wrong with your computer. You can safely ignore it. Or you can get hardcore about it and disable the tool that generates crash reports. That's what I did.
Now, this is embarrassing, but I never noticed the error window included a check box labeled "Ignore future problems of this type." If I had had the wherewithal to tick that box, could I have solved my problem much quicker? Maybe, but instead I went straight to the terminal. Looks like I had become a Linux guy without realizing it. If you want to solve this problem like I did, follow my instructions. (Be advised: if you do this, elementary OS will stop generating crash reports, so if there's a legitimate crash, you won't get a report about it unless you re-enable the tool.)
First, open up the terminal and enter the following:
If you're the perceptive type, you may have noticed that every time we enter a command that has "nano" in it, we open up a text file. Nano is the small, terminal-based text editor we've been using to edit system files.
sudo nano /etc/default/apport
It'll ask for your password. You know the drill.
Find where it says
enabled=1
at the end of the file and change it to enabled=0
to disable the error message. Hit Ctrl + X to close, Ctrl + Y to save, and the enter key to finalize it. Now you can go ahead and close the terminal and restart your Toughbook. All done!
Conclusion
Hey, that wasn't so bad. Trying new things is fun! If you'd like to see me try a different distro, or if you run into a new problem I didn't cover here, let me know in the comments.