Linux SATA Drive is Being Displayed as /dev/hda Instead Of /dev/sda

by on November 18, 2008 · 5 comments· LAST UPDATED November 18, 2008

in , ,

Q. My SATA drive is being displayed as /dev/hda instead of /dev/sda. How do I fix this problem and make sure I get /dev/sda and speed of SATA under Linux operating systems?

A. This is usually related to BIOS settings. Reboot your system and enter into BIOS setup:

Check BIOS settings

Make sure Parallel ATA is "Enabled"

Make sure "Native Mode Operation" is set to "Serial ATA"

Also, set SATA Controller Mode option to "Enhanced"

Save the changes and reboot the server. Now Linux should rename the SATA drive from /dev/hda to /dev/sdb.

Make sure kernel is compiled with SATA support

Usually vendor kernel from Debian/RHEL/Rehat/Fedora comes with SATA enabled. Sometime you may compile custom kernel. If this is case run following command to find out if SATA kernel support is compiled:
grep -i SATA /boot/config-$(uname -r)
Sample output:

CONFIG_SATA_AHCI=m
CONFIG_SATA_INIC162X=m
CONFIG_SATA_MV=m
CONFIG_SATA_NV=m
CONFIG_SATA_PMP=y
CONFIG_SATA_PROMISE=m
CONFIG_SATA_QSTOR=m
CONFIG_SATA_SIL=m
CONFIG_SATA_SIL24=m
CONFIG_SATA_SIS=m
CONFIG_SATA_SVW=m
CONFIG_SATA_SX4=m
CONFIG_SATA_ULI=m
CONFIG_SATA_VIA=m
CONFIG_SATA_VITESSE=m

Make sure ata_piix and libata driver loaded and the disk shows as /dev/sda if DMA is enabled:
lsmod | egrep 'ata_piix|libata'
Sample output:

ata_piix               24580  5
libata                177312  5 pata_acpi,ata_generic,pata_marvell,ata_piix,ahci
scsi_mod              155212  9 ib_iser,iscsi_tcp,libiscsi,scsi_transport_iscsi,sbp2,sr_mod,sd_mod,sg,libata
dock                   16656  1 libata
TwitterFacebookGoogle+PDF versionFound an error/typo on this page? Help us!

{ 5 comments… read them below or add one }

1 John Jeffers November 29, 2008 at 12:29 am

On openSuSE all drives are shown as /dev/sd? no matter what kind of drives they are including usb drives.

Reply

2 ranjeet August 24, 2009 at 1:00 pm

no never Becoz system automatically generated partition name . if u want to change then u can change becouz linux is open sources

Reply

3 Edward Quick August 2, 2010 at 2:09 pm

Thanks Vivek, I just installed centos 5.5 which was running like a dog until I spotted I had the same problem you describe above. My bios options for SATA were a bit different to yours but after playing with those, it’s all working. Nice one! :)
Ed.

Reply

4 Rahul Panwar November 20, 2010 at 5:55 am

Thanks a lot, Vivek,
Following option works for me:
set SATA Controller Mode option to “Enhanced”

It also increases the performance of my HDD.

Rahul

Reply

5 Mark December 13, 2011 at 6:59 am

I was having the same symptoms as you, but none of your solutions helped because my hard drive was corrupted. It took almost 3 hours to get to 50% formatted — I wasn’t really paying attention. I’ve formatted IDE133 drives in less than a minute with centos — so I figured something was up. I popped another SATA drive into my box, and I was installing centos, and past formatting in no time.

Reply

Leave a Comment

Tagged as: , , , , , , , , , , , , ,

Previous Faq:

Next Faq: