Debian -Как установить Debian на USB-накопитель с grub на внутренний диск?

Попробуйте это:

sshing () {
  ssh -o ConnectTimeout=2 "$SERVER" "$@"
  #................................^..^ crucial quotes
}
#...
cmd="$*"
#...
while read -r SERVER; do
  say "Executing ${COMMAND} on ${SERVER}:"
  $DRYMODE $DRYRUN $SUDO sh -c "${COMMAND}" 2> /dev/null
  #.....................11111.2..........2
  # 1. run with a shell to enable redirections and pipe
  # 2. crucial quotes
  #...
done < "$SERVER_FILE"

Выполнение команды внутри оболочки с помощью sudo позволит всему конвейеру выполняться с повышенными разрешениями.

Кроме того, вы должны избавиться от привычки использовать имена переменных ALLCAPS. Однажды вы случайно перезапишете PATH, а затем удивитесь, почему ваш скрипт не работает.

0
27.06.2021, 21:20
1 ответ

Я вижу две возможные проблемы.

Простого копирования /boot/grubв раздел на внутреннем диске и установки флага загрузки для этого раздела недостаточно, чтобы сделать внутренний диск загрузочным.

Активное ядро ​​версии GRUB для BIOS обычно хранится в блоках между основной загрузочной записью и началом первого раздела диска с разделами MBR -. Эти блоки не являются частью какой-либо файловой системы или раздела и не могут быть скопированы как файлы. Они также могут включать встроенную ссылку -, которая сообщает ядру GRUB, где найти каталог /boot/grub:, в котором эта ссылка записана при выполнении grub-install.

Кроме того, BIOS может поддерживать USB-накопители во время загрузки , только если вы фактически выбрали загрузку с USB . Если ваша система специально не предлагает поддержку USB Mass Storage на уровне BIOS, когда на самом деле не загружается с USB, то, что касается любой программы, которая использует BIOS (, например GRUB ), USB Mass Storage не поддерживает существуют до тех пор, пока фактическая ОС не загрузится и не активирует свои собственные USB-драйверы. А поскольку Debian помещает файлы ядра и initramfs в каталог /boot/, они будут на USB и, следовательно, недоступны для GRUB.

Вы можете указать установщику смонтировать раздел с внутреннего диска как /boot, необязательно предварительно форматируя его, чтобы на него были просто добавлены загрузочные файлы Linux.

Или просто скопируйте содержимое существующего каталога /bootв файловую систему на внутреннем диске, смонтируйте эту файловую систему как новую /bootи запустите grub-install /dev/sda(, предполагая, что /dev/sda— это ваш внутренний диск ).

В принципе, ничто не должно мешать вам установить GRUB на USB-накопитель. Поскольку вы разрешили установщику Debian разбить USB-накопитель на разделы, ничто не должно мешать вам установить GRUB на USB-накопитель и использовать его.Если вы еще не пробовали просто выполнить обычную установку Debian на USB-накопитель, а затем изменить порядок загрузки BIOS на загрузку с USB-накопителя, попробуйте сначала, прежде чем создавать ненужные сложности.

ISOLINUX предназначен для доступа к файловым системам ISO9660 через BIOS, и это вообще не должно относиться к вашему случаю.

0
28.07.2021, 11:21

Теги

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