Linux на внешнем диске / UEFI

Linux на внешнем диске / UEFI

Я застрял на проблеме: я хочу сделать свой внешний USB3 HDD самозагрузочным. Сейчас я должен пройти через вариант загрузки UEFI.

Объяснение моей настройки:

  • У меня ноутбук Asus на базе Win8 с UEFI.
  • Я установил Debian на внешний жесткий диск на зашифрованном разделе.
  • Я хочу сохранить Win8 на жестком диске ноутбука и загружать систему с внешнего жесткого диска, когда захочу (поэтому не трогайте UEFI)

Теперь в настройках UEFI у меня есть два варианта:

  • Дебиан
  • Окна

Пока все в порядке. Но я не могу загрузить Debian напрямую с USB, похоже, мне придется использовать «загрузчик» из /dev/sda, а это раздражает для жесткого диска nomad. Мне придется использовать загрузку UEFI, которая идет в /sdb/boot, где установлен grub.

В Debian я вижу каталог /dev/boot/efi, он смонтирован и расположен на /dev/sda1.

Я попытался создать MBR для внешнего жесткого диска с помощью install-mbr: безуспешно.

Кто-нибудь знает, как сделать мой HDD самозагружаемым? Как мне избавиться от опции загрузки UEFI и загрузиться с другого компьютера? Я что-то упустил во время установки?

Заранее благодарю за ваши ответы.

Ваше здоровье

решение1

Если вы хотите, чтобы диск загружался на произвольных компьютерах, у вас есть два варианта:

  • Выполните установку в режиме BIOS, поместив загрузчик режима BIOS в MBR диска. Это будет работать наиболее надежно, если вы также разобьете диск с помощью системы разбиения MBR. Проблема в том, что вам почти наверняка придется использовать встроенный менеджер загрузки целевого компьютера для загрузки с этого диска, и сделать это в режиме BIOS. Вам может потребоваться настроить параметры прошивки для включения загрузки в режиме BIOS (также известного как режим CSM или режим legacy), а также вам может потребоваться отключить Secure Boot.
  • Установите загрузчик в режиме EFI на системный раздел EFI (ESP) внешнего диска, но измените его с имени, которое дала ему ОС, на EFI/BOOT/bootx64.efi. Это резервное имя файла, и большинство EFI предоставят вам возможность загрузиться с этого файла, если он будет найден; однако вам, вероятно, все равно придется войти в собственный менеджер загрузки прошивки, чтобы загрузиться с диска. Кроме того, если целевой компьютер использует Secure Boot, вам нужно будет либо отключить его, либо установить программу shim или PreLoader на внешний диск как EFI/BOOT/bootx64.efi(изменяя имя GRUB или любого другого загрузчика, который вы используете, на grubx64.efiили loader.efi, в зависимости от того, используете ли вы shim или PreLoader). Использование shim или PreLoader полезно для пользователей, но его настройка может быть сложной, особенно если ваш дистрибутив его не поддерживает.

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

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

решение2

Возможно, я сбит с толку этим вопросом, в частности, я не совсем понимаю, что вы подразумеваете под «самозагрузочным». Разве не работает вход в меню конфигурации UEFI (вероятно, F2 при запуске) и/или меню параметров загрузки (возможно, F12 при запуске) и выбор внешнего жесткого диска для загрузки? Если вы хотите, чтобы Ubuntu загружалась автоматически при подключении диска, войдите в меню конфигурации UEFI и переместите любой нужный вам порт USB в начало порядка загрузки. В противном случае, если это не то, что вам нужно или не решает ваши проблемы с загрузкой, boot-repair (http://sourceforge.net/projects/boot-repair/, илиhttps://help.ubuntu.com/community/Boot-Repair) хорошо справляется с решением проблем с загрузкой.

решение3

Ага, понятно. У меня была похожая проблема при попытке установить mint на внешний жесткий диск, за исключением того, что в моем случае это сломало загрузчик на моем внутреннем диске. Установщик Ubuntu в наши дни, похоже, по умолчанию устанавливает grub на sda, и хотя я сказал ему установить его на внешний диск в меню разделов, он этого не сделал. Какую версию вы пытаетесь установить? Я использовал mint 16, который основан на Ubuntu 13.04; Прошло некоторое время с тех пор, как я пытался установить ОС на внешний диск, но я не припомню, чтобы у меня были какие-либо проблемы с более ранними версиями, так что вы можете попробовать 12.04. Возможно, что после установки рабочей версии Ubuntu на диск перезапуск установщика для 13.10 сработает. Я просто решил не беспокоиться, поэтому у меня нет проверенного решения. Вы можете попробовать переустановить с ручной таблицей разделов и выбрать загрузку grub на правильный диск. Это может сработать для вас. Если это все еще не работает, попробуйте загрузить Ubuntu с Live USB и сделать sudo grub-install sdxто, что вы должны заменить x на то, что соответствует вашему внешнему диску (вероятно, sdb или sdc). Вы можете найти их в /devи если вы не уверены, отключите диск, сделайте

ls | greb sd

/dev), затем подключите диск и сделайте это снова: посмотрите, что изменится. После этого сделайте sudo update-grub. Перед тем, как сделать это, посмотрите таблицу разделов для вашего диска, используя, например, утилиту "disks", которая идет с Ubuntu. Необходимо будет иметь логический раздел спереди (установка Ubuntu gui делает это 512 МБ), на который будет загружен grub. Также у вас должен быть раздел подкачки сзади (он должен быть в 1-2 раза больше объема вашей оперативной памяти). Ubuntu использует файловую систему ext4, поэтому может быть сложно создать необходимые разделы, не удалив сначала все содержимое диска... что вам не подойдет. В моем кратком опыте работы с Windows 8 единственное, что я нашел хорошим, — это инструмент разбиения на разделы, так что вы можете попробовать выполнить разбиение оттуда.

Удачи

решение4

Я думаю, это может быть полезно.

Ошибка при полной установке Linux (на базе Ubuntu) на внешний SSD-диск на ПК с UEFI

Проблемы возникают из-за установщика Ubuntu, как написал pbear с форумов Linux Mint: "... потому что в установщике Ubuntu, также используемом Mint, есть ошибка, которая в UEFI портит загрузчик внутреннего жесткого диска, даже если указать, что новый загрузчик должен быть установлен только на USB-накопитель". И есть много решений, некоторые из них работают, некоторые нет, многое зависит от конфигурации USB-накопителя ПК. Я случайно обнаружил довольно простое, но эффективное решение, в то время, когда я понятия не имел об ошибке установщика. Я установил Elementary OS 5 на Huawei Matebook X Pro (Windows 10) на внешний SSD-диск Samsung Portable T5, и, конечно, система не запустилась из-за ошибки. Поэтому у меня всегда есть резервная копия EaseUS Todo всего раздела Windows, затем я восстановил Windows из этой копии, и с этого времени Windows 10 запускается плавно, как и Elementary OS. Это заставило меня подумать, что, вероятно, я могу сделать копию всего раздела Elementary OS и восстановить ее в случае возникновения проблем. Сначала я прочитал о программном обеспечении для резервного копирования Linux, их много, более или менее сложных. Обычно они требуют особого внимания. Затем я попробовал и сделал резервную копию Elementary OS на моем старом диске WD 1 ТБ сектор за сектором. WD HD был подключен через Axagon Fastport по USB к моему Huawei Matebook, затем я восстановил эту копию на небольшой 2,5-дюймовый Hitachi HD, извлеченный из моего старого ноутбука Asus Transformer и установленный во внешний корпус Tracer HDD с USB 3.0, SSD, конечно, быстрее, чем система на SDD или очень близко. Лучше всего иметь двойную систему, которая может пережить ошибку Ubuntu istaller. В любом случае, я не могу понять, почему разработчики Ubuntu не исправили эту известную годами ошибку, и почему средний пользователь и почему он узнает об этом, глядя на черный экран с раздражающим сообщением на нем, и остается с ОС, которая не запускается.

Связанный контент