0. 目次
- 環境
- 事象
- 原因
- 解決法
1. 環境
- ハードウェア:HP Microserver N54L
- OS:Rocky Linux 8.6
- Kernel Version:4.18.0-372.26.1.el8_6.x86_64
2. 事象
HP Microserver N54LにCentOS 7 を入れて使用していたが、Rocky Linux 8 に移行した。
元々eSATAを利用してバックアップを取得していたが、同様に接続をしてもHDDが認識されなかった。
3. 原因
Redhat系は古いハードウェアのドライバが削除されているみたいです。
RHEL 8で削除されたドライバの一覧はこちら
HP Microserver N54LはODD用のSATAポートとeSATAポートのAHCIは無効化されているらしく、つまりIDEの古い規格の接続であり、古いドライバが削除されているため認識されていないのだと考え、そのあたりで色々と調べたところ以下のページを見つけた。
https://bugs.centos.org/view.php?id=16898
このページで記載されているlshw -class disk -class storage
コマンドを実行したところIDEのコントローラーに「UNCLAIMED」と記載されており、ドライバが存在しないことが原因だった。
# lshw -class storage
*-sata
description: SATA controller
product: SB7x0/SB8x0/SB9x0 SATA Controller [AHCI mode]
vendor: Advanced Micro Devices, Inc. [AMD/ATI]
physical id: 11
bus info: pci@0000:00:11.0
logical name: scsi0
logical name: scsi1
logical name: scsi2
logical name: scsi3
version: 40
width: 32 bits
clock: 66MHz
capabilities: sata msi ahci_1.0 bus_master cap_list emulated
configuration: driver=ahci latency=64
resources: irq:25 ioport:d000(size=8) ioport:c000(size=4) ioport:b000(size=8) ioport:a000(size=4) ioport:9000(size=16) memory:fe6ffc00-fe6fffff
*-ide UNCLAIMED
description: IDE interface
product: SB7x0/SB8x0/SB9x0 IDE Controller
vendor: Advanced Micro Devices, Inc. [AMD/ATI]
physical id: 14.1
bus info: pci@0000:00:14.1
version: 40
width: 32 bits
clock: 66MHz
capabilities: ide isa_compat_mode pci_native_mode bus_master
configuration: latency=0
resources: ioport:1f0(size=8) ioport:3f6 ioport:170(size=8) ioport:376 ioport:ff00(size=16)
4. 解決法
ELRepoで古いドライバを提供してくれているため、それを利用して解決した。
以下のページに記載されている手順で、必要なファイルを特定しインストールを実施。
http://elrepoproject.blogspot.com/2019/08/rhel-80-and-support-for-removed-adapters.html
4-1. 手順
- ELRepoでドライバが提供されているか確認
どのドライバを導入すればよいかの確認にもなる。
3のlshw -class storage
で「UNCLAIMED」となっていたproduct名を使用してデバイスIDを調べる。
以下の結果から [1002:439c]
とわかる。
# lspci -nn | grep "SB7x0/SB8x0/SB9x0 IDE Controller"
00:14.1 IDE interface [0101]: Advanced Micro Devices, Inc. [AMD/ATI] SB7x0/SB8x0/SB9x0 IDE Controller [1002:439c] (rev 40)
このページでデバイスIDを検索して存在すれば提供されており、今回の場合「pata_atiixp.ko」を導入すればよいことがわかる。

- ドライバのダウンロード
以下のURLから1の手順で特定した「pata_atiixp」のものをダウンロードする。
https://elrepo.org/linux/dud/el8/x86_64/
- ドライバのインストール
2のドライバはISO形式で提供されているので、以下のコマンドでマウントする。
mount -t iso9660 ./dd-pata_atiixp-0.4.6-3.el8_6.elrepo.iso /mnt/iso/
マウントした場所から「rpms/x86_64」に移動すると「kmod-pata_atiixp-0.4.6-3.el8_6.elrepo.x86_64.rpm」というファイルが存在するのでこれをインストールする。
# dnf localinstall kmod-pata_atiixp-0.4.6-3.el8_6.elrepo.x86_64.rpm
- カーネルモジュール読み込み
以下のコマンドを実行し、カーネルモジュールを読み込む
modprobe pata_atiixp
読み込んだ後にlshw -class storage
コマンドを実行すると以下のように「UNCLAIMED」が消えコントローラが利用できるようになった。
# lshw -class storage
*-sata
description: SATA controller
product: SB7x0/SB8x0/SB9x0 SATA Controller [AHCI mode]
vendor: Advanced Micro Devices, Inc. [AMD/ATI]
physical id: 11
bus info: pci@0000:00:11.0
logical name: scsi0
logical name: scsi1
logical name: scsi2
logical name: scsi3
version: 40
width: 32 bits
clock: 66MHz
capabilities: sata msi ahci_1.0 bus_master cap_list emulated
configuration: driver=ahci latency=64
resources: irq:25 ioport:d000(size=8) ioport:c000(size=4) ioport:b000(size=8) ioport:a000(size=4) ioport:9000(size=16) memory:fe6ffc00-fe6fffff
*-ide
description: IDE interface
product: SB7x0/SB8x0/SB9x0 IDE Controller
vendor: Advanced Micro Devices, Inc. [AMD/ATI]
physical id: 14.1
bus info: pci@0000:00:14.1
version: 40
width: 32 bits
clock: 66MHz
capabilities: ide isa_compat_mode pci_native_mode bus_master
configuration: driver=pata_atiixp latency=64
resources: irq:17 ioport:1f0(size=8) ioport:3f6 ioport:170(size=8) ioport:376 ioport:ff00(size=16)
- 自動読み込み
4の手順を再起動しても不要にするため設定ファイルを作成する。
「/etc/modules-load.d/」以下に任意のファイル名.confで「pata_atiixp」の一行を記載したものを配置する。
echo pata_atiixp > /etc/modules-load.d/ide.conf
- 【任意】起動イメージへ適用(起動ディスクに使用する場合などに必要と思われる)
現在読み込んでるカーネルのバージョンを調べ、dracutコマンドを使用して起動イメージ(initramfs)を再作成する。
この手順は、カーネルアップデートする際に適用される。
# uname -r
4.18.0-372.26.1.el8_6.x86_64
# mv /boot/initramfs-4.18.0-372.26.1.el8_6.x86_64.img /boot/initramfs-4.18.0-372.26.1.el8_6.x86_64.img.bak
# dracut /boot/initramfs-4.18.0-372.26.1.el8_6.x86_64.img 4.18.0-372.26.1.el8_6.x86_64