Изменить uuid диска linux
Оригинал: Introduction to UUIDs
Автор: Paul Cobbaut
Дата публикации: 12 марта 2015 г.
Перевод: A. Панин
Дата перевода: 30 марта 2015 г.
Изменение UUID в Linux
В зависимости от типа файловой системы у нас есть несколько инструментов для изменения UUID. Для изменения UUID потребуется использовать утилиты Linux, такие как tune2fs (для ext2 или ext3 или ext3), xfs_admin (для xfs), btrfstune (для btrfs).
В этом примере я буду использовать tune2fs и изменю UUID disk /dev/sdb.
Для начала я узнаю UUID. Существует несколько способов проверить UUID запоминающего устройства. Мы будем использовать команду blkid для поиска UUID.
Сначала найдите UUID диска, введите:
Чтобы изменить UUID файловой системы, вам нужно размонтировать ее.
Раздел /dev/sdb монтируется в /mnt/data. Чтобы размонтировать, введите:
Как только устройство размонтировано, используйте команду tune2fs, с параметром -U. Это сгенерирует случайный UUID.
Ответ терминала:
tune2fs 1.45.5 (07-Jan-2020) Setting the UUID on this filesystem could take some time. Proceed anyway (or wait 5 seconds to proceed) ? (y,N) y
После изменения UUID требуется выполнить следующую команду для проверки изменений.
Ответ терминала Linux:
dev/sdb: UUID="af406bcd-cddb-4095-8456-fdf8dfe37665" TYPE="ext4"
После изменения существующего UUID обязательно обновите все ссылки на старые метки в файле /etc/fstab.
$ vi /etc/fstab
UUID="af406bcd-cddb-4095-8456-fdf8dfe37665" /mnt/data ext4 по умолчанию 0 2
Теперь смонтируйте размонтированную файловую систему обратно.
Как ядро Linux работает с жесткими дисками?
Как человек, мы можем легко понять разные вещи, но компьютер нуждается в правильном преобразовании имен, чтобы понять все и вся.
В Linux устройства расположены в разделе /dev, и ядро понимает жесткий диск в следующем формате.
/dev/hdX[a-z]: IDE-диск с именем hdX в Linux
/dev/sdX[a-z]: SCSI-диск с именем sdX в Linux
/dev/xdX[a-z]: XT-диск с именем xdX в Linux
/dev/vdX[a-z]: виртуальный жесткий диск с именем vdX в Linux
/dev/fdN: гибкий диск с именем fdN в Linux
/dev/scdN or /dev/srN: CD-ROM с именем /dev/scdN или /dev/srN в Linux
Заключение
Вот и все. В этой которой статье подробно расписано, как изменить UUID в Linux с помощью команды tune2fs.
Если вы используете много дисков, которые регулярно изменяются или перемещаются, предпочтительнее монтировать раздел с помощью UUID. Это связано с тем, что ОС Linux может изменять имена устройств в некоторых ситуациях, например при добавлении другого диска. Это может закончиться проблемами с загрузкой диска или разделом. UUID уникален и не зависит от реальных имен устройств.
В этой статье мы покажем, как монтировать разделы с помощью UUID в системе Linux.
9.3. Утилита uuid
Возможности утилиты uuid , являющейся инструментом для генерации идентификаторов UUID, подробно описаны на странице руководства.
Глава 9. Знакомство с идентификаторами UUID
Идентификатор UUID (Universally Unique Identifier) используется для уникальной идентификации объектов. В соответствии со стандартом, длина идентификатора равна 128 битам, что позволяет любому пользователю без лишних сложностей создавать уникальные идентификаторы UUID .
В данной главе приводится краткий обзор идентификаторов UUID .
9.4. Идентификаторы UUID в файле /dev/fstab
Вы можете использовать идентификаторы UUID для универсальной уникальной идентификации разделов жестких дисков в рамках файла /etc/fstab . Имя файла устройства может меняться в зависимости от количества дисковых устройств, подключенных к системе в процессе ее загрузки, но идентификаторы UUID устройств не изменятся ни при каких обстоятельствах.
В первую очередь мы должны использовать утилиту tune2fs для того, чтобы выяснить идентификатор UUID раздела жесткого диска.
После этого следует убедиться в том, что данный идентификатор корректно используется в файле /etc/fstab , заменяя собой непостоянное имя файла устройства, представляющего раздел жесткого диска.
Теперь мы можем смонтировать файловую систему с интересующего нас раздела жесткого диска в точку монтирования, объявленную в файле /etc/fstab .
Реальная же проверка должна заключаться в отключении от системы диска, представленного файлом устройства /dev/sdb , перезагрузке системы и проверке результата. После загрузки диск, который ранее был представлен с помощью файла устройства /dev/sdc , будет представлен с помощью файла устройства /dev/sdb .
Но благодаря использованию идентификаторов UUID в файле /etc/fstab , в объявленную точку монтирования будет смонтирована файловая система с раздела того же диска, что и ранее.
Как вывести список доступных действий для команды fdisk?
Если вы нажмете m в команде fdisk, вы увидите доступные действия.
Как делается клон
Сделать это просто: сначала нужно создать раздел такого же размера, как и образец. Как это сделать, зависит от ваших навыков и вашего дистрибутива. Программы Gparted и Fdisk доступны каждому. Раздел можно даже не форматировать, так как он будет полностью переписан.
Затем клонируем систему в новый раздел:
(bs=10M ≈ это величина блока (в данном случае ≈ 10 мегабайт), которыми будет происходить копирование на уровне секторов диска. Чем больше блок, тем быстрее копируется, но и меру нужно знать).
Полученный клон является побайтовой копией оригинала, поэтому он имеет ту же файловую систему со всеми своими суперблоками на тех же местах. Дублируется также и нулевой сектор, недоступный при обычном копировании. Кроме того, при копировании командой cp данные записываются на свободное место, а при клонировании ≈ на то же самое, что и в оригинале. Это приводит к тому, что оригинал и клон имеют абсолютно идентичные файловые системы, одинаковые UUID'ы и метки тома.
Так как мы собираемся пользоваться обеими копиями одновременно, то наличие у них одинаковых UUID'ов и меток (LABEL), неудобно в работе, так как приводит к путанице. Почему и нужно изменить UUID клона и дать ему новую метку.
Как создать расширенный раздел диска с помощью команды fdisk
Обратите внимание, что вы должны использовать все оставшееся пространство при создании расширенного раздела, потому что вы затем можете создать в нем несколько логических разделов.
Как просмотреть нераспределенное дисковое пространство с помощью команды fdisk
Как описано в предыдущем разделе, мы полностью создали 4 раздела (3 основных и 1 расширенный). Дисковое пространство расширенного раздела будет отображаться как неразмеченное, пока вы не создадите в нем логические разделы.
Используйте приведенную ниже команду для просмотра неразмеченного пространства для диска. В соответствии с приведенным ниже выводом у нас есть 7ГБ неразмеченного диска.
9.1. Об уникальных объектах
В составе устаревших версий дистрибутивов Linux поставлялась утилита vol_id , которая предназначалась для вывода идентификатора UUID указанной файловой системы.
В дистрибутиве RedHat Enterprise Linux 5 утилита vol_id была размещена по пути /lib/udev/vol_id , причем путь к директории с данной утилитой не добавлялся в список директорий для поиска бинарных файлов, являющийся значением переменной окружения $PATH. Синтаксис данной утилиты также немного отличался от синтаксиса аналогичной утилиты из состава дистрибутивов Debian/Ubuntu/Mint.
Данная утилита не доступна после стандартной установки дистрибутивов RHEL 6 и Debian 6.
Как создать логический раздел с помощью команды fdisk
Выполните ту же процедуру, описанную выше, чтобы создать логический раздел после создания расширенного раздела. Здесь я создал логический раздел размером 1 ГБ с именем /dev/sdc5, вы можете убедиться в этом, проверив значение таблицы разделов.
9.2. Утилита tune2fs
Для определения идентификатора UUID файловой системы следует использовать утилиту tune2fs .
Как удалить раздел с помощью команды fdisk
Если раздел больше не используется в системе, мы можем удалить его, используя следующие шаги.
Убедитесь, что вы будете вводить правильный номер раздела, чтобы удалить его. В данном случае я собираюсь удалить раздел /dev/sdc2.
Как вывести список доступных дисков с помощью команды fdisk
Сначала мы должны узнать, какие диски были добавлены в систему, прежде чем выполнять какие-либо действия. Для просмотра списка всех доступных дисков в вашей системе выполните приведенную ниже команду. Она выведет возможные сведения о дисках, такие как имя диска, количество разделов на нем, размер диска, тип метки диска, идентификатор диска, идентификатор раздела и тип раздела.
Как монтировать разделы с помощью UUID в Linux
Первое, найдите UUID раздела устройства, который будет смонтирован. Вы можете использовать следующую команду, чтобы найти UUID разделов.
Ответ в терминале:
Или введите команду для показа UUID определенного раздела:
После того, как UUID найден в системе Linux, смонтируйте раздел в fstab-файле.
Если установочный каталог есть, то используйте его. А если его нет, то создайте новый каталог (/var/www используется в данном примере) для монтирования раздела.
Откройте файл /etc/fstab с помощью вашего любимого текстового редактора. Я использую текстовый редактор Vi.
Затем добавьте следующую строку в конце файла.
UUID=af406bcd-cddb-4095-8456-fdf8dfe37665 /var/www ext4 defaults 0 0
Запустите mount -a, для того чтоб смонтировать всю файловую систему. Или выполните команду перезагрузки, чтобы отразить изменения.
После монтирования выполните следующую команду, чтобы проверить, правильно ли смонтирован раздел.
Как отформатировать раздел или создать файловую систему на разделе
Файловая система контролирует, как хранятся и извлекаются данные через таблицы inode.
Без файловой системы система не может найти, где хранится информация на разделе. Файловая система может быть создана тремя способами. Здесь я собираюсь создать файловую систему в разделе /dev/sdc1.
Когда вы создаете файловую систему на этом разделе, это даст вам следующие важные вещи.
Как установить fdisk в Linux
Вам не нужно устанавливать fdisk в системе Linux, потому что он установлен по умолчанию как часть утилит core.
Как смонтировать раздел в Linux
После того, как вы создали раздел и файловую систему, нам нужно смонтировать раздел для использования.
Для этого нам нужно создать точку монтирования для монтирования раздела. Используйте команду mkdir для создания точки монтирования.
Для временного монтирования используйте приведенную ниже команду. Эта точка монтирования не сохранится после перезагрузки вашей системы.
Для постоянного монтирования добавьте информацию о разделе в файл fstab. Это можно сделать двумя способами: добавить имя устройства или значение UUID.
Постоянное монтирование с использованием имени устройства:
Постоянное монтирование с использованием значения UUID. Чтобы получить UUID раздела, используйте команду blkid.
Для подключения устройств и хранения данных необходимо использовать UUID. Особенно если система использует много дисков, которые регулярно переключаются или перемещаются. UUID интегрирован с файловой системой и помогает однозначно идентифицировать диски.
UUID обычно изменяется при форматировании или повторном разделении диска, а так же когда файловая система по какой-то причине пострадала.
В этой статье показано, как изменить UUID диска в Linux.
Как создать раздел на диске с помощью команды fdisk
Если вы хотите создать новый раздел, выполните следующие действия. В моем случае я собираюсь создать 4 раздела (3 основных и 1 расширенный) на диске /dev/sdc.
Поскольку он принимает значение из таблицы разделов, нажмите Enter для первого сектора. Введите размер, который вы хотите установить для раздела (мы можем добавить размер раздела, используя КБ, МБ, ГБ и ТБ) для последнего сектора.
Например, если вы хотите добавить раздел размером 1 ГБ, последним значением сектора должно быть + 1G. Как только вы создали 3 раздела, fdisk автоматически изменит тип раздела на расширенный по умолчанию. Если вы все еще хотите создать четвертый первичный раздел, тогда нажмите p вместо значения по умолчанию e.
Изменение UUID раздела
UUID (Universally Unique IDentifier ≈ Универсальный Уникальный ИДентификатор) дается разделу автоматически при его форматировании. UUID записан в суперблоках файловой системы.
Чтобы узнать UUID'ы всех разделов вашей системы нужно применить команду:
Такой синтаксис команды предпочтителен. Подробное объяснение в статье "Как узнать UUID'ы разделов?", там же описаны другие команды для этой цели.
Хотя теоретически можно самостоятельно придумать новый UUID, рекомендуется пользоваться командой uuid ≈ генератором UUID'ов. Если у вас нет этой команды, то нужно установить пакет uuid (или соответствующий ему в вашей системе) привычным вам способом. Команда без лишних слов генерирует новый UUID при каждом запуске.
Поскольку UUID есть атрибут файловой системы, то для его изменения применяется команда tune2fs, служащая для настройки файловых систем ext2, ext3, ext4.
Проверим, что получилось:
Отлично! Теперь займемся меткой тома.
Как вывести список определенных разделов диска с помощью команды fdisk
Если вы хотите увидеть определенный диск и его разделы, используйте следующий формат команды:
Что такое fdisk?
fdisk обозначает "fixed disk" или "format disk". Это утилита командной строки, которая позволяет пользователям выполнять различные действия с дисками. Она позволяет нам просматривать, создавать, изменять размеры, удалять, перемещать и копировать разделы.
Она понимает таблицы разделов MBR, Sun, SGI и BSD, не понимает таблицу разделов GUID (GPT) и не предназначена для больших разделов.
fdisk позволяет нам создать максимум четыре основных раздела на диск. Один из них может быть расширенным разделом, и он может содержать несколько логических разделов.
1-4 зарезервировано для четырех основных разделов, а логические разделы начинаются с 5.
9.5. Идентификаторы UUID для загрузочных устройств
Современные дистрибутивы Linux (Debian, Ubuntu, ) используют системный загрузчик grub и идентификаторы UUID для идентификации разделов жестких дисков с корневыми файловыми системами.
В данном примере показано, как имя файла устройства раздела с корневой файловой системой из директивы root=/dev/sda1 может быть заменено на идентификатор UUID этого же раздела.
Пример выше содержит всего четыре строки. Строка, начинающаяся с директивы "root idp1384618412">9.6. Практическое задание: идентификаторы UUID и файловые системы
1. С помощью утилиты tune2fs определите идентификатор UUID одного из разделов вашего жесткого диска с файловой системой ext3 (также используйте утилиту vol_id в том случае, если вы работаете с дистрибутивом RHEL5).
2. Используйте полученный идентификатор UUID в файле /etc/fstab и проверьте его работоспособность с помощью утилиты mount .
3 (дополнительное задание). Также проверьте работоспособность полученного идентификатора, отключив от системы один из жестких дисков (с целью изменения имен файлов устройств, представляющих жесткие диски). Вы можете изменить настройки vmware/Virtualbox для отключения жесткого диска.
4. Найдите директиву "root idp1384623980">9.7. Корректная процедура выполнения практического задания: идентификаторы UUID и файловые системы
1. С помощью утилиты tune2fs определите идентификатор UUID одного из разделов вашего жесткого диска с файловой системой ext3 (также используйте утилиту vol_id в том случае, если вы работаете с дистрибутивом RHEL5).
2. Используйте полученный идентификатор UUID в файле /etc/fstab и проверьте его работоспособность с помощью утилиты mount .
3 (дополнительное задание). Также проверьте работоспособность полученного идентификатора, отключив от системы один из жестких дисков (с целью изменения имен файлов устройств, представляющих жесткие диски). Вы можете изменить настройки vmware/Virtualbox для отключения жесткого диска.
Если вы много экспериментируете со своей системой Linux, постоянно пробуете всякие новые программы, частый гость в репозиториях testing и Sid, пробуете удалить GRUB2 и поставить Grub Legacy и т.д. и т.п., то у вас, без сомнения, есть запасной клон вашей системы, спрятанный где-нибудь в надежном месте. О изготовлении таких клонов я писал в конце 2010 года.
Но, если вы "убили" систему, а клон еще не занял ее место, вы, лишенные привычного рабочего окружения, некоторое время испытываете определенные неудобства. Поэтому предлагаю для экспериментов иметь клон вашей системы в соседнем разделе того же диска.
Все эксперименты сначала проводятся на клоне ≈ подопытном кролике, и в случае удачи переносятся в основной вариант системы.
Как вывести список типов разделов с помощью команды fdisk
Если вы нажмете l в команде fdisk, она покажет вам доступные типы разделов.
Заключение
В этой статье мы показали, как смонтировать раздел в Linux с помощью UUID. Кроме того, рассказали почему лучше использовать UUID и как найти UUID разделов.
Как изменить метку тома
Для чего вообще нужна метка тома? Дело в том, что в современных операционных системах все определение и монтаж / демонтаж разделов происходит автоматически при помощи udev и HAL. Если раздел не имеет метки тома, то он будет примонтирован как безликий /media/disk . А если разделов много, то разобраться где какой disk можно только "методом тыка". Другое дело, если раздел имеет LABEL (метку тома). В этом случае он и будет примонтирован под понятным вам именем. Кроме того, метку тома можно прописывать, как и UUID, в /etc/fstab и прочих конфигурационных файлах. Это даже удобнее, чем UUID'ы, так как сразу видно, что это за раздел.
Узнать, какой раздел кроется за данной меткой тома, можно при помощи команды:
Если вы часто удаляете / создаете разделы, то их имена (/dev/sdxx) могут измениться, зато UUID и LABEL останутся неизменными и никакой путаницы в конфигах не произойдет.
Итак, два раздела с одинаковой меткой тома ≈ это нонсенс! Давайте менять метку. Для этого применяется команда e2label. Она не входит в стандартный набор команд, поэтому скорее устанавливайте одноименный пакет. Пользоваться ей просто ≈ пишем имя раздела и за ним новый LABEL:
Теперь наш основной рабочий раздел (/dev/sda7 "squeeze") и его клон (/dev/sda8 "clone") имеют свои уникальные UUID'ы и понятные метки тома.
Оригинал: fdisk – Easy way to manage disk partitions in Linux
Автор: Magesh Maruthamuthu
Дата публикации: 28 января 2019 года
Перевод: А. Кривошей
Дата перевода: ноябрь 2019 г.
Жесткие диски можно разделить на один или несколько логических дисков, называемых разделами. Это разделение описано в таблице разделов (MBR или GPT) в секторе 0 диска.
Linux нужен как минимум один раздел, а именно для его корневой файловой системы, и мы не можем установить Linux на диск без разделов.
После создания раздел должен быть отформатирован в соответствующей файловой системе, прежде чем в него можно будет записывать файлы. Нам понадобится какая-нибудь утилита для выполнения этого действия в Linux.
Для этого в Linux доступно множество утилит. Мы писали о Parted Command в прошлом, и сегодня мы будем обсуждать fdisk. Команда fdisk является одним из лучших инструментов для управления разделами диска в Linux. Она поддерживает диски максимум 2 ТБ, и все предпочитают использовать fdisk.
Эта утилита используется большим количеством администраторов Linux, потому что мы практически не используем более 2 ТБ сегодня из-за LVM и SAN. Она используется в большей части инфраструктуры Linux по всему миру. Тем не менее, если вы хотите создать большие разделы, например, более 2 ТБ, вам нужно использовать команду Parted или команду cfdisk.
Создание разделов диска и файловых систем - одна из рутинных задач администратора Linux. Если вы работаете в большой компании, вам придется выполнять эту задачу несколько раз в день.
Читайте также: