Как заставить grub-mkconfig работать на USB-устройстве?

Вопрос или проблема

Насколько я знаю, команды grub-mkconfig и grub-update/update-grub работают только на устройстве, на котором они установлены.

Я хочу запустить эти команды на USB-накопителе, но

  • Я не знаю, как установить их на USB
  • Я не могу заставить те, что установлены на моем компьютере, работать на USB (т.е. они должны обновить файл grub.cfg на USB)

Как я могу сделать одно из них?

Кстати, я использую Manjaro KDE

  1. Смонтируйте ваш USB в /mnt: mount /dev/your_USB /mnt
  2. mount --bind /dev /mnt/dev
  3. mount --bind /proc /mnt/proc
  4. mount --bind /sys /mnt/sys
  5. chroot /mnt
  6. Измените файлы конфигурации GRUB.
  7. grub-mkconfig

Ваш chroot нуждается в полностью рабочей оболочке bash в своем пространстве (и, вероятно, во многих других инструментах) со всеми необходимыми библиотеками. Вы можете найти их с помощью ldd, и вам нужно скопировать их в нужное место (в том же дереве, что и ваш обычный корень)

Этот учебник предоставляет некоторые подсказки по автоматизации

Ответ или решение

Как заставить grub-mkconfig работать на USB-устройстве

Вопрос о том, как использовать команды grub-mkconfig и update-grub на USB-устройстве, часто возникает у пользователей, работающих с многоразовыми загрузчиками и системами. Если вы используете Manjaro KDE и хотите обновить конфигурацию GRUB на своем USB, необходимо выполнить определенные шаги. В этой статье мы подробно рассмотрим процесс, включая установку необходимых компонентов и выполнение команд.

Шаг 1: Подготовка

  1. Подключите USB-накопитель к вашему компьютеру.
  2. Узнайте имя устройства с помощью команды:
    lsblk

    Найдите ваш USB-накопитель (например, /dev/sdb1).

Шаг 2: Монтирование USB

Теперь необходимо смонтировать ваш USB-накопитель:

sudo mount /dev/sdb1 /mnt

Шаг 3: Монтирование системных каталогов

Следующим шагом будет монтирование системных каталогов, необходимых для работы chroot:

sudo mount --bind /dev /mnt/dev
sudo mount --bind /proc /mnt/proc
sudo mount --bind /sys /mnt/sys

Шаг 4: Использование chroot

Теперь вы можете войти в окружение вашего USB-накопителя с помощью chroot:

sudo chroot /mnt

Теперь вы находитесь в среде вашего USB-накопителя, где можете устанавливать и настраивать необходимые пакеты.

Шаг 5: Установка GRUB на USB

Внутри chroot необходимо убедиться, что пакет GRUB установлен. Если он еще не установлен, выполните:

pacman -S grub

Шаг 6: Настройка GRUB

Теперь можно выполнить команды для генерации конфигурационного файла:

grub-mkconfig -o /boot/grub/grub.cfg

Эта команда создаст файл grub.cfg в каталоге /boot/grub на вашем USB-накопителе.

Шаг 7: Установка GRUB на USB (при необходимости)

Если вы хотите установить GRUB на USB-накопитель (например, для загрузки с него), выполните следующую команду внутри chroot:

grub-install --target=i386-pc /dev/sdb

Обратите внимание, что в этом примере /dev/sdb — это ваш USB-накопитель, он может отличаться в зависимости от вашей системы. Убедитесь, что вы не перезапишите основную загрузочную запись вашего жесткого диска.

Шаг 8: Выход из chroot и демонтаж

После завершения всех операций выходит из chroot и демонтируйте все смонтированные каталоги:

exit
sudo umount /mnt/dev
sudo umount /mnt/proc
sudo umount /mnt/sys
sudo umount /mnt

Заключение

Следуя этим шагам, вы сможете успешно настроить GRUB на USB-накопителе с использованием команд grub-mkconfig и grub-update. Это позволит вам создавать переносимые загрузочные системы, что особенно полезно для восстановления и использования различных дистрибутивов Linux на разных машинах. Важно помнить о необходимости правильно указывать пути и имена устройств, чтобы избежать потери данных.

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

Капча загружается...