web-dev-qa-db-ja.com

Linuxでの未使用のSATAポートの一覧表示

Linux(特にCentOS 6.3)を実行している物理マシンがあり、現在使用されていない(つまり、何も接続されていない)SATAポートの数を知りたい。もちろん、マシンを引っ張って開けることもできますが、物理的にアクセスできないとしましょう。未使用のSATAポートを表示するために使用できるコマンドはありますか?

lshwコマンドについてはすでに知っていますが、私の知る限り、使用されているSATAポートのみを一覧表示し、空きポートは一覧表示しません。

19
coledot

未使用のSATAポートを表示するために使用できるコマンドはありますか?

いいえ。ただし、その逆も可能です。使用されているポートをリストできます。次に、(マニュアルで)マザーボードにあるポートの数を調べ、すでに使用されているポートの数を差し引き、残りのポートの数を取得します。

これは、SATAコネクタごとに1つのSATAドライブが接続されていることを前提としています(例: ポート乗数 )。


これにはいくつかの方法があります。

すべてのSATAコントローラーにドライバーがロードされている場合(かなり正常)、fdisk -lを見つけてすべてのディスクを最も簡単な方法で一覧表示します。

Fdiskがなくなった場合(gpartなどの最新のバージョンに置き換えられます)、ブートログを読み取ることができます。 CentOSがこれを dmesg で利用できることをグーグルで示していますが、ログファイルを直接読み取ることもできます。おそらく/var/log/dmesg.log、/var/run/dmesg.bootまたは/ var/log/bootにあります。 (CentOSを使用していない人のためにこれを少し一般的にしてください)。

次に lspci があります。これには、SATAコントローラーを含むすべてのPCIおよびPCI-eデバイスがリストされます。 -vを追加して、出力を読みやすくします。

または dmidecode を使用します。これはBIOSに情報を要求します。このコマンドの出力が多すぎると思われる場合は、-t NRオプションで制限してください。

5
Hennes

3年経ちましたが、誰かがGoogleを利用している場合は、次のようになります。EPELを有効にしている場合、インストール lsscsi を実行すると、ほとんどの場合、接続されているデバイスに関する情報が表示されますが、-Hパラメータが必要です。

--hosts | -Hは、scsiデバイスではなくscsiホストを一覧表示します

他の出力モードと比較すると、違いがあります:

root@server1:~# lsscsi -H
[0]    ata_piix  
[1]    ata_piix  
[2]    ata_piix  
[3]    ata_piix  
[4]    usb-storage
root@server1:~# lsscsi -g
[0:0:0:0]    disk    ATA      WDC WD2004FBYZ-0 RR03  /dev/sda   /dev/sg0
[0:0:1:0]    disk    ATA      WDC WD2004FBYZ-0 RR04  /dev/sdb   /dev/sg1
[1:0:0:0]    disk    ATA      WDC WD2004FBYZ-0 RR03  /dev/sdc   /dev/sg2
[4:0:0:0]    disk    Seagate  Backup+  Desk    0342  /dev/sdd   /dev/sg3

更新:何もインストールせずに、それを無視してください:

dmesg | grep 'SATA link down'

未使用のポートが表示されます。

21
krigl