Necesito saber qué discos duros están disponibles, incluidos los que no están montados y posiblemente no estén formateados. No puedo encontrarlos en dmesg
o /var/log/messages
(demasiado para desplazarse). Espero que haya una manera de usar /dev
o /proc
para averiguar esta información, pero no sé cómo. Estoy usando Linux.
Respuesta aceptada:
Esto depende en gran medida de la plataforma. Además, diferentes métodos pueden tratar los casos extremos de manera diferente (discos "falsos" de varios tipos, volúmenes RAID, ...).
En instalaciones modernas de udev, hay enlaces simbólicos a medios de almacenamiento en subdirectorios de /dev/disk
, que le permite 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 archivos (/dev/disk/by-label/
) o por conectividad de hardware (/dev/disk/by-path/
).
En Linux 2.6, cada disco y dispositivo similar a un disco tiene una entrada en /sys/block
. En Linux desde el principio de los tiempos, los discos y las particiones se enumeran en /proc/partitions
. Alternativamente, puede usar lshw:lshw -class disk
.
Linux también proporciona el lsblk
utilidad que muestra una bonita vista de árbol de los volúmenes de almacenamiento (desde util-linux 2.19, no presente en dispositivos integrados con BusyBox).
Si tiene un fdisk
o disklabel
utilidad, es posible que pueda decirle en qué dispositivos puede funcionar.
Encontrará nombres de utilidades para muchas variantes de Unix en Rosetta Stone para Unix, en particular las líneas "mostrar configuración de hardware" y "leer una etiqueta de disco".