Dd копирует UUID разделов. Смена UUID разделов при резервном копировании.

Операционная система Debian обновлена до Squeeze.
Загрузчик Grub2.

Сегодня система не запустилась  после обновления, резервного копирования и перезагрузки, рассказав об ошибках на нескольких разделах.

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

При зеркальном резервном копировании /dev/sda на /dev/sdb всех разделов командой

/bin/dd if=/dev/sda of=/dev/sdb conv=noerror,sync

вместе с данными теперь копируются и UUID (уникальные универсальные идентификаторы разделов), находящиеся в суперблоках разделов, переставая быть уникальными.

Обновленный загрузчик, игнорирует файловые имена устройств для загрузки и монтирования указанные в /etc/fstab, но вместо них использует UUID разделов, которые считает уникальными и на основании данных /etc/blkid.tab.

Естественно, вероятность правильной загрузки такой системы уменьшается обратно пропорционально количеству разделов, если UUID не уникальны.

Хороший способ восстановить систему — подсмотрев, например в /etc/fstab, или или командой blkid правильные метки правильных разделов рабочего диска,
и подменить их клоны — на резервных разделах — на уникальные, командой tune2fs

#blkid — показывает UUID разделов
#ls -l /dev/disk/by-uuid — показывает UUID активных разделов

#tune2fs /dev/sd[...] -U любой_уникальный_идентификатор — установит  новый идентификатор разделу, прописав его в суперблок самого раздела.
я установил идентификаторы резервных разделов, отличающиеся на единицу от оригинальных рабочих разделов.  (утилита из пакета e2fsprogs).

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