Necesito saber qué discos duros están disponibles, incluyendo los que no están montados y posiblemente no están formateados. No puedo encontrarlos en dmesg
o /var/log/messages
(es demasiado para recorrerlos). Espero que haya una manera de usar /dev
o /proc
para encontrar esta información, pero no sé cómo. Estoy usando Linux.
Esto depende en gran medida de la plataforma. Además, los distintos métodos pueden tratar los casos límite de forma diferente (discos "falsos" de varios tipos, volúmenes RAID, ...).
En las instalaciones modernas de udev, hay enlaces simbólicos a medios de almacenamiento en subdirectorios de /dev/disk
, que le permiten buscar un disco o una partición por número de serie (/dev/disk/by-id/
), por UUID (/dev/disk/by-uuid
), por etiqueta del sistema de ficheros (/dev/disk/by-label/
) o por conectividad de hardware (/dev/disk/by-path/
).
Bajo Linux 2.6, cada disco y dispositivo similar a un disco tiene una entrada en /sys/block
. En Linux desde el principio, los discos y las particiones se listan en /proc/partitions
. Como alternativa, puede utilizar lshw: lshw -class disk
.
Linux también proporciona la utilidad lsblk
que muestra una bonita vista de árbol de los volúmenes de almacenamiento (desde util-linux 2.19, no está presente en los dispositivos integrados con BusyBox).
Si tienes una utilidad fdisk
o disklabel
, puede ser capaz de decirte en qué dispositivos puede trabajar.
Encontrarás los nombres de las utilidades para muchas variantes de unix en la Rosetta Stone for Unix, en particular las líneas "listar la configuración del hardware" y "leer una etiqueta de disco".
@Giles dice que esto depende en gran medida de la plataforma. Aquí's un ejemplo de ello.
Estoy ejecutando un sistema CentOS 5.5. Este sistema tiene 4 discos y un controlador RAID 3ware.
En mi caso, lshw -class disk
, cat /proc/scsi/scsi
y parted --list
muestra la controladora RAID (3ware 9650SE-4LP). Esto no muestra los discos reales:
sólo muestra la controladora RAID 3ware que proporciona el volumen /dev/sda:
# lshw -class disk
*-disk
description: SCSI Disk
product: 9650SE-4LP DISK
vendor: AMCC
physical id: 0.0.0
bus info: scsi@0:0.0.0
logical name: /dev/sda
# cat /proc/scsi/scsi
Attached devices:
Host: scsi0 Channel: 00 Id: 00 Lun: 00
Vendor: AMCC Model: 9650SE-4LP DISK Rev: 4.06
Type: Direct-Access ANSI SCSI revision: 05
# parted --list
Model: AMCC 9650SE-4LP DISK (scsi)
Disk /dev/sda: 2000GB
Para ver los discos que hay debajo, he tenido que instalar la utilidad tw_cli de 3ware, y preguntarle a la propia controladora.
# tw_cli info c0
...
VPort Status Unit Size Type Phy Encl-Slot Model
------------------------------------------------------------------------------
p0 OK u0 931.51 GB SATA 0 - WDC WD1002FBYS-02A6
p1 OK u0 931.51 GB SATA 1 - WDC WD1002FBYS-02A6