Как получить UUID раздела и определить переменную Bash как равную ей?

Я хотел бы определить переменную Bash PART_ID как равную UUID раздела /dev/sdb1 . Ближе всего я получил желаемый ответ: вывод:

 ls -ld /dev/disk/by-uuid/* | grep sdb1 

который для меня дает:

 lrwxrwxrwx 1 root root 10 Mar 16 17:02 /dev/disk/by-uuid/d26c3e60-0cfb-4118-9dec-1f1819439790 -> ../../sdb1 

что не является приемлемым для меня значением PART_ID . Скорее всего, что PART_ID должен равняться d26c3e60-0cfb-4118-9dec-1f1819439790 .

  • Как запустить пользовательские скрипты на подключаемом устройстве USB-устройства?
  • Является ли идентификатор машины uuid?
  • blkid возвращает больше информации, чем ожидалось
  • Где получить библиотеки UUID и код
  • Создайте поддельное устройство для чтения, такое как файл с incrond
  • У Grub2 есть способ однозначно маркировать записи меню, которые можно использовать для установки по умолчанию для загрузки?
  • изменить FAT16-раздел UUID
  • Как я могу переопределить параметры ядра по умолчанию для mount?
  • 2 Solutions collect form web for “Как получить UUID раздела и определить переменную Bash как равную ей?”

    Обратите внимание, что UUID файловой системы (или других структурированных данных с UUID, о которых знают скрипты udev) в разделе, а не UUID самого раздела (не все схемы секционирования дают UUID для разделения в любом случае). См. Также Разница между UUID от blkid и mdadm? ,

    Несколько вариантов для Linux-систем для получения FS UUID:

     fs_uuid=$(blkid -o value -s UUID /dev/sdb1) fs_uuid=$(lsblk -no UUID /dev/sdb1) fs_uuid=$(udevadm info -n sdb1 -q property | sed -n 's/^ID_FS_UUID=//p') fs_uuid=$(find /dev/disk/by-uuid -lname '*/sdb1' -printf %f) 

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

    Если файловая система смонтирована, вы также можете использовать:

     fs_uuid=$(findmnt -fn -o UUID /dev/sdb1) 

    Вы можете сделать это таким образом

    PART_ID=$(blkid -o value -s UUID /dev/sdb1)

    Interesting Posts
    Linux и Unix - лучшая ОС в мире.