, , , ,

Like many of us, I have an old laptop just laying around that works mostly just fine, but is a bit long in the tooth and perhaps is still running Windows XP. Of course, I could install Windows 10 on it, but that would cost money and it isn’t clear that the result would be a pleasant experience.

So I decided to try installing Linux. Read on for some notes and advice from this particularly narrow trench.


The old laptop in an MSI Wind U100, part of a family of netbook devices intended to be best at browsing and cloud tasks and distinctly not intended to be a desktop replacement. It has a dual core Intel Atom and 1 GB of SDRAM, along with 160 GB of not so fast spinning disk drive. There is an empty SDRAM SODIMM slot inside the case, with room for a second GB should this work out well.

As it turns out, this specific model was one of those commonly used for the laptop remix of Ubuntu, so it seems likely to be a good candidate.

The machine is not overburdened with strange and unique devices. It uses the Intel native graphics and audio, for instance. The keyboard and touchpad don’t have custom drivers. There is a (low resolution) webcam, but it too is at least well understood if not well documented. There are reports that the WiFi module in some production lots of the U100 caused trouble, but in the worst case we can solve that with a USB WiFi dongle. It has no Bluetooth to worry about, but if I find that handy I can add a USB dongle for that too.


Ubuntu is a (deservedly, IMHO) popular Linux distribution managed by Canonical and based on Debian. There are purists that argue that Ubuntu is a bad choice, but it is hard to argue that they haven’t done a good job of packaging and documenting. The result is a distro that is generally easy to install without a lot of esoteric knowledge.

But out of the box, Ubuntu is also fairly heavy, laden with big apps and generally assuming a generously endowed desktop machine, especially a 64-bit CPU and lots of SDRAM. People with older hardware, smaller laptops, or as I have here an older smaller laptop, don’t generally want a big lumbering footprint.

A long running project trimmed Ubuntu down to give it focus on things needed for a simple laptop. Since 2011 it has been an official flavor called Lubuntu.

Based on the system requirements and other hints and outright guesses, I’ve chosen to install the 32-bit version of the latest release, Lubuntu 16.10 Yakkety1 Yak.

Boot from USB

The usual (and easiest) Ubuntu installation method is to burn a “live CD” (nearly always a DVD since a typical installer hasn’t fit on just one CDROM in many years). But my laptop is conspicuously missing any sort of optical media reader.

The next easiest approach is to boot from a USB flash drive. At one time creating such a thing was almost a black art that called for using a Linux system since Windows is notoriously resistant to end users attempting to fuss with master boot records and making partitions bootable. Today, we have several options. Several HOWTO documents from Ubuntu’s documentation point at rufus as the ideal tool for the job. I used Rufus 2.13, with the ISO image lubuntu-16.10-desktop-i386.iso.

Later, when all was installed and stable, I used a quick format of the stick to FAT32 in Windows to restore the stick to a more normal state so that I wouldn’t accidentally boot from it again if it were left plugged in during a boot.

The biggest issue I had was with getting the USB device to boot at all. The F11 key was not being heard reliably by the BIOS at power on, but DEL was and entered setup. The BIOS setup allows the boot order of attached devices to be set so that the USB drive would be checked ahead of the internal hard disk.

It took a couple of tries to get the BIOS boot device order configured to actually check for a USB disk ahead of the internal disk.

After a couple of minor (but confusing) missteps in the BIOS, the installer booted right up and installation was straight forward from there.


I installed Lubuntu 32-bit desktop edition with pretty much all the default settings. I did change the machine’s name when offered something silly.

Because I already had everything that mattered to me backed up, I chose to wipe all traces of XP off the disk and let Lubuntu have the whole disk for its own use. That allowed the installer to choose the partition sizes, and gave me the largest possible space for the system and my files.

After a couple of reboots for the installation and for a kernel update, the system is settling down nicely.



Some U100 owners have had a fun bug where the screen brightness suddenly begins flashing between full bright and dim several times per second. After a lot of searching, this turns out to not only be well known bug, but to have been narrowed down to a specific system component. Unfortunately, the bug was declared “won’t fix” and still exists in the latest Lubuntu installation.

I have this problem. There is a suggestion that a BIOS update might fix it, I have not pursued that option. Noticing that the problem is with the power management daemon, I found that I could work around it by telling the power manager to never fuss with screen brightness. The problem has not recurred.


Some have reported issues with audio, and it sounds like I get to join that club. I apparently don’t have any working audio output, and have not tested audio input. This is very low on my wishlist, so I may just punt and address it later.

If I planned to use this laptop for YouTube, Netflix, or Amazon Prime while travelling, I would be much more eager to solve the problem.

Other Configuration

password safe

I don’t know any of my passwords, and I like that. I haven’t known any of them for decades. I use [PasswordSafe][] to know them for me on all my Windows machines and even on Android. That means, of course that I need it for Linux too. There isn’t an official port to Linux, but there are several unofficial ports that appear to be stable and working. One that is already known to the Ubuntu world (meaning it is in the package repositories I’m already configured to use) is pasaffe.

It wants to use $(HOME)/.local/...../pasaffe.psafe3 for its safe, and at first glance doesn’t seem to support opening safe files from any other place. I, of course, want to eventually use the copy of my safe that I keep in DropBox, so that name won’t do. But testing shows that a symbolic link will do the trick.

So I put my safe in /home/ross/RossPasswords.psafe3 and symlinked that into the place that pasaffe uses.


It’s a laptop, so it makes sense to lock it down pretty tight. I don’t want it running services or servers accessible from the outside of its case, but I do want to be able to use ordinary software such as a web browser or the system updates.

Following advice from How-To Geek and LinuxQuestions I configured the [iptables][] firewall that comes built-in to the kernel in nearly every distro these days.

Unless I’m misunderstanding the configuration described in the LinuxQuestions thread, it is simple to allow nearly anything outgoing, while dropping all unexpected packets coming in.

% sudo su - 
# iptables -F
# iptables -X
# iptables -P FORWARD DROP
# iptables -P INPUT DROP
# iptables -P OUTPUT ACCEPT
# iptables -A INPUT -i lo -j ACCEPT
# iptables -A INPUT -m conntrack --ctstate INVALID -j DROP
# iptables -A INPUT -m conntrack --ctstate ESTABLISHED,RELATED -j ACCEPT

Before committing to it, I tried browsing in FF and let a software update apply, both of which worked without complaint. Also, iptables -L -v shows that the filter rules are being applied; although oddly there are some packets being dropped that I may want to investigate later.

Once I was happy this configuration would at least let me reach Google, I used iptables-save to make the tables persistent.

More RAM

The laptop was originally shipped with just 1 GB installed, and room for a SODIMM containing up to 1 GB more. All available documentation on the motherboard indicates that 2 GB is the limit for that motherboard. The very complete database at Crucial agrees, and they have a compatible 1 GB SODIMM for about $18. That seemed like a sensible upgrade and at a price not worth fussing over.

The SODIMM arrived faster than promised. There are only nine screws to remove with an ordinary #0 Philips. Don’t skip the one hiding under the warranty voided2 label! With the screws out, the bottom of the laptop snaps off fairly easily by releasing several snaps around the edge with a fingernail or fid.

The SODIMM can only snap in to the connector one way. The connector is between the hard disk and the cooling fan, the on-board memory is hidden under a plastic insulator. Snap and screw the bottom back on, power it up, and watch it be so much happier.


I breathed some more life into an aging laptop by replacing Windows XP with Lubuntu, and adding more memory.

The whole process was relatively painless, and the only bits that cost money were the additional RAM.

If you have a project involving embedded systems, micro-controllers, electronics design, audio, video, or more we can help. Check out our main site and call or email us with your needs. No project is too small!

+1 626 303-1602
Cheshire Engineering Corp.
710 S Myrtle Ave #315
Monrovia, CA 91016

(Written with StackEdit.)

  1. I’m not sure where they got that spelling. Google search corrects it to one ‘k’ because that is how [The Coasters][] spelled it in 1958. Of course just being a chart-topper doesn’t make them right either.
    [The Coasters]: https://www.youtube.com/watch?v=-cHB3Rbz1OI (YouTube) 
  2. Of course I void warranties. Doesn’t everyone? It is moot in this case, of course, because the laptop was born long, long, long ago and the warranty died of natural causes.