Список имён устройств, информации о дисках и разделах в Linux с помощью lsblk

Lsblk Featured

В Linux иногда необходимо работать с дисками и/или разделами непосредственно из командной строки. Часто вы на самом деле хотите выполнить действия с файловыми системами, но делаете это, указывая разделы, где они хранятся. В командной строке вы ссылаетесь на них, используя их имена устройств (например, “/dev/sda3”).

На системах с большим количеством дисков, разделов, оптических приводов и USB-накопителей бывает трудно идентифицировать имя устройства, присвоенное каждому из них.

Также читайте: Самые полезные команды du (Disk Usage) в Linux

Что делает команда lsblk?

lsblk отображает информацию об устройствах хранения. Утилита чаще всего используется для определения правильного имени устройства, которое будет передано в последующую команду.

lsblk

Lsblk Without Parameters

Чаще всего команда lsblk без дополнительных параметров достаточно для того, чтобы помочь идентифицировать диск или раздел, с которыми вы хотите работать. Из приведенного выше изображения, например, я могу сказать, что “sda4” — это раздел Windows, но это потому, что я знаю, что его размер составляет примерно 200 ГБ. Однако, если у вас есть два или более разделов одного и того же размера, всё может стать более запутанным. В других случаях вы просто не знаете или не помните размер конкретного диска или раздела в вашей системе.

В Linux опасно путать имена устройств, так как вы можете уничтожить или повредить полезные данные неверной командой.

Полезные параметры lsblk

По умолчанию lsblk отображает только несколько свойств, как вы видели на изображении выше. Но если добавить параметры к команде, можно вывести дополнительные свойства устройства. Это, в свою очередь, значительно упрощает идентификацию искомого диска или раздела.

Узнайте, является ли это SSD или жестким диском (HDD)

Чтобы увидеть, какие дополнительные столбцы может отображать lsblk, введите следующее:

lsblk --help

В этом сценарии вы будете использовать ROTA и DISC-GRAN. ROTA указывает, принадлежит ли блочное устройство к ротационному устройству хранения. Жесткие диски являются ротационными, поэтому в этом столбце выводится “1” рядом с ними (бинарное логическое значение, означающее “истина”). DISC-GRAN показывает вам гранулярность удаления. SSD поддерживают удаление для освобождения неиспользуемых блоков данных. Жесткие диски не поддерживают эту функцию, поскольку она им не нужна, поэтому этот столбец будет иметь значение ноль для них (“0B”, означающее гранулярность удаления ноль байт).

lsblk -o +ROTA,DISC-GRAN

Lsblk Show Ssds And Hard Disks

Также читайте: Как использовать команду ps в Linux для завершения процесса

Показать файловые системы, хранящиеся на дисках/разделах

Когда вы видите список разделов, вы, возможно, сможете определить, что каждый из них хранит, основываясь только на их размерах. Когда этого недостаточно, вы можете заставить lsblk выводить файловые системы. Определить разделы таким образом намного легче, потому что:

  • Windows использует файловую систему NTFS
  • Linux обычно использует ext4
  • USB-устройство использует FAT, FAT32 (vfat) или NTFS -Раздел загрузки EFI обычно очень мал и показывает файловую систему vfat на нем

Также добавьте столбец вывода LABEL, который может помочь, если разделы были помечены при создании/форматировании.

lsblk -o +FSTYPE,LABEL

Показать съемные устройства/USB-накопители

lsblk -o +RM

выведет дополнительный столбец, который сообщает, является ли устройство съемным. Значение “1” означает “истина”, что указывает на USB-накопитель или другие виды съемных носителей.

Показать модель HDD/SSD

Это полезно, когда вы хотите найти точный код модели вашего устройства хранения, чтобы обновить прошивку или загрузить драйверы.

lsblk -d-o +MODEL

Показать UUID файловой системы (Универсальный уникальный идентификатор)

Старые дистрибутивы Linux монтировали файловые системы, указывая их имена устройств в “/etc/fstab”. Однако это оказалось ненадежным, так как “/dev/sda2” может стать “/dev/sdb2” при добавлении другого устройства хранения в систему. В наши дни вместо этого используются UUID, которые остаются постоянными, независимо от того, что вы добавляете или удаляете в вашем компьютере. По любой причине, почему вам нужны UUID, вы можете заставить lsblk отображать их с помощью

lsblk -o +UUID

Показать другие столбцы lsblk, которые вам нужны

В начале учебника вы использовали

lsblk --help

чтобы увидеть дополнительные столбцы, которые lsblk может отображать. Если приведенные здесь примеры недостаточны для ваших нужд, обратитесь к этой справочной информации снова и комбинируйте параметры по мере необходимости. Для этого просто введите lsblk -o +, за которым следуют названия столбцов, которые вы хотите вывести. Разделяйте имена столбцов запятой (“,”). Например:

lsblk -o +SCHED,RM,FSTYPE

Заключение

После того, как вы определите имя устройства, с которым хотите работать, не забудьте заменить его полным путём устройства в следующей команде, которую вы собираетесь использовать. Например, если вы получили “sda4” в результате работы lsblk, вам нужно будет заменить его на “/dev/sda4” в следующей команде. Таким образом, вместо “sda4” вы напечатаете “/dev/sda4” в команде, такой как mkfs -t ext4 /dev/sda4.

Также читайте: 4 способа клонирования всего жесткого диска на Linux