birds like wires

Search

No to HDIO_GET_IDENTITY failed!

This one has been annoying me for a while and nobody has explicitly waved a simple solution around for it; so now that I’ve found it, I’m going to do the waving. In building Ubuntu Precise 12.04 for the Joggler, this error was popping up on boot:

ata_id[1605]: HDIO_GET_IDENTITY failed for '/dev/sda': Invalid argument

It occurs because ata_id is being called upon by udev to provide some information about the ATA device. However, on the Joggler these devices are almost always connected via USB and in almost every case ata_id will fail to return anything useful. Tada – we have an error. It’s harmless, but annoying.

To fix it, you need to dive into /lib/udev/rules.d/ and edit 60-persistent-storage.rules. You will see the following from line 37:

# Run ata_id on non-removable USB Mass Storage (SATA/PATA disks in enclosures)
KERNEL=="sd*[!0-9]|sr*", ENV{ID_SERIAL}!="?*", ATTR{removable}=="0", SUBSYSTEMS=="usb", IMPORT{program}="ata_id --export $tempnode"
# Otherwise fall back to using usb_id for USB devices
KERNEL=="sd*[!0-9]|sr*", ENV{ID_SERIAL}!="?*", SUBSYSTEMS=="usb", IMPORT{builtin}="usb_id"

Ah-ha! There it is! It runs ata_id, which errors out, and then picks up the slack using usb_id. Stick a lovely great # on that ata_id line.

You’ll then need to rebuild your initrd gubbins. For the Joggler you do it like this:

cd /boot
sudo update-initramfs -u

Reboot and you should find that the error is gone and everything still works as it should.

Finally!

Fricken beautiful! Thanks MUCH! That was simple, and now I’ve got an error free boot on 12.04, with only an external HD. Love the clean, smooth boot…

jmitler left this message 1428 days ago

Thank you very much! This also applies for Ubuntu KXStudio, for musicians. Probably for more versions as well. This is the only fix I could find.

Alexandra left this message 1124 days ago