Hardware Linux

Fun stuff about home server management you don’t learn until you’re already knee-deep in problems

  • The hardware-based “Raid 1” hard drive mirroring (for safe data “insurance”) that’s built into most motherboards today isn’t real Raid 1 — it’s a type of “fake” Raid 1 that’s really just a fancy software wrapper:
  • It’s actually really, really easy to control what hard drives are mounted (and to what directories) on Ubuntu by editing the /etc/fstab file.  Yeah, that’s about it.  No fancy programs you have to run or weird modules/packages to install.  No need to search through Google for hours thinking that “there’s got to be something more to it than that.”


Android Linux

Startup Script for CM9 on the Droid Incredible 2

There’s a small bug when running Cyanogenmod 9 (Android 4.0.4) on the Droid Incredible 2 — every time you reboot, you have to run the command “killall drmserver” as root, or you won’t be able to install or upgrade any applications.

Now, why this isn’t baked into the OS, I don’t know, but in lieu of having to start a terminal every time you start up your phone and run this command, you can actually create a startup script.

It’s never that easy on linux (seems to be different on every distro), but the way it seems to be done on CM9 is:

1) First, create the directory ‘/data/local/userinit.d’ with the following command:

mkdir -p /data/local/userinit.d

2) Then, create your script in this directory and make sure and make it executable (chmod 755, at least) — I had something like:


killall drmserver
Gaming Linux Ubuntu

Steam for Linux, with Repository, but no GPG Key?

Steam For Linux Now Available To All Users ~ Web Upd8: Ubuntu / Linux blogGreat job on making Steam for Ubuntu there, Valve, but (boo! hiss!) on not including the damn key with the installation so people can actually update it when they install it.

This blog mentions how to fix it, with the command below:

sudo apt-key adv --keyserver --recv-keys F24AEA9FB05498B7


Gaming Linux Ubuntu

Cron Tips

Been wondering this for a while — how do you make a cron script that will only run once, when your server boots?

Just append “@reboot” before the command, instead of the usual time information (at least on Ubuntu Server 12.04):

  • @reboot /path/to/execuable1

CronHowto – Community Ubuntu Documentation.

Hardware Science and Technology

Single-user mode, MacOSX 10.8


It’s how one tests for issues without the rest of the OS getting in the way. Just boot your Mac while holding Command+S.

Book Reviews Life Reviews

Review: Pandora’s Star

Pandora's Star
Pandora’s Star by Peter F. Hamilton
My rating: 5 of 5 stars

Now, this is one of the best new SF books I’ve read in a while.

An interesting story of a quasi-utopian future that suddenly meets with danger out amongst the stars, the “Commonwealth” series of novels by Peter Hamilton tell of a future mankind that never really takes to the stars in a great diaspora via starships — instead, mankind stumbles across the ability to open up instantaneous wormholes relative to where they’re currently located, at least across a few light years. The ability to do this is a closely kept secret of the team that first invents it, so, while they remains quite generous with the opening of new wormholes for mankind, the progression of man amongst the stars continues in a very orderly, organized fashion for about 400 years or so, with new wormholes opening up only after many, many committee meetings and discussions.

It is only when an interesting astronomical event occurs far outside the reach of any wormhole, that starships are finally created (using a sort of “progressive” opening and reopening of the same wormhole technology) to travel the far distance necessary to observe it up close. However, what they find was probably better left alone.

One of the most interesting things about the future in this universe is just how normal everything remains compared to modern day — there’s still a stock market, there’s still large companies (only now they’re multi-system instead of just multinational) — there’s even still a middle class. People can live much longer thanks to rejuvenation and body cloning techniques (given enough money, an individual can be nearly immortal), and you can securely back up your memory to a bank in case of complete body loss.

View all my reviews

Book Reviews Life Reviews

Review: Embassytown

Embassytown by China Miéville
My rating: 4 of 5 stars

Not bad, Mr. Mieville, not bad. I didn’t know if I’d like a non-Bas-Lag book by China Mieville, but Embassytown was a very interesting world.

Set in a world far, far in the future long after the human diaspora (after faster-than-light travel is discovered), Embassytown tells the story of a group of humans who have taken residence on a planet inhabited by a race they call only the “Hosts.” The name is given in deference to the permission the humans have obtained to live on the Hosts’ planet — a permission obtained with some difficulty, since the Hosts’ do not recognise other creatures than themselves as being sentient.

