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

В Linux иногда необходимо работать с дисками и/или разделами непосредственно из командной строки. Часто вы на самом деле хотите выполнить действия с файловыми системами, но делаете это, указывая разделы, где они хранятся. В командной строке вы ссылаетесь на них, используя их имена устройств (например, “/dev/sda3”).
На системах с большим количеством дисков, разделов, оптических приводов и USB-накопителей бывает трудно идентифицировать имя устройства, присвоенное каждому из них.
Также читайте: Самые полезные команды du (Disk Usage) в Linux
Что делает команда lsblk?
lsblk отображает информацию об устройствах хранения. Утилита чаще всего используется для определения правильного имени устройства, которое будет передано в последующую команду.
lsblk
Чаще всего команда 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
Также читайте: Как использовать команду 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