Rebuilding a software controlled RAID on Ubuntu

One of my RAID arrays on my server decided that one of the drives was bad and dropped it out of my array. I have two software defined RAID 1 mirrored arrays, /dev/md0 which contains my main drives, and then a smaller array, /dev/md1

This is what mdadm was showing for when one of the drives was dropped out:

kevin@linuxsvr:~$ sudo mdadm --detail /dev/md1
/dev/md1:
 Version : 0.90
 Creation Time : Sat May 16 18:38:51 2009
 Raid Level : raid1
 Array Size : 1485888 (1451.31 MiB 1521.55 MB)
 Used Dev Size : 1485888 (1451.31 MiB 1521.55 MB)
 Raid Devices : 2
 Total Devices : 1
Preferred Minor : 1
 Persistence : Superblock is persistent

Update Time : Tue Mar 5 14:10:24 2013
 State : clean, degraded 
 Active Devices : 1
Working Devices : 1
 Failed Devices : 0
 Spare Devices : 0
UUID : 44b55b61:84e84f5f:5c7760e0:2ac997c6
 Events : 0.90560
Number Major Minor RaidDevice State
 0 8 21 0 active sync /dev/sdb5
 1 0 0 1 removed

I couldn’t find any messages in syslog for what was wrong with my drive, and the SMART status for both drives was still good. I did have to power off the server to move it without a clean shutdown, so this was probably self-inflicted…

On one of my arrays, adding back the missing drive caused it to add as a spare, it re-sync’d and then everything was back to normal. On the other, it wouldn’t add back:

kevin@linuxsvr:~$ sudo mdadm --add /dev/md1 /dev/sdc5
mdadm: /dev/sdc5 reports being an active member for /dev/md1, but a --re-add fails.
mdadm: not performing --add as that would convert /dev/sdc5 in to a spare.
mdadm: To make this a spare, use "mdadm --zero-superblock /dev/sdc5" first.

I found a few posts describing to fail the drive, remove and then add it back, but this still gave the same error:

sudo mdadm --manage /dev/md1 --fail /dev/sdc5
sudo mdadm --manage /dev/md1 --remove /dev/sdc5
sudo mdadm --manage /dev/md1 --add /dev/sdc5

I don’t know exactly what the recommendation in the error message did, but using the –zero-superblock option and then adding back the drive again did the job. It resync’d successfully and everything’s back to normal.

This post on StackExchange has some good info and suggestions. This one too.

Configuring Ubuntu to access a wireless HP printer

hplip is an opensource project to support multiple HP printers on Linux. On Ubuntu 12.04 I already had this installed, but running ‘sudo hp-setup’ gave me this error:

kev@ubuntu:~$ sudo hp-setup

HP Linux Imaging and Printing System (ver. 3.12.2)
Printer/Fax Setup Utility ver. 9.0

Copyright (c) 2001-9 Hewlett-Packard Development Company, LP
This software comes with ABSOLUTELY NO WARRANTY.
This is free software, and you are welcome to distribute it
under certain conditions. See COPYING file for more details.

warning: Qt/PyQt 4 initialization failed.
error: hp-setup requires GUI support (try running with --qt3). Also, try using interactive (-i) mode.

A quick Google turned up this post, and installing hplip-gui installed the missing libraries and got me up and running.

sudo apt-get install hplip-gui

Starting up hp-setup again and following the wizard to point to the IP of my printer was all I needed to get my printer working.

Installing XBMC media center on a HP Mini netbook

I’ve been setting up XBMC media center on an old HP Mini netbook as an experiment to listen to streaming radio via my home theatre setup. I started initially with the XBMCbuntu iso since it was the easiest to setup, but the Ubuntu side of this distro was too slimmed down for my liking. It didn’t come with drivers for the wifi card out of the box, so while I was planning on connecting via ethernet close to my home theatre setup, I still wanted to pickup the netbook and use wifi while working on setting it up.

So my next attempt I went for a full Ubuntu 12.10 desktop install (wifi drivers included), and then followed the manual steps to install XMBC next.

My main interest in XMBC is the Radio Add-on that has a menu of selectable streaming radio stations. My next interest is being able to control the radio selection remotely, either via a web interface or via an Android app. All the web interfaces, including the default interface, don’t seem to let you browse the Radio add-on. I’ve found one Android XMBC remote that does, so this one does what I need:

https://play.google.com/store/apps/details?id=ch.berard.xbmcremotebeta

My next interest is running Spotify on the netbook and also controlling it remotely. Two choices here, either

  • Use a Spotify Add on for XBMC, like Spotimc
  • Or install the Spotify for Linux client, and then use one of the many Spotify remote apps to control it directly

Given that I haven’t had much luck with XBMC remotes controlling XBMC add-ons, I’m going to try a separate Spotify install and then try out one of the remote apps, like this one: Spotcommander. I’ll post an update once I’ve got these installed and configured.