Linux
如何知道磁碟是來自 Jbod 還是集成為硬體機器的一部分
在某些情況下,當我們不在 HW Linux 機器附近時,我們只能看到磁碟如下:
/dev/sdd 20511312 199536 20295392 1% /grd/sdd /dev/sdb 20511312 487852 20007076 3% /grd/sdb /dev/sde 20511312 91572 20403356 1% /grd/sde /dev/sdf 20511312 45192 20449736 1% /grd/sdf
但如果磁碟位於硬體機器中或來自外部 JBOD,則不會獲取資訊。
如何知道磁碟的位置?也許通過
dmidecode
或別的什麼?
您可以嘗試 hdparm -i {device},例如:
# hdparm -i /dev/sda /dev/sda: Model=SAMSUNG MZ7TD512HAGM-000L1, FwRev=DXT05L0Q, SerialNo=S151NYADA01701 Config={ Fixed } RawCHS=16383/16/63, TrkSize=0, SectSize=0, ECCbytes=0 BuffType=unknown, BuffSize=unknown, MaxMultSect=16, MultSect=16 CurCHS=16383/16/63, CurSects=16514064, LBA=yes, LBAsects=1000215216 IORDY=on/off, tPIO={min:120,w/IORDY:120}, tDMA={min:120,rec:120} PIO modes: pio0 pio1 pio2 pio3 pio4 DMA modes: mdma0 mdma1 mdma2 UDMA modes: udma0 udma1 udma2 udma3 udma4 udma5 *udma6 AdvancedPM=no WriteCache=enabled Drive conforms to: unknown: ATA/ATAPI-2,3,4,5,6,7 * signifies the current active mode
以上是標準磁碟驅動器的正確輸出。我相信虛擬磁碟應該會失敗,比如 JBOD 或 RAID。然後它顯示如下內容:
# hdparm -i /dev/sdb /dev/sdb: SG_IO: bad/missing sense data, sb[]: 70 00 05 00 00 00 00 0a 00 00 00 00 20 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 HDIO_GET_IDENTITY failed: Invalid argument
但是,如果您的本地磁碟也是某些硬體控制器提供的 RAID 類型,則 hdparm 沒有多大用處。然後你可以試試 udevadm:
udevadm info -a -p $(udevadm info -q path -n /dev/sdb)
它的輸出很長,所以我不會在這裡全部粘貼,但是當您比較輸出時,有足夠的資訊來區分節點上的 sdX 設備類型。