Команда blkid

Команда blkid позволяет задействовать одноименную утилиту, предназначенную для получения информации об идентификаторах блочных устройств. Она может определять тип файловой системы блочного устройства (TYPE), его идентификатор (UUID) и метку тома (LABEL). Команда может оказаться полезной при разработке сценариев командной оболочки, предназначенных для работы с дисковыми разделами.

Базовый синтаксис команды выглядит следующим образом:

$ blkid [параметр] [имя-файла-устройства]

Утилита поддерживает ряд параметров, многие из которых не потребуются большинству пользователей. Если говорить о наиболее важных параметрах, то следует упомянуть о параметре -o, который позволяет выводить информацию в заданном формате (value, device, full, udev), параметре -p, позволяющем прочитать данные с диска без использования кэша, параметре -U, позволяющем искать путь к файлу устройства по его идентификатору, параметре -g, позволяющем обновить кэш и параметре -n, позволяющем искать устройства с заданными файловыми системами.

Примеры использования

Вывод информации о блочных устройствах

Для вывода информации о блочных устройствах достаточно использовать утилиту без каких-либо параметров:

$ blkid
/dev/sda1: UUID="7fa4c96c-188a-4189-ae35-004b412f4812" TYPE="swap" PARTUUID="00089740-01"
/dev/sda2: UUID="615ebb47-f2f8-4fda-ba15-f69cee257498" BLOCK_SIZE="4096" TYPE="ext4" PARTUUID="00089740-02"
/dev/sr1: BLOCK_SIZE="2048" UUID="2012-02-27-12-00-00-00" LABEL="MegaFon Modem" TYPE="iso9660" PTTYPE="mac"

Формат вывода вполне очевиден: после пути к файлу устройства приведены идентификатор UUID, тип файловой системы TYPE, метка раздела LABEL, а также специальный идентификатор раздела PARTUUID.

Если вас интересует информация лишь об одном устройстве, вы можете передать утилите путь к соответствующему файлу:

$ blkid /dev/sda2
/dev/sda2: UUID="615ebb47-f2f8-4fda-ba15-f69cee257498" BLOCK_SIZE="4096" TYPE="ext4" PARTUUID="00089740-02"

Очевидно, что была выведена та же информация. Если вам нужно больше информации, вы можете изменить формат вывода:

$ blkid -o udev /dev/sda2
ID_FS_UUID=615ebb47-f2f8-4fda-ba15-f69cee257498
ID_FS_UUID_ENC=615ebb47-f2f8-4fda-ba15-f69cee257498
ID_FS_BLOCK_SIZE=4096
ID_FS_TYPE=ext4
ID_FS_PARTUUID=00089740-02

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

Поиск блочных устройств

Для поиска блочного устройства достаточно знать его идентификатор и использовать параметр -U:

$ blkid -U 615ebb47-f2f8-4fda-ba15-f69cee257498
/dev/sda2

Очевидно, что утилита вернула путь к файлу искомого устройства.