Как увидеть список и типы разделов на вставленной, но неподмонтированной флешке?



@0xC0CAC01A

Кто может подсказать команду в CentOS, позволяющую в командной строке увидеть список и типы разделов на вставленной, но неподмонтированной флешке?
Да, гугление не помогает, меня там забанили ))


Решения вопроса 0


Ответы на вопрос 3



@xotkot

как пример можете взять вывод утилиты lsblk за основу

$ lsblk -o NAME,RM,TRAN,SIZE,TYPE,PTTYPE,FSTYPE,PARTTYPENAME,MOUNTPOINTS,MODEL | awk 'NR==1 || $2 == 1'
NAME        RM TRAN     SIZE TYPE PTTYPE FSTYPE  PARTTYPENAME       MOUNTPOINTS                  MODEL
sda          1 usb     14,7G disk dos    iso9660                                                 Transcend 16GB
├─sda1       1          789M part dos    iso9660 Empty              /run/media/admin/ARCH_202309 
└─sda2       1           15M part dos    vfat    EFI (FAT-12/16/32)

где RM это флаг съёмного устройства, 1 съёмное а 0 не съёмное, TRAN device transport type в общем тип устройства usb, ssd, nvme …, с остальными параметрами думаю боле-мене ясно, их можно убавить по желанию.
С помощью `awk` мы отфильтруем(`$2 == 1`) тока съёмные устройства, ну и заодно оставим шапку(`NR==1`) для информативности.
При желании это можно вывести более кратко

$ lsblk -o NAME,RM,FSTYPE,MOUNTPOINTS | awk '$2==1{$2="";print}'
sda  iso9660
├─sda1  iso9660 /run/media/admin/ARCH_202312
└─sda2  vfat

где наличие третьего столбца у раздела говорит о его смонтированности

п.с.
тег CentOS тут думаю лишний, такая информация получается с помощью стандартных линукс утилит

п.с.2
может быть такая ситуация когда файловая система записана напрямую на весь диск без таблицы разделов, тогда вывод будет выглядеть примерно так:

$ lsblk -o NAME,RM,TRAN,SIZE,TYPE,PTTYPE,FSTYPE,PARTTYPENAME,MOUNTPOINTS,MODEL | awk 'NR==1 || $2 == 1'
NAME        RM TRAN     SIZE TYPE PTTYPE FSTYPE PARTTYPENAME     MOUNTPOINTS MODEL
sda          1 usb     14,7G disk        ext4                                Transcend 16GB

значение в PTTYPE будет отсутствовать

п.с.3

можно даже так с отфильтрованным и отформатированным выводом через json

$ lsblk -Jpo PKNAME,NAME,RM,FSTYPE,MOUNTPOINTS | jq -r '.blockdevices[] | select(.rm == true) | .children[] |select(.mountpoints[] == null) | "Съёмное устройство \(.pkname) имеет не смонтированный раздел \(.name) с файловой системой \(.fstype)"'
Съёмное устройство /dev/sda имеет не смонтированный раздел /dev/sda2 с файловой системой vfat

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



@martin74ua Куратор тега Linux

fdisk -l <имя нужного диска>



@fokin_nikolay1989

Воспользуйтесь
blkid

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *