В этом руководстве перечислены различные методы поиска сведений о жестких дисках в операционных системах Linux.
Используя приведенные ниже методы, вы можете найти марку жесткого диска, тип жесткого диска, размер, версию прошивки, таблицы разделов и другие параметры оборудования.
Сначала мы увидим, как отображать данные жесткого диска с помощью утилиты командной строки hdparm.
1. Hdparm
Предостережение
Хотя инструмент hdparm предлагает значительные преимущества для увеличения производительности диска, он также ОЧЕНЬ ОПАСЕН. Скорее всего, он приведет к массовой потере данных при неправильном использовании некоторых параметров. Документация hdparm предполагает, что ВЫ НЕ ДОЛЖНЫ ИСПОЛЬЗОВАТЬ НЕКОТОРЫЕ КОМАНДЫ ПРИ ЛЮБЫХ ОБСТОЯТЕЛЬСТВАХ. Поэтому я исключил такие опасные команды из этого руководства. Что еще более важно, всегда рекомендуется сделать резервную копию вашего жесткого диска перед тестированием hdparm в вашей системе Linux.
1.1. Установите hdparm на Linux
Hdparm предустановлен в большинстве дистрибутивов Linux.
Если он не включен по какой-либо причине, установите hdparm в вашей системе Linux, используя менеджер пакетов по умолчанию.
На Arch Linux, Manjaro Linux:
$ sudo pacman -S hdparm
На Debian, Ubuntu, Linux Mint:
$ sudo apt install hdparm
На Fedora, CentOS, RHEL:
$ sudo dnf install hdparm
На openSUSE:
$ sudo zypper install hdparm
1.2. Как найти информацию о жестком диске на Linux с помощью Hdparm
Чтобы отобразить подробную информацию о жестком диске, просто запустите hdparm с привилегиями sudo или root, как показано ниже:
$ sudo hdparm -I /dev/sda | less
Здесь sda – мой жесткий диск.
Замените его на свое устройство.
Здесь я использовал команду less для интерактивного чтения.
Нажмите клавишу ENTER или нажимайте стрелки ВВЕРХ / ВНИЗ, чтобы просмотреть остальные выходные данные.
Нажмите q, чтобы выйти, когда закончите.
Пример вывода моей системы Ubuntu:
/dev/sda: ATA device, with non-removable media Model Number: ST9500325AS Serial Number: 5VEQTRV0 Firmware Revision: D005DEM1 Transport: Serial Standards: Used: unknown (minor revision code 0x0029) Supported: 8 7 6 5 Likely used: 8 Configuration: Logical max current cylinders 16383 16383 heads 16 16 sectors/track 63 63 -- CHS current addressable sectors: 16514064 LBA user addressable sectors: 268435455 LBA48 user addressable sectors: 976773168 Logical/Physical Sector size: 512 bytes device size with M = 1024*1024: 476940 MBytes device size with M = 1000*1000: 500107 MBytes (500 GB) cache/buffer size = 8192 KBytes Nominal Media Rotation Rate: 5400 Capabilities: LBA, IORDY(can be disabled) Queue depth: 32 Standby timer values: spec'd by Standard, no device specific minimum R/W multiple sector transfer: Max = 16 Current = 16 Advanced power management level: 254 Recommended acoustic management value: 208, current value: 208 DMA: mdma0 mdma1 mdma2 udma0 udma1 udma2 udma3 udma4 udma5 *udma6 Cycle time: min=120ns recommended=120ns PIO: pio0 pio1 pio2 pio3 pio4 Cycle time: no flow control=120ns IORDY flow control=120ns [...]
Как вы можете видеть, hdparm отображает номер модели жесткого диска, серийный номер, версию прошивки, за которой следует конфигурация жесткого диска, настройки DMA, список включенных функций, параметры безопасности и т. д.
Все функции, найденные в разделе Раздел «Commands/features», отмеченный звездочкой, в настоящее время активен.
Точно так же вы можете проверить информацию о других устройствах.
$ sudo hdparm -I /dev/sdb | less
$ sudo hdparm -I /dev/sdc | less
При запуске hdparm без параметров предполагается -acdgkmur.
Обратитесь к страницам руководства, чтобы узнать, для чего предназначен каждый параметр.
$ sudo hdparm /dev/sda
/dev/sda: multcount = 16 (on) IO_support = 1 (32-bit) readonly = 0 (off) readahead = 256 (on) geometry = 60801/255/63, sectors = 976773168, start = 0
Для более подробной информации обратитесь к справочным страницам.
$ man hdparm
2. lshw
Lshw (Hardware Lister) – это простая, но полнофункциональная утилита, которая предоставляет подробную информацию о конфигурации оборудования системы Linux.
Она может сообщать точную конфигурацию памяти, версию прошивки, конфигурацию материнской платы, версию и скорость процессора, информацию о жестком диске, конфигурацию кэша, скорость шины и многое другое.
2.1. Установка lshw на Linux
По умолчанию lshw поставляется в некоторых дистрибутивах Linux, таких как Ubuntu.
Если онне установлен, установите lshw в вашу Linux-систему, используя менеджер пакетов по умолчанию, как показано ниже.
На Arch Linux и его подобных типа Manjaro Linux, выполните:
$ sudo pacman -S lshw
На Debian, Ubuntu, Linux Mint:
$ sudo apt install lshw
На Fedora, CentOS, RHEL:
$ sudo dnf install lshw
На openSUSE:
$ sudo zypper install lshw
2.2. Как найти информацию о жестком диске на Linux с помощью lshw
После установки lshw просто запустите следующую команду, чтобы получить информацию о вашем жестком диске в Linux:
$ sudo lshw -class disk
Пример вывода:
[...] -disk description: ATA Disk product: ST9500325AS physical id: 0 bus info: scsi@0:0.0.0 logical name: /dev/sda version: DEM1 serial: 5VEQTRV0 size: 465GiB (500GB) capabilities: partitioned partitioned:dos configuration: ansiversion=5 logicalsectorsize=512 sectorsize=512 signature=8dd04bfd [...]
Чтобы отобразить только название дисков, запустите:
$ sudo lshw -short -C disk
Пример вывода:
H/W path Device Class Description ==================================================================== /0/100/1d/1/1/6/0.0.0 /dev/sdb disk Multi-Card /0/100/1d/1/1/6/0.0.0/0 /dev/sdb disk /0/100/1f.2/0 /dev/sda disk 500GB ST9500325AS /0/100/1f.2/1 /dev/cdrom disk DVD+-RW DS-8A8SH
Для более подробной информации, обратитесь к справочным страницам.
$ man lshw
3. inxi
3.1. Установка inxi на Linux
Inxi также доступен в репозиториях по умолчанию большинства дистрибутивов Linux.
В Arch Linux он доступен в AUR.
Вы можете установить его с помощью любых вспомогательных программ AUR, например Yay.
$ yay -S inxi
На Debian, Uubntu:
$ sudo apt install inxi
На Fedora:
$ sudo dnf install inxi
На CentOS и RHEL:
Включите репник [EPEL] :
$ sudo dnf install epel-release
$ sudo dnf install inxi
На openSUSE:
$ sudo zypper install inxi
3.2. Как найти информацию о жестком диске на Linux с помощью Inxi
Чтобы получить подробную информацию об установленных жестких дисках в вашей системе Linux, запустите:
$ inxi -D
Пример вывода:
Drives: Local Storage: total: 465.76 GiB used: 376.31 GiB (80.8%) ID-1: /dev/sda vendor: Seagate model: ST9500325AS size: 465.76 GiB
Вы также можете отобразить дополнительные сведения о диске, такие как скорость контроллера диска, серийный номер и температура, с помощью следующей команды:
$ inxi -Dxx
Пример вывода:
Drives: Local Storage: total: 465.76 GiB used: 332.10 GiB (71.3%) ID-1: /dev/sda vendor: Seagate model: ST9500325AS size: 465.76 GiB speed: 3.0 Gb/s serial: 5VEQTRV0 temp: 46 C
В отличие от программ Hdparm и lshw, он будет отображать только данные жесткого диска.
Утилиты hdparm и lshw отобразят всю информацию о приводе, включая CD / DVD ROM.
Для более подробной информации обратитесь к справочным страницам.
$ man inxi
4. Smartctl
4.1. Как найти информацию о жестком диске на Linux с помощью Smartctl
Чтобы получить полную информацию о жестком диске в вашей Linux-системе, запустите:
$ sudo smartctl -d ata -a -i /dev/sda
Пример вывода:
smartctl 7.1 2019-12-30 r5022 [x86_64-linux-5.4.0-29-generic] (local build) Copyright (C) 2002-19, Bruce Allen, Christian Franke, www.smartmontools.org === START OF INFORMATION SECTION === Model Family: Seagate Momentus 5400.6 Device Model: ST9500325AS Serial Number: 5VEQTRV0 LU WWN Device Id: 5 000c50 048fe5ff9 Firmware Version: D005DEM1 User Capacity: 500,107,862,016 bytes [500 GB] Sector Size: 512 bytes logical/physical Rotation Rate: 5400 rpm Device is: In smartctl database [for details use: -P show] ATA Version is: ATA8-ACS T13/1699-D revision 4 SATA Version is: SATA 2.6, 3.0 Gb/s Local Time is: Mon May 11 16:35:54 2020 IST SMART support is: Available - device has SMART capability. SMART support is: Enabled [...]
Для более подробной информации обратитесь к справочным страницам.
$ man smartctl
5. Как найти информацию о жестком диске на Linux с помощью LSBLK
Lsblk – это утилита командной строки для отображения всех доступных или указанных блочных устройств в Unix-подобных операционных системах.
Она читает файловую систему «sysfs» и «udev db» для сбора информации.
Команда lsblk является частью пакета «util-linux», который предустановлен в большинстве дистрибутивов Linux.
Чтобы отобразить все блочные устройства с помощью команды lsblk, выполните:
$ lsblk -io KNAME,TYPE,SIZE,MODEL
Пример вывода:
loop0 loop 154.3M loop1 loop 154.3M loop2 loop 93.8M loop3 loop 93.9M loop4 loop 55M loop5 loop 55M loop6 loop 149M loop7 loop 140.7M loop8 loop 156.7M loop9 loop 255.6M loop10 loop 160.2M loop11 loop 2.4M loop12 loop 2.4M loop13 loop 140.7M loop14 loop 242.4M loop15 loop 14.8M loop16 loop 276K loop17 loop 956K loop18 loop 956K loop19 loop 3.7M loop20 loop 2.2M loop21 loop 54.8M loop22 loop 62.1M loop23 loop 199.4M loop24 loop 203M sda disk 465.8G ST9500325AS sda1 part 465.8G sr0 rom 1024M PLDS_DVD+_-RW_DS-8A8SH
$ lsblk -ido KNAME,TYPE,SIZE,MODEL