[devel] udevless информация о блочных устройствах

Leonid Krivoshein klark.devel на gmail.com
Сб Июн 15 19:44:10 MSK 2019


15.06.2019 18:48, Alexey V. Vissarionov пишет:
> On 2019-06-15 18:23:20 +0300, Leonid Krivoshein wrote:
>
>   > Точно знаю: среди вас есть не любители udev.
>
> Любители ходить своими ногами без костылей? Есть.
>
>   > Хоть и очень мало. Нужна ваша помощь. Скажите, есть ли на
>   > конфигурациях без udev что-то в этом роде:
>   > ls /run/udev/data/b[0-9]*
>
> А что оно там держит?

Довольно много полезной информации, доступной на чтение обычному 
пользователю. Если исходить из того, что ей можно доверять, то root не 
нужен для сбора полной информации о дисках. Пример тому -- утилита 
lsblk. А вот пример одного из файлов с одной такой машины:

$ cat /run/udev/data/b259:2
S:disk/by-id/nvme-eui.0025385571b1ff85-part1
S:disk/by-partlabel/EFI\x20System\x20#0
S:disk/by-id/nvme-Samsung_SSD_960_EVO_250GB_S3ESNX0J548186Z-part1
S:disk/by-uuid/D8D3-34C6
S:disk/by-partuuid/a913806d-aad2-4a73-bce5-d4466b6bcc0a
S:disk/by-path/pci-0000:04:00.0-nvme-1-part1
W:36
I:2299817
E:ID_MODEL=Samsung SSD 960 EVO 250GB
E:ID_PART_TABLE_TYPE=gpt
E:ID_PART_TABLE_UUID=7ada8a72-60dd-46ae-a1fb-bb91655e2734
E:ID_PATH=pci-0000:04:00.0-nvme-1
E:ID_PATH_TAG=pci-0000_04_00_0-nvme-1
E:ID_SERIAL=Samsung SSD 960 EVO 250GB_S3ESNX0J548186Z
E:ID_SERIAL_SHORT=S3ESNX0J548186Z
E:ID_WWN=eui.0025385571b1ff85
E:ID_FS_UUID=D8D3-34C6
E:ID_FS_UUID_ENC=D8D3-34C6
E:ID_FS_VERSION=FAT32
E:ID_FS_TYPE=vfat
E:ID_FS_USAGE=filesystem
E:ID_PART_ENTRY_SCHEME=gpt
E:ID_PART_ENTRY_NAME=EFI\x20System\x20#0
E:ID_PART_ENTRY_UUID=a913806d-aad2-4a73-bce5-d4466b6bcc0a
E:ID_PART_ENTRY_TYPE=c12a7328-f81f-11d2-ba4b-00a0c93ec93b
E:ID_PART_ENTRY_NUMBER=1
E:ID_PART_ENTRY_OFFSET=2048
E:ID_PART_ENTRY_SIZE=204800
E:ID_PART_ENTRY_DISK=259:0
E:UDISKS_IGNORE=1
E:UDISKS_FILESYSTEM_SHARED=1
G:systemd

Здесь информация хранится в ramfs. Вопрос в том, есть ли у тебя это без 
udev? Если нет, то как без рута lsblk определит, к примеру, тип файловой 
системы? Что-то вроде результата анализа strace lsblk --list --output 
FSTYPE --noheadings /dev/sda1 интересует.


>   > ls /sys/block/*/uevent
> [...]
>   > (Можно просто ДА или НЕТ, работать должно из под обычного
>   > пользователя).
>
> Из-под обычного меня работает.

Ага, спасибо!


-- 
Best regards,
Leonid Krivoshein.



Подробная информация о списке рассылки Devel