Linux: Как я могу просмотреть все UUID для всех доступных дисков в моей системе?

Если Вы не запланировали заранее и устанавливаете screen, и т.д. просто сделайте следующее:

  1. Если Ваш процесс работает в фоновом режиме: goto № 3, еще: Ctrl-Z приостановить приоритетный процесс. Это сообщит о задании # приостановленного процесса, например:

    [1]+  Stopped                 processName
    
  2. Отправить processName к фону с bg %1 (использующий безотносительно задания # следует %). Это возобновится processName в фоновом режиме.

  3. Отрицать processName с disown %1 или disown PID. Используйте -h отметьте, если Вы хотите поддержать владение, пока Вы не завершаете свою текущую оболочку.

168
19.08.2010, 19:59
11 ответов

В /dev/disk/by-uuid существуют символьные ссылки, отображающие UUID каждого диска на его запись в /dev (например. /dev/sda1)

149
27.01.2020, 19:28
  • 1
    Это не читаемо когда разделы LVM. –  Grzegorz Wierzowiecki 19.09.2011, 00:22
  • 2
    LVM уже использует долгие подобные UUID идентификаторы (хотя представлено по-другому) в его структуре. Я думаю единственная причина использования файловой системы, которой UUID с LVM были бы как объединенный интерфейс для своего рода автоматизации, поскольку LVM уже делает отображение LVs к человечески-благоприятным именам Вас. –  telcoM 28.01.2018, 03:27
  • 3
    ls -lha /dev/disk/by-uuid –  deFreitas 10.04.2018, 05:03

Существует названный инструмент blkid (используйте его в качестве корня или с sudo),

# blkid /dev/sda1
/dev/sda1: LABEL="/" UUID="ee7cf0a0-1922-401b-a1ae-6ec9261484c0" SEC_TYPE="ext2" TYPE="ext3"

можно проверить эту ссылку на большее количество информации

174
27.01.2020, 19:28
  • 1
    Просто незначительный комментарий: похож на то, чтобы быть членом группы disk достаточно для выполнения blkid; никакая потребность в полных полномочиях суперпользователя. –  arielf 15.12.2013, 01:19
  • 2
    Если Вы хотите только UUID (как для парсинга в сценарии), можно сделать blkid /dev/sda1 -s UUID -o value. –  Jack O'Connor 21.06.2016, 00:35
  • 3
    Быстрый комментарий здесь: в моем дистрибутиве (Debian 8) это приводит к UUID, а также "PARTUUID", который довольно сбивает с толку. Я использовал {lsblk} команды, который дает только одно значение. –  takumar 12.09.2016, 14:57
  • 4
    Этот экономит много времени, хотя я предпочитаю делать blkid /dev/sd* перечислять все диски.. Информации, которая выкладывает, обычно более чем достаточно для нахождения диска, в котором Вы нуждаетесь. :) –  ZaLiTHkA 01.07.2017, 11:04
  • 5
    PARTUUID для GPT-фрагментированных-дисков является UUID GPT для раздела, не для файловой системы в нем. Могло бы быть полезным, когда файловая система еще не создается. На фрагментированном диске MBR PARTUUID не является реальный UUID, но просто Windows Disk Signature от MBR + тире + число раздела. –  telcoM 28.01.2018, 03:32

Это работает на меня:

ls -la /dev/disk/by-uuid

Если Вы хотите проверить то, что вводит раздел, используйте:

df -Th

и это покажет Вам, если у Вас будет ext3 или ext2. Сегодня это помогло мне, потому что был отформатированный ext2 раздел, и я думал, что это был ext3, который заставлял монтирование перестать работать.

11
27.01.2020, 19:28
  • 1
    Вы могли всегда пробовать mount -t auto /dev/sda1 /media/sda1. –  ott-- 28.12.2012, 23:16

Для наблюдения uuid раздела жесткого диска, я просто загружаю систему с CD Linux и goto, который мой компьютер монтирует, нажимает, раздел, который я хочу видеть. uuid количество раздела Linux будет отображено.

Можно также видеть диск uuid путем выполнения Дисковой утилиты Linux после того, как CD Linux загрузится.

0
27.01.2020, 19:28

С помощью следующей командной строки вы можете увидеть UUID плюс отображение на разделы.

ls /dev/disk/by-uuid -lt

lrwxrwxrwx 1 root root 10 Sep  1 18:51 57eacf4e-1940-436e-b945-85f8d4833aa5 -> ../../sda2
lrwxrwxrwx 1 root root 10 Sep  1 18:51 656f4cae-8527-43a0-a80f-00ac82818744 -> ../../sda1
lrwxrwxrwx 1 root root  9 Sep  1 18:51 d627595d-4060-440e-8380-a1fe9f3f2a81 -> ../../md0
lrwxrwxrwx 1 root root 10 Sep  1 18:51 0dfd6dfe-1852-460d-852c-676a5b9035ed -> ../../sda4
lrwxrwxrwx 1 root root 10 Sep  1 18:51 b1ddf850-8f81-429f-a653-38ae4a4ebb6f -> ../../sda3
lrwxrwxrwx 1 root root  9 Sep  1 18:51 b4b729f7-5699-411c-8f5a-424bbc7c89fc -> ../../sdb
1
27.01.2020, 19:28

Лучше всего использовать следующую команду. lsblk -f. Она покажет все устройства и разделы, как они смонтированы (если они вообще смонтированы) и древовидную структуру устройств в случае использования LVM, crypto_LUKS или нескольких групп томов на одном диске.

38
27.01.2020, 19:28

Предыдущие ответы не работают для нескольких устройств или для устройств с идентичными UUID.

Попробуйте следующее:

sudo blkid /dev/sd*
2
27.01.2020, 19:28

Чтобы получить только UUID определенного дискового устройства (например, для использования в сценарии), вы можете использовать:

sudo blkid -s UUID -o value /dev/sdXY

где / dev / sdXY - это имя устройства.

20
27.01.2020, 19:28
lsblk -o +uuid,name

Вы можете увидеть все выходы, которые можно добавить к-o(--output)с помощью

.
lsblk --help

Это тоже подойдет

# blkid
12
27.01.2020, 19:28

У меня та же проблема, что и у вас :переименование ядром /dev/sd**после перезагрузки:

Конечно, на все мои автоматические монтирования в /etc/fstabссылаются LABEL или UUID, так что в принципе с этим проблем нет. И все приведенные выше команды, blkid или lsblk, дают такую ​​информацию.

Но начинается беда, как и в моем случае, когда вы используете раздел в режиме RAW, в текущей загруженной системной точке -вида -:например либо :раздел используется как необработанное устройство, чтобы сделать виртуальный диск для VirtualBox (, поэтому ссылка на этот раздел выглядит примерно так::/dev/sdf3)или раздел используется как необработанное устройство, чтобы сделать LUN для iSCSI (, поэтому ссылка на этот раздел выглядит примерно так::/dev/sdc6)

Итак, теперь при загрузке, например, в rc.local, вы должны найти надежным способом /dev/sdXXкакое устройство у вашего выделенного раздела RAW и адаптировать какой-нибудь файл:

ПРИМЕР 1

Диск VirtualBox *.vmk описание этого необработанного диска, в части что-то вроде:

\# Extent description
RW 488397167 FLAT "/dev/sdXX" 0

, а затем перезапустите службу VirtualBox

ПРИМЕР 2

в конфигурации tgtd цель :target0 была связана с /dev/sdd6во время сборки. После перезагрузки вы получите тот же раздел, переименованный в /deb/sdc6. Это происходит со съемным диском, USB или eSATA! Итак, как найти новое устройство автоматически? Снова в /etc/rc.d/rc.local

Итак, в этом случае нам нужен надежный способ узнать новое имя устройства. Раздел GPT предлагает уникальный GUID для любого раздела GPT, записанный в таблице GPT.

gdisk не предоставляет эту информацию в режиме листинга, а только в интерактивном режиме с командой :i. К счастью, blkid это делает!

Итак, вам нужно написать сценарий оболочки, чтобы просмотреть все ваши диски, то есть устройство /dev/sdXX, связанное с GUID, замеченным во время создания раздела.

Что-то вроде:поиск _устройство _по _partUUID.sh:

\#!/bin/bash

PART_UUID=$1
if [ "$PART_UUID" = "" ]
then
    echo "Syntax: $0 <a valid partition UUID>"
    exit 3
fi
lsblk | grep '^sd' | awk '{print $1}' | while read DISK_DEVICE
do 
    INFO=`blkid /dev/${DISK_DEVICE}* | grep "PARTUUID=\"$PART_UUID\"" `
    if [ "$INFO" != "" ]
    then
        echo INFO : "$INFO"
        BLK_DEVICE=`echo "$INFO" | awk '{print $1}'`
        echo $BLK_DEVICE > /dev/shm/blkdevice
        echo -n "BLK_DEVICE : " ; cat /dev/shm/blkdevice
    fi
done

, а затем используйте /dev/shm/blkdeviceв сценарии rc.local.

1
27.01.2020, 19:28

В таких случаях необходимо проверить /dev/disk/by -partuuid. существуют символические ссылки, сопоставляющие PARTUUID каждого диска с его записью в /dev/sdb1 и т. д.

0
27.01.2020, 19:28

Теги

Похожие вопросы