Мне нужно найти все записываемые устройства хранения данных, подключенные к данной машине, независимо от того, смонтированы они или нет.
Допустимый способ сделать это - попробовать каждую запись /dev
, соответствующую записываемым устройствам (hd * и sd *).
Есть ли лучшее решение, или я должен придерживаться этого?
Ответы:
Если вас интересуют только блочные устройства хранения, вы можете использовать
lsblk
из широко доступного пакета util-linux:Он хорошо подходит для сценариев со многими другими доступными столбцами.
источник
Вы можете просматривать выходные данные
lshw
и извлекать подробности об устройствах в классеdisk
илиtape
(и, возможно, в других -storage
класс дает вам подробности о контроллерах хранения, scsi, sata, sas и т. Д.).например
-short
Вариант дает хорошее компактное резюме. Например, на моем домашнем сервере / рабочей станции / экспериментальной коробке zfsonlinux (к сожалению, нет ленточных устройств):Устройства / 0/1 на самом деле представляют собой USB-кард-ридер (к одному из слотов подключена SD-карта емкостью 2 ГБ), а устройство / 0/2 - это мой телефон Android, подключенный только для зарядки. Устройство 0/3 - это флэш-накопитель USB объемом 4 ГБ.
lshw
может выводить простой текст, HTML, XML и JSON. Он также может выводить информацию об оборудовании в формат базы данных sqlite.Он упакован для Debian и большинства других дистрибутивов. Домашняя страница и источник находятся по адресу http://ezix.org/project/wiki/HardwareLiSter.
источник
Пожалуйста, попробуйте эту команду
В нем будут перечислены все блочные устройства в вашей системе.
источник
Вы можете использовать
lsblk
список всех блочных устройств, а также то, доступно ли каждое устройство только для чтения.Затем вы можете использовать
grep
иawk
для печати имен блочных устройств, которые не только для чтения:источник
lsblk
перечислит все блочные устройства хранения.fdisk -l
перечислит все разделы на всех устройствах, которые перечислены в/proc/partitions
lshw -short
предоставит вам информацию обо всем аппаратном обеспечении (кроме, возможно, FireWire) в системе.источник
Если, в соответствии с вашим ответом на derobert, вы ищете что - то , что списки ленточных накопителей и принтеров , вы можете быть заинтересованы в
lsdev
,lsusb
иlspci
.источник
fdisk -l
Вы можете попробовать следующую команду:
источник
Вы можете использовать hwinfo для вывода списка всех дисков ( документация ).
hwinfo --block --short
дает обзор:hwinfo --disk
дает больше деталей для каждого диска.К сведению: в некоторых дистрибутивах Linux, таких как Ubuntus 14.04 и выше, hwinfo отсутствует в официальном репозитории .
источник
Я обнаружил, что
fdisk
иlsblk
не доступен в виртуальном терминале для установщика Debian. В этом случае я используюblkid
, который получает UUID для блочных устройств хранения.источник
Если вы имеете в виду устройства RAID, то вы не сможете получить правильный результат, используя hdparm smartctl и т. Д., Потому что такого рода инструменты ищут уровень / dev на уровне ОС, если вы хотите знать об этом на аппаратном уровне, тогда вам нужен инструмент типа megacli я раньше отлаживал с мегакли
Получить серийный номер диска
В приведенном выше выводе данные запроса содержат серийный номер
источник
Вот пара команд, которые я использовал для поиска локального и общего хранилища.
Для локального хранения
Для общего хранилища
источник
loop
иtmpfs
разделов. Так что лучше очистить вывод, используя grep, как указано выше.Это перечислит все ваши диски и подключенные диски:
источник