Elenco delle porte SATA inutilizzate su Linux


18

Ho una macchina fisica che esegue Linux (CentOS 6.3, in particolare), e voglio sapere quante porte SATA sono attualmente inutilizzate (cioè non è collegato nulla). Certo, potrei semplicemente aprire la macchina, ma diciamo che non ho accesso fisico. Esiste un comando che posso usare per mostrare quali porte SATA non sono utilizzate?

Conosco già il lshwcomando, ma per quanto ne so, elenca solo le porte SATA utilizzate e non quelle libere.

Risposte:


5

Esiste un comando che posso usare per mostrare quali porte SATA non sono utilizzate?

No, ma puoi fare il contrario. È possibile elencare quali porte vengono utilizzate. Quindi cerca (nel manuale) quante porte ci sono sulla scheda madre, sottrai quante sono già in uso e ottieni il numero di porte rimanenti.

Ciò presuppone che sia collegata un'unità SATA per connettore SATA (ad es. Nessun moltiplicatore di porte ).


Ci sono molti modi per farlo.

Se tutti i controller SATA hanno i driver caricati (abbastanza normale), allora trovo fdisk -ldi elencare tutti i dischi nel modo più semplice.

Se non hai più fdisk (viene sostituito le mie varianti più moderne come gpart), puoi leggere il registro di avvio. Alcuni googling mostrano che CentOS ha questo disponibile tramite dmesg , ma è anche possibile leggere direttamente i file di registro. Probabilmente ci sono in /var/log/dmesg.log, /var/run/dmesg.boot o in / var / log / boot. (Mantenendo questo un po 'generico per le persone che non usano CentOS).

Poi c'è lspci. Questo elenca tutti i dispositivi PCI e PCI-e, inclusi i controller SATA. Aggiungi -vper ottenere un output più facile da leggere.

Oppure usa dmidecode. Questo richiede informazioni al BIOS. Se l'output di questo comando sembra schiacciante, limitalo con l' -t NRopzione.


Una combinazione di lspcie le specifiche della scheda madre pertinenti hanno fornito le informazioni di cui avevo bisogno. Grazie.
Coledot,

21

Sono passati tre anni, ma se qualcuno arriva attraverso Google, ecco qui: se hai EPEL abilitato, quindi installa lsscsi , fornisce principalmente informazioni sui dispositivi collegati, ma il suo parametro -H è quello che ti serve:

--hosts | -H elenca gli host scsi anziché i dispositivi scsi

Confronta con altre modalità di output e hai la differenza:

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

AGGIORNAMENTO: Ignoralo, senza installare nulla:

dmesg | grep 'SATA link down'

ti mostrerà le porte non utilizzate.


Grazie, molto utile Funziona anche su Ubuntu ( lsscsiè incluso nei repository predefiniti, almeno da 16.04 LTS).
Gerlos,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.