There’s also a brief B-plot about the “Immer,” which sounds a lot like the “Immaterium” present in the Warhammer 40K universe… :p Basically it’s a sort of sub-space that a craft can enter to travel long distances — very, very long distances, such as from galaxy to galaxy, halfway across the universe. The main character is one of the rare people who can pilot ships through the Immer, as most peoples’ minds go “slack” and they vomit uncontrollably the entire time they’re inside of it.

View all my reviews

Science and Technology Ubuntu

Configuring the Plustek Opticslim m12 for Ubuntu

After six months or so of being wowed by a little portable scanner in a doctor’s office, the spouse and I finally decided to buy one.  I wanted one that’s compatible with Ubuntu, since that’s our main OS around home, so I did a little research, and found some info about the Plustek Opticslim m12 (it’s the same model that the “NeatReceipts” company rebrands for their own scanners).

Found one on Ebay, bought it (for 1/3 of the price of a NeatReceipts model), and plugged it in… and of course it didn’t work.  This is the world of Ubuntu with proprietary peripherals, of course.  The “Simple Scan” program that’s built-into Ubuntu recognized the make and model, oddly enough, but it wouldn’t scan, throwing up an error message whenever I tried.

I did a little bit of searching, and found a site that talked about it:

Apparently, all you need to do is download the driver file mentioned from the site at and copy it to your /usr/share/sane/gt68xx folder.  Then, just start up the Simple Scan program again, and scan away!  Works really well — doesn’t auto-crop or anything like the provided Windows software does, but that’s cool.  I’ll take it.

To Visitors:  If you’re visiting this page, trying to find information about how to get this scanner to work, and you’re trying it years after this article was written, I can’t guarantee these instructions will work — if you know Ubuntu, stuff changes from version to version sometimes.  Hacks and fixes that’ll work one year won’t always work the next.

Programming Science and Technology

Steve Jobs, 1955-2011

I started programming over 20 years ago on an old Macintosh II computer that my father practically fished out of the trash at his job.

I largely credit that old computer to where I am today — it wasn’t just the Macintosh’s ease-of-use and small learning curve, it was also, literally, the spirit of the designers and tinkerers that worked at Apple computer that existed in that machine.

The Macintosh was a computer that you could delve beneath the surface, when you wanted to — you could modify code, the way applications worked, the modules and extensions that started up when the machine booted — you had, when you wanted to, access to all the tools that the designers themselves used to create that very Macintosh you were using right then and there.

There’s a whole generation of programmers who got their start in this very way, and for that, I do have Apple to thank.


And that’s the very reason why Apple’s current practices today kinda scare me. Apple’s products today are precisely not about giving the user tools and control — with each new version of MacOSX, each new iPhone that comes out, there’s less and less that tinkerers like me can do with it.

There’s less and less that the next generation of tinkerers can do with it. How would the next Steve Jobs design anything on an iPod Touch? On an iPad? How would a budding application developer get anyone to use a new application he’s designed, when people can only install apps via a curated, policed, application “store?”

I thank Apple for starting me on the path to where I am today, but I thank companies like Google for keeping that spirit alive, when it becomes increasingly evident that Apple either isn’t able to or just no longer wants to.

Computing Linux Programming Science and Technology Ubuntu

Configuring a Server with Ubuntu Desktop

I’ve been getting an Ubuntu server running recently (FINALLY), and in order to make it run headless (without keyboard, mouse, or monitor), there’s a few things one needs to do:

1) Enable Auto-Logins (optional)

All depends upon how you set things up, but you may want to run everything easily through a default user account — just go to “System > Administration > Login Screen”, and set it up.  (These instructions are for the GUI of Ubuntu, of course — I’m not a CLI-queen, and would rather edit things quickly through an interface that I’m familiar with than search forums for hours trying to find the esoteric commands necessary to do this stuff manually, sorry.)

2) Enabling Networking With Automatic User Login

Now, you may have set up automatic logins, but noticed that you always have to enter in your account password manually anyway once your network tries to connect — took me a while to figure out this one, but just go to “System > Preferences > Network Connections”, and in the type of connection you’ll be using, make sure the option for “Available to all users” is selected at the bottom.  That’s it.  I feel dumb for not figuring this out long ago.

3) Enabling VNC to Run Headless

As per the instructions I found here, you have to

  1. Edit “/etc/gdm/Init/Default” to include the line “/usr/lib/vino/vino-server &” right before “exit 0”
  2. Edit “/etc/gdm/custom.conf” (or “/etc/gdm/gdm.conf” if older than Ubuntu 10.04) and add “KillInitClients=false” — this will prevent any existing VNC clients from being killed if you do login on the server physically
  3. Do a “sudo vino-preferences” and enable the necessary stuff

More to come, including the Minecraft configuration scripts!