Во время установки новой системы на новый компьютер – grub-mkconfig
зависает при создании файла конфигурации GRUB.
Нет ни ошибок, ни предупреждений.
Решение нагуглилось тут>>>, запишу его и себе.
Сама ошибка выглядит так:
[simterm]
[root@archiso boot]# grub-mkconfig -o /boot/grub/grub.cfg ^C
[/simterm]
Прерываем по Ctrl+C.
Проверяем скрипт /usr/bin/grub-mkconfig
– находим все редиректы 2>
(stderror) в /dev/null
:
[simterm]
[root@archiso boot]# cat /usr/bin/grub-mkconfig | grep null case "`uname 2>/dev/null`" in for g in `id -G 2>/dev/null` ; do GRUB_DEVICE_UUID="`${grub_probe} --device ${GRUB_DEVICE} --target=fs_uuid 2> /dev/null`" || true GRUB_DEVICE_BOOT_UUID="`${grub_probe} --device ${GRUB_DEVICE_BOOT} --target=fs_uuid 2> /dev/null`" || true GRUB_FS="`${grub_probe} --device ${GRUB_DEVICE} --target=fs 2> /dev/null || echo unknown`"
[/simterm]
Редактируем скрипт, и удаляем 2> /dev/null
из следующих строк, что бы вывести ошибки на консоль:
GRUB_DEVICE_UUID="`${grub_probe} --device ${GRUB_DEVICE} --target=fs_uuid 2> /dev/null`" || true GRUB_DEVICE_BOOT_UUID="`${grub_probe} --device ${GRUB_DEVICE_BOOT} --target=fs_uuid 2> /dev/null`" || true GRUB_FS="`${grub_probe} --device ${GRUB_DEVICE} --target=fs 2> /dev/null || echo unknown`"
Запускаем grub-mkconfig
ещё раз:
[simterm]
[root@archiso boot]# grub-mkconfig -o /boot/grub/grub.cfg WARNING: Failed to connect to lvmetad. Falling back to device scanning. WARNING: Device /dev/loop0 not initialized in udev database even after waiting 10000000 microseconds. WARNING: Device /dev/sda not initialized in udev database even after waiting 10000000 microseconds. WARNING: Device /dev/vg_arch/root not initialized in udev database even after waiting 10000000 microseconds. WARNING: Device /dev/vg_arch/home not initialized in udev database even after waiting 10000000 microseconds. WARNING: Device /dev/sdb not initialized in udev database even after waiting 10000000 microseconds. WARNING: Device /dev/sdb1 not initialized in udev database even after waiting 10000000 microseconds. WARNING: Device /dev/sdb2 not initialized in udev database even after waiting 10000000 microseconds. WARNING: Device /dev/sdb3 not initialized in udev database even after waiting 10000000 microseconds. WARNING: Device /dev/sdb4 not initialized in udev database even after waiting 10000000 microseconds. WARNING: Device /dev/sdc not initialized in udev database even after waiting 10000000 microseconds. WARNING: Device /dev/sdc1 not initialized in udev database even after waiting 10000000 microseconds. WARNING: Device /dev/sdc2 not initialized in udev database even after waiting 10000000 microseconds. WARNING: Device /dev/loop0 not initialized in udev database even after waiting 10000000 microseconds. WARNING: Device /dev/vg_arch/root not initialized in udev database even after waiting 10000000 microseconds. ^C
[/simterm]
Решение
Выходим из chroot-окружения по Ctrl+D, создаём каталог /mnt/hostlvm
и монтируем /run/lvm
с хоста в этот каталог:
[simterm]
[root@archiso ~]# mkdir /mnt/hostlvm [root@archiso ~]# mount --bind /run/lvm /mnt/hostlvm
[/simterm]
Возвращаемся в устанавливаемую систему, создаём там симлинк:
[simterm]
[root@archiso ~]# arch-chroot /mnt [root@archiso /]# ln -s /hostlvm /run/lvm
[/simterm]
И запускаем grub-mkconfig
ещё раз:
[simterm]
[root@archiso /]# grub-mkconfig -o /boot/grub/grub.cfg Generating grub configuration file ... Found linux image: /boot/vmlinuz-linux Found initrd image: /boot/initramfs-linux.img Found fallback initrd image(s) in /boot: initramfs-linux-fallback.img done
[/simterm]
Готово.