Что было. При каждой загрузке на экране повторяется строка running /scripts/local-block ..., число повторов растёт от загрузки к загрузке, система в итоге стартует, но ожидание доходит до минуты.
Причина. Файл /etc/initramfs-tools/conf.d/resume указывал на раздел подкачки по UUID, а сам раздел был пересоздан или удалён, и в /etc/fstab значился другой UUID. initramfs на этапе local-block циклически ждёт появления устройства для возобновления из гибернации и сдаётся только по таймауту. Автор привёл UUID в трёх местах к одному значению, выполнил update-initramfs -u и update-grub; загрузка стала чистой. Подтверждено.
Три файла, которые должны совпадать (если подкачка вообще используется для гибернации):
/etc/fstab: строка swap с актуальным UUID (blkidпокажет реальный)./etc/initramfs-tools/conf.d/resume:RESUME=UUID=<тот же>либоRESUME=none, если гибернация не нужна (для серверов и виртуальных машин это правильный вариант)./etc/default/grub: параметрresume=UUID=…вGRUB_CMDLINE_LINUX, если он там есть; иначе убрать.
После правок:update-initramfs -u -k all && update-grub.
Тот же класс проблем на серверах и виртуальных машинах.
- «Gave up waiting for root device» и падение в
(initramfs): неверный UUID корня вfstab/grubпосле клонирования диска, замены хранилища или переразметки. Из initramfs:blkid, затем загрузка с параметромroot=UUID=<верный>в GRUB (клавишаe) и исправление файлов после входа. - Долгая пауза «A start job is running for dev-disk-by\x2duuid-…» уже в systemd: запись в
fstabдля диска, которого нет. Добавитьnofailиx-systemd.device-timeout=10sк внешним и временным дискам либо убрать строку. - Файл подкачки вместо раздела:
resumeдолжен бытьnone, иначе то же ожидание.
Как проверить быстро.
blkid # реальные UUID
grep -v '^#' /etc/fstab
cat /etc/initramfs-tools/conf.d/resume
grep -E 'resume|root=' /etc/default/grub /boot/grub/grub.cfg | head
journalctl -b -p warning | grep -iE 'swap|resume|timed out'
На виртуальных машинах после смены типа диска или контроллера имена /dev/sdX меняются, UUID нет; поэтому в fstab только UUID или метки, никаких /dev/sda1.
Инструменты initramfs описаны в документации Ubuntu.