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

by Vivek Gite [Last updated: November 18, 2008]

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
Want to read Linux tips and tricks, but don't have time to check our blog everyday? Subscribe to our daily email newsletter to make sure you don't miss a single tip/tricks. Subscribe to our weekly newsletter here!

{ 1 comment… read it below or add one }

1 John Jeffers 11.29.08 at 12:29 am

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

Leave a Comment

You can use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>

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

Previous post: Debian / Ubuntu: Apache2 Change Default Port / IP Binding

Next post: What is Big Iron UNIX Computer?