У меня есть ноутбук под управлением Windows (с BitLocker), который я использую для работы. Я хотел бы иметь возможность загружаться в Ubuntu с помощью внешнего SSD (подключенного через USB), не касаясь чего-либо в моей существующей конфигурации Windows. Я уже слышу предложение запустить живую систему, и, возможно, до этого еще дойдет, но после некоторых копаний я поверил , что можно достичь того, чего я хотел. Вот что я сделал:
exit
позволил мне загрузиться в Windows В общем, миссия не выполнена, так как я не могу выборочно загружаться с незатронутым встроенным SSD. У меня все еще есть установленный Ubuntu на моем внешнем SSD, который я бы очень хотел загрузить, но я застрял. Возможно ли то, что я пытаюсь сделать? Если да, что я могу сделать, чтобы либо спасти установку на внешнем SSD, сделав его загрузочным, либо выполнить установку таким образом, чтобы оставить встроенный (Windows) SSD полностью нетронутым? Единственный надежный способ добиться последнего - физически удалить внутренний твердотельный накопитель при установке?
Я нашел это , но на данный момент это уже не так, как это , что немного отличается от моего случая.Моя основная цель - сделать существующую установку на внешнем SSD загрузочной.
Я решил эту проблему, выполнив эти шаги , предоставленные ptetteh227 . Это в основном то, что Олдфред предлагал выше, но мне нужны были подробности. Эти шаги были предусмотрены для Ubuntu 15.10, но их применение в Ubuntu 20.10 работало безупречно. Обратите внимание, что я не выполнил шаги для «Создание настраиваемой загрузочной записи для Ubuntu, указывающей на efi на внешнем жестком диске», поэтому я не могу говорить об их продолжительности действия.
Вот шаги, если вы не хотите чтобы перейти по ссылке выше:
Загрузитесь с Live USB Ubuntu и подключите внешний жесткий диск.
Список разделов всех устройств:
lsblk
По результатам lsblk
определите раздел Linux, а также раздел efi внешнего жесткого диска,
то есть / dev / sdXY1
и / dev / sdXY2
соответственно. Замените XY1
и XY2
собственными именами разделов.
Специально смонтируйте раздел Linux:
sudo mount / dev / sdXY1 / mnt
Смонтировать критически важные виртуальные файловые системы:
для i в / dev / dev / pts / proc / sys / run; выполните sudo mount -B $ i / mnt $ i; сделанный
chroot
в смонтированный раздел Linux:
sudo chroot / mnt
Теперь вы находитесь в файловой системе linux внешнего жесткого диска.
Создайте каталог, в который grub установит свои файлы:
mkdir -p / boot / efi
Если он уже существует, перейдите к шагу 8.
Подключите раздел efi из шага 3:
mount / dev / sdXY2 / boot / efi
Установите grub на внешний жесткий диск:
grub-install / dev / sdX
Обновление grub:
update-grub
Найдите UUID раздела efi (также известного как «vfat») и запишите его:
blkid
или
ls -l / dev / disk / by-uuid
Теперь нам нужно указать fstab монтировать этот раздел efi при загрузке:
cp / etc / fstab /etc/fstab.bak
судо нано / и т. д. / fstab
Добавьте следующие две строки в fstab, заменив xxxx-xxxx на UUID из шага 11:
#my измененный fstab для монтирования esp внешнего жесткого диска
UUID = xxxx-xxxx / boot / efi vfat umask = 0077 0 1
Не забудьте закомментировать запись fstab в Windows esp, чтобы она не конфликтовала.
Выйти из chroot:
exit
Перезагрузите компьютер:
sudo reboot
На этом этапе, когда вы перезагружаетесь и выбираете внешнее устройство в диспетчере загрузки EFI, оно будет загружаться в grub.
Чтобы Ubuntu автоматически загружалась, когда вы вставляете внешнее устройство, а Windows автоматически загружается, когда внешнее устройство не вставлено вам нужно будет создать настраиваемую загрузочную запись для Ubuntu, чтобы указать на efi на внешнем диске:
Из Windows EasyUEFI может добавлять или удалять загрузочные записи.
Из Linux efibootmgr может добавить или удалить загрузочные записи.
Альтернатива №1 - использование EasyUEFI
В Windows загрузите EasyUEFI, установите и запустите.
Выберите Диспетчер параметров EFI
Выберите создать 'новая запись' со знаком +
Выберите Linux или другую ОС и дайте ей имя в поле описания
Выберите раздел FAT32 EFI на внешнем диске, который содержит загрузчик grub
Выберите просмотреть
Перейдите в /efi/ubuntu/shimx64.efi или / efi / ubuntu / grubx64
Сохранить
Переместите в начало список загрузочных записей
Перезапустить
Альтернатива №2 - с использованием efibootmgr
Список записей меню загрузки:
efibootmgr
Создайте загрузочную запись:
efibootmgr -c [-L label] [-d / dev / sdX]
например: efibootmgr -c -L myubuntu -d / dev / sdX
Эта загрузочная запись будет автоматически первой записью.
/ dev / sdX
- внешний жесткий диск с Загрузчик grub.
Теперь вы можете перезагрузиться, и без вашего вмешательства Ubuntu будет автоматически загружаться при подключении внешнего жесткого диска. Когда внешний жесткий диск не подключен, ПК будет пропускать наша загрузочная запись Ubuntu к следующей записи, которая, вероятно, является Диспетчер загрузки Windows .
Я рекомендую вам выполнить следующие действия:
Извлеките внутренний жесткий диск из рабочего латопа. Вставьте флешку с установщиком Ubuntu и загрузитесь с Ubuntu live. Вставьте внешний жесткий диск туда, где вы хотите установить Ubuntu. Установите Ubuntu на внешний жесткий диск с флеш-накопителя.
Установите средство восстановления загрузки, которое содержит утилиты для использования UEFI с Ubuntu.
выключите ноутбук.
Загрузитесь с внешнего жесткого диска
установите загрузочное соединение заново и выполните его, вы найдете в Интернете, который поможет вам настроить UEFi в Ubuntu.
sudo add-apt-repository ppa:yannubuntu/boot-repair
sudo apt-get update
sudo apt-get install boot-repair
Теперь вы можете завершить работу. Подключите внутренний жесткий диск и внешний жесткий диск. Загрузитесь с F12, чтобы настроить uefi для использования Windows 10 uefi и efi с внешнего жесткого диска Ubutnu.
Перезагрузка. Загрузка с внешнего жесткого диска Ubuntu.
Теперь начинаем волшебство использовать внутреннюю установку Windows 10 из Ubuntu с использованием Virtual Box в моем случае.
Что вам нужно сделать, так это то, что называется файлом «создать необработанный диск», который указывает на существующий жесткий диск. Позже вы создадите новую виртуальную машину Virtual Box, используя этот файл, и загрузите Windows 10 из Ubuntu, используя существующую установку. Не забудьте выбрать параметры UEFI в конфигурации виртуальной машины Virtual Box.
Вот пример создания виртуального жесткого диска с необработанными файлами из существующего, который Ubuntu отображает в / dev / nvme0n1:
VBoxManage internalcommands createrawvmdk -filename /home/luis/virtualmachines/Windows10/windows10.vmdk -rawdisk /dev/nvme0n1 -relative
Это всего лишь немного Помогите. Вы можете обнаружить, что, возможно, вам нужно использовать Virtual Box с помощью sudo, но с помощью некоторых лекций и нескольких часов вы можете найти способ заставить его работать с вашим обычным пользователем.