1

У меня есть ноутбук с предустановленным жестким диском и Windows 8. Я заменил жесткий диск на SSD и поместил жесткий диск вместо оптического отсека с помощью оптического отсека. Я установил новую Windows на SSD и Ubuntu впоследствии.

Моя проблема в том, что довольно часто при загрузке с GRUB на Windows, я получаю сообщение об ошибке:

ошибка: недопустимое корневое устройство.

Это не всегда происходит, но примерно в половине случаев. Когда это происходит, Windows все еще загружается, если я захожу в настройки загрузки UEFI и изменяю порядок загрузки так, чтобы Windows была впереди Ubuntu (GRUB). В этом случае, конечно, я могу загружаться только с Windows, и если я хочу загрузить Ubuntu, я должен вернуться к настройкам загрузки и изменить порядок обратно. Довольно раздражает.

(Это происходило довольно давно, но сейчас мне это надоело, так как я вынужден часто переключаться между двумя ОС).

Я исследовал проблему, и оказалось, что по какой-то причине, когда я установил Windows на SSD, он все же решил использовать ESP, который уже был создан на жестком диске. Ubuntu также зарегистрировался в том же ESP на sdb1, но также создал свой собственный на sda3.

Когда я загружаюсь в Ubuntu, /dev /sda3 монтируется в /boot /efi, где есть только загрузочные файлы Ubuntu:

> ls -lR /boot/efi
/boot/efi:
total 4
drwxr-xr-x 3 root root 4096 feb 13  2016 EFI

/boot/efi/EFI:
total 4
drwxr-xr-x 2 root root 4096 feb 13  2016 ubuntu

/boot/efi/EFI/ubuntu:
total 3444
-rwxr-xr-x 1 root root     126 aug 20 13:50 grub.cfg
-rwxr-xr-x 1 root root  958328 aug 20 13:50 grubx64.efi
-rwxr-xr-x 1 root root 1271672 aug 20 13:50 MokManager.efi
-rwxr-xr-x 1 root root 1289424 aug 20 13:50 shimx64.efi

SDB1 не монтируется автоматически. Если я смонтирую его, я вижу загрузочные файлы как Ubuntu, так и Windows (слишком много файлов, чтобы перечислить их все):

> ll sdb1/EFI/
total 20
drwxr-xr-x 5 root root 4096 mrt 13  2015 ./
drwxr-xr-x 6 root root 4096 jan  1  1970 ../
drwxr-xr-x 2 root root 4096 mrt 13  2015 Boot/
drwxr-xr-x 4 root root 4096 okt 12  2014 Microsoft/
drwxr-xr-x 2 root root 4096 mrt 13  2015 ubuntu/

Папка ubuntu здесь также содержит все соответствующие файлы, кроме старых:

sdb1/EFI/ubuntu:
total 3444
-rwxr-xr-x 1 root root     126 jan  8  2016 grub.cfg
-rwxr-xr-x 1 root root  958328 jan  8  2016 grubx64.efi
-rwxr-xr-x 1 root root 1271672 jan  8  2016 MokManager.efi
-rwxr-xr-x 1 root root 1289424 jan  8  2016 shimx64.efi

Я не очень доволен этой ситуацией, в идеале я бы хотел, чтобы жесткий диск (sdb) служил только хранилищем данных, чтобы я мог удалить его при необходимости. Это, конечно, в настоящее время невозможно, так как (более полный) ESP находится на этом диске.

Я также подозреваю, что это как-то вызывает error: not a valid root device проблема с действительным корневым устройством, которую я описал ранее.

Как бы вы предложили мне разобраться в этой ситуации?

0