2011-10-23 14:14:34 +0000 2011-10-23 14:14:34 +0000
52
52

Загрузка с USB с помощью GRUB

Ноутбук моего друга попал в аварию (он в порядке!). Однако ноутбук очень старый, его Acer Aspire 1520 дисковод CD-rom сломан, и нет дискеты.

я сделал ему USB-бутик, прежде чем взглянуть на него и обнаружил, что его BIOS не может загрузиться с USB. У меня есть только only консоль GRUB, но он хочет просто установить XP (на USB) и использовать его только для фильмов.

Возможно ли с помощью консоли GRUB получить доступ к USB и начать установку windows? Это высокий порядок, но я думаю, что это может быть способ, или попытка установки по локальной сети, что я не думаю, что это будет достижимо.

Ответы (6)

45
45
45
2014-09-13 03:30:00 +0000

Ниже приведен краткий пример команд grub, которые могут просто работать, объяснения и предостережения.

grub2

Скорее всего, для установки после 2010 года.

set root=(hd1,1)
chainloader +1
boot

grub

Скорее всего, для установки до 2005 года.

root (hd1,0)
chainloader +1
boot

В период 2005-2010 ваши догадки не хуже моих, но если вы используете команду не для той версии, вы получите безобидную синтаксическую ошибку только в первой команде.

Выбор правильного корня

При запуске grub прощупывает ваши устройства и присваивает им номера. Всем устройствам, которые разбиты на разделы (жесткие диски и флэш-накопители), также будут присвоены номера. Формат (<deviceName>,<partitionIndex>). В формате grub2 индексы разделов изменились, поэтому два вышеприведенных примера имеют один и тот же эффект, несмотря на то, что ищут разные корни.

Ваше первое устройство (hd0) - это то, с какого только что загруженного устройства. После этого вы обычно предполагаете, что все внутренние устройства будут загружены перед внешними устройствами. Скорее всего, они будут в виде hd и числа.

После запятой будет индекс раздела. Жесткие диски и флешки почти всегда будут разбиты на разделы, поэтому вы должны выбрать правильный (и, скорее всего, только) раздел. CD-ROM обычно не разбиты на разделы.

Больше документации: _COPY2_node/Device-syntax.html

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

14
14
14
2011-10-24 16:34:02 +0000

Чтобы подробнее рассказать о комментарии Нового 123456:

USB-устройство должно быть обнаружено как устройство хранения данных и обработано как жесткий диск. Поэтому в grub введите root (hd (пока не нажимайте Enter), а затем нажмите на вкладку один или два раза, чтобы посмотреть, какие жесткие диски может видеть Grub. USB-устройство, если оно распознано, скорее всего, будет hd1. Не указывайте номер раздела, просто добавьте закрывающую скобку. Таким образом, строка будет root (hd1). После этого введите следующее:

chainloader +1
boot

Если это не сработает, измените root (hd1) на root (hd1,0) и попробуйте еще раз.

Если по какой-то причине Grub не видит USB-привода, попробуйте подключить USB-диск и загрузиться с него.

8
8
8
2014-09-21 20:04:18 +0000

Штука chainloader +1 может не работать, если BIOS плохо загружается с USB-носителя (именно поэтому я все равно хотел использовать Grub).

В этом случае есть некоторая глубокая магия на https://help.ubuntu.com/community/Grub2/ISOBoot , которая работает, по крайней мере, для Ubuntu. Решающий бит - это слизняк с командой grub, которая идентифицирует файл vmlinuz, передавая аргумент iso-scan/filename. Каким-то образом это помогает понять, что вся загрузочная файловая система застряла в ISO файле. Я не знаю, как, черт возьми, это работает, но это так. Это (приблизительно) команды Grub 2, которые я использовал:

loopback loop (fd0,msdos1)/path/to/iso/file
linux (loop)/casper/vmlinuz boot=casper iso-scan/filename=/path/to/iso/file noprompt noeject
initrd (loop)/casper/initrd.lz
boot

/path/to/iso/file должны быть пути к ISO-файлу на USB-носителе. (fd0,msdos1) идентифицирует USB-носитель. Заполнение табуляции супер-полезно в строке loopback, и не полезно для аргументов к vmlinuz.

2
2
2
2015-05-08 14:44:49 +0000

Это не будет ужасно полезным в случае вашего друга (если нет способа я не знаю, чтобы получить plop на устройстве в первую очередь - может быть, USB cd-rom, или USB дискеты?), но это потрясающий маленькое приложение, которое помогло мне установить ряд старых машин, чтобы загрузиться из usbs, когда их bios не позволило бы этого. Plop Boot Manager

1
1
1
2020-02-13 00:41:30 +0000

Я собирался оставить это в качестве комментария к посту @Ekevoo или @Jonathan, но мне это не разрешено, так что вот мой вариант использования+решение для любого, кто также может столкнуться с этим:

USB содержал установку GPart Live CD, но мой BIOS почему-то не загружался с него, несмотря на то, что он работал раньше (в предыдущий раз он работал, когда я устанавливал CD через windows, в этот раз я делал это через Ubuntu). В Grub я выполнил следующие команды, и он работал

set root=(hd0)

Это может быть по-разному для разных устройств, я не уверен, что это вообще необходимо.

Затем я выполнил

chainloader (hd0)/EFI/BOOT/grubx64.efi
boot

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

И этого было достаточно, чтобы он заработал.

0
0
0
2014-06-27 01:17:34 +0000

Вы не можете загрузиться с USB в grub, если bios не позволяет это само. Однажды мне пришлось установить что-то вроде раздела восстановления на жёстком диске, содержащего содержимое установочного диска win7, установить grub, а затем использовать его для загрузки установочного раздела win7, чтобы установить его на остальную часть жёсткого диска.

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

6
10
5
37
6