Domanda

Come posso ottenere il nome del fornitore del dispositivo SCSI su linux & c?

È stato utile?

Soluzione

E 'possibile utilizzare libudev trovare dispositivi SCSI e leggere l'attributo vendor (non testata):

struct udev *context = udev_new();
struct udev_enumerate *enumerator = udev_enumerate_new(context);
udev_enumerate_add_match_subsystem(enumerator, "scsi");
udev_enumerate_scan_devices(enumerator);
struct udev_list_entry *scsi_devices = udev_enumerate_get_list_entry(enumerator);
struct udev_list_entry *current = 0;
udev_list_entry_foreach(current, scsi_devices) {
    struct udev_device *device = udev_device_new_from_syspath(
            context, udev_list_entry_get_name(current));
    const char *vendor = udev_device_get_sysattr_value(device, "vendor");
    printf("%s\n", vendor);
}

Altri suggerimenti

Si potrebbe guardare in lettura dei file / sys se si conosce il dispositivo / bus id, anche controllare lsscsi .

  -> cat /sys/bus/scsi/devices/target13:0:0/13:0:0:0/vendor 
Marvell

(1) dispositivo SCSI aperto. (2) Invia SCSI comando "richiesta" di ioctl. quindi è possibile ottenere il nome del fornitore dei dati restituiti.

Il pacchetto contiene utilità sg3_utils che inviano comandi SCSI ai dispositivi.

Una volta che abbiamo installato sg3_utils, comando di marcia sg_inq sul dispositivo che si interessa.

Ad esempio: #sg_inq / dev / sda

Il comando sopra verrà eseguito un'indagine standard SCSI sul dispositivo e fornire il nome del fornitore e altri dettagli.

Con riferimento ai comandi SCSI SPC-3 documenti & sg3_utils posso suggerire di seguito:

1) il comando: sg_inq -p 0x00 / dev / your_device_name

Questo vi darà sostenuto pagine dal dispositivo.

2) Se mostrati comando 0x83 come uno della pagina supportata poi il comando:

sudo sg_inq -p 0x83 / dev / your_device_name

Questo mostrerà le informazioni del fornitore.

P.S -> your_device_name esempio SR1, sda1

Utilizza questo link per ottenere lo script per ottenere questo tipo di informazioni:

http: // a-saurabh.blogspot.in/2014/06/sometimes-we-want-to-query-about-our.html

è possibile utilizzare scsi richiesta da strumenti come sg3_utils o semplicemente trovare sotto sys / bus / scsi / dispositivi / xxxxx

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top