Переместить /загрузить на USB Fedora

В дополнение к проверке того, соответствует ли путь доступному каталогу, исполняемый файл cdбудет обрабатывать и использовать переменную CDPATHи распечатывать абсолютный путь разрешенного каталога, если он был успешно использован.

$ export CDPATH=/usr
$ echo bin lib | xargs -n 1 cd
/usr/bin
/usr/lib

Это полезно только в очень редких случаях, но избавит от повторной реализации той же логики для поиска совпадающих каталогов. Конкретным вариантом использования является поиск первого существующего каталога с определенным именем среди нескольких возможных родителей.

cdтакже обрабатывает OLDPWDдля cd -, но это менее полезно, так как переменная окружения уже была бы доступна.

0
21.09.2021, 21:16
2 ответа

Подводя итог :вы хотите поместить загрузчик на поддержку USB, чтобы сделать его необходимым для запуска вашей Linux-системы И В ТО ЖЕ ВРЕМЯ сделать возможным запуск вашей системы Windows без USB-диска, содержащего загрузчик. Это НЕВОЗМОЖНО сделать. Действительно, это загрузчик, который загрузит систему GNU Linux И систему MS Windows. Если нет загрузчика, вы не загрузите ОС MS Windows

-1
22.09.2021, 07:43

Поскольку (в соответствии с комментариями )у вас есть система UEFI, миграция только загрузчика может быть довольно простой.

Отформатируйте USB-диск в файловой системе FAT32. Если он смонтирован, например. /media/usbdisk, создайте каталог /media/usbdisk/EFI. Затем скопируйте все содержимое каталога /boot/efi/EFI/fedoraв/media/usbdisk/EFI:

cp -r /boot/efi/EFI/fedora /media/usbdisk/EFI/

Сделайте вторую копию каталога fedoraкак bootи в нем переименуйте shim.efiвbootx64.efi:

cd /media/usbdisk/EFI
cp -r fedora boot
cd boot
mv shim.efi bootx64.efi

Теперь ваш USB-диск должен быть способен загрузить установку Linux на -диске! На этом этапе вы можете протестировать его. Если это работает, вы можете изменить свой /etc/fstab, чтобы смонтировать USB-диск как /boot/efiвместо существующего системного раздела EFI.

Остается одна возможная проблема, хотя :всякий раз, когда вы устанавливаете новый пакет ядра, менеджер пакетов обновляет конфигурацию загрузчика (на USB-диске )в /boot/efi/EFI/fedora/grub.cfg, но файл конфигурации, фактически используемый в время загрузки, вероятно, будет /boot/efi/EFI/boot/grub.cfg. Если выяснится, что у вас есть эта проблема, вы можете заменить /boot/efi/EFI/boot/grub.cfg«фиктивным» файлом конфигурации, который состоит всего из одной строки :

.
configfile /EFI/fedora/grub.cfg

Результирующая последовательность событий при загрузке будет:

  1. прошивка загружается с USB в режиме UEFI с использованием стандартного съемного носителя UEFI/пути резервной загрузки:/EFI/boot/bootx64.efi(относительно корня файловой системы USB-диска)
  2. bootx64.efiна самом деле shim.efi, который обрабатывает проблемы с безопасной загрузкой, а затем запускает grubx64.efiв том же каталоге
  3. grubx64.efiчитает манекен grub.cfgв том же каталоге. configfile /EFI/fedora/grub.cfgсообщает ему, что вместо этого следует читать фактический файл конфигурации из каталога /EFI/fedoraна USB-накопителе.
  4. grubx64.efiчитает фактический файл конфигурации GRUB. Поскольку используется оболочка безопасной загрузки, grubx64.efiдолжна быть полностью автономной -версией, поэтому все необходимые модули GRUB будут встроены -.Таким образом, он может использовать ту же конфигурацию, что и установленная версия SSD -, для загрузки файлов ядра и initramfs, где бы они ни находились на SSD (, зашифрованы они или нет ).
  5. grubx64.efiзагружает ядро ​​Fedora и initramfs, и работа загрузчика выполнена.
  6. При запуске Fedora монтирует USB-диск как /boot/efiв соответствии с /etc/fstab, поэтому любые будущие обновления ядра будут автоматически обновлять /boot/efi/EFI/fedora/grub.cfgна USB-диске.

Если у вас есть отдельный раздел /bootи вы специально хотите переместить его на USB-диск, вам понадобятся два раздела на USB-диске :один раздел FAT32 (, который будет смонтирован как/boot/efi)и один раздел Linux (для монтирования как /boot). В этом случае та же конфигурация GRUB, что и в случае загрузки SSD -, больше не будет работать; однако, если вы настроите все остальное перед запуском grub2-mkconfig, он все равно сможет создать для вас подходящий файл конфигурации.

1
22.09.2021, 11:52

Теги

Похожие вопросы