Что делать, когда я получаю сообщение об ошибке «попытка чтения или записи вне диска« hd0 »» и Boot Repair не решает проблему?

Я пытался установить Xubuntu 13.10 на старый компьютер. Я заметил некоторые трудности во время установки, которые могут иметь отношение к моим проблемам. Примечательно:

  1. Разрешение экрана было крайне низким. Окна были намного больше экрана, и мне пришлось переместить их, чтобы перейти к кнопке «Далее».

  2. Курсор мыши был размытым цветом, который постоянно мигал.

Установка завершена, и я попытался перезагрузить компьютер. Сразу же я получил:

error: attempt to read or write outside of disk 'hd0'. 
Entering rescue mode... 
grub rescue>

Я сделал Boot Repair USB-диск, загрузил его и выбрал восстановление по умолчанию. Приложение сообщило мне, что проблема устранена и что если это не решит мою проблему, я должен показать эту ссылку кому-то, кто может мне помочь.

Что мне делать дальше? Я уже пытался установить Ubuntu и Xubuntu, но оба безуспешно.

РЕДАКТИРОВАТЬ:

Я нашел обходной путь.

  1. Вставьте Xubuntu live USB
  2. Выберите «попробовать Xubuntu»
  3. В меню настроек выберите «установить Xubuntu»

Это решило проблему для меня. Поскольку оно решено, я не могу проверить ответ.

40
задан 2 March 2017 в 10:54

8 ответов

Найдите раздел, в котором присутствует linux, с помощью следующей техники

grub rescue > ls
(hd0) (hd0, msdos9)
grub rescue > ls (hd0,msdos9)/
grub rescue > ls (hd0,msdos8)/
grub rescue > ls (hd0,msdos5)/ # suppose this is root and bootloader of linux
grub rescue > ls (hd0,msdos5)/
grub rescue > set root=(hd0,msdos5)
grub rescue > set prefix=(hd0,msdos5)/boot/grub
grub rescue > insmod normal
grub rescue > normal

Теперь появляется меню загрузки системы. Загрузитесь в linux.

sudo update-grub
sudo grub-install  /dev/sda # If the drive is hd0 the equivalent is sda, if it's hd1 then use sdb

Это исправляет загрузчик.

36
ответ дан 2 March 2017 в 10:54

Для всех, у кого есть эта проблема:

Это происходило со мной, когда работала новая установка или восстановление grub и перезагрузка, но в следующий раз, когда я перезагружался, получалась такая же "попытка прочитать ошибку". В большинстве случаев у меня возникала паника в ядре, и компьютеру требовалась тяжелая перезагрузка. Я последовал нескольким советам и выполнил новую установку, используя расширенные опции (не используйте "стереть диск и установить ubuntu"), используя следующие настройки раздела:

  1. Создайте раздел ext4 размером 1 Гб (1024 Мб) на начале диска; смонтированный в "/boot"
  2. Создайте желаемое установочное пространство в ext4, смонтированном в "/" MINUS область подкачки
  3. Используйте оставшееся пространство для подкачки. (ВСЕ разделы будут основными)
  4. В выпадающем меню boot install выберите раздел "/boot". Не корень диска по умолчанию!
28
ответ дан 2 March 2017 в 10:54

Это можно легко решить с помощью подсказки спасения Grub. Первый ответ не совсем полный, и сначала я получил ту же ошибку. Вот как это работает:

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

Grub> ls

Теперь вы должны увидеть список, сопоставимый с (hd0) (hd0, msdos5) (hd0, msdos1). Обратите внимание, что у вас могут быть разные разделы, а также несколько дисков, но процесс тот же.

Теперь поищите разделы, чтобы найти основной -

Grub> ls (hd0)
Grub> ls (hd0,msdos5)
Grub> ls (hd0,msdos1)

Пока grub не выдаст либо список файлов на этом разделе, либо показывает тип файловой системы и дату последней модификации.

2-е, нам нужно настроить несколько вещей, как только мы нашли наш основной раздел -

Grub> set prefix=(hd0,msdos1)/boot/grub
Grub> set root=(hd0,msdos1)
Grub> set

После выполнения последней команды set Grub выведет список различных параметров. Теперь давайте проверим, что мы установили правильный корень и префикс -

Grub> ls /boot

Grub должен вывести список файлов, содержащихся в /boot.[1236 visible3rd, нам нужно установить точку монтирования и загрузить ядро ​​-

Grub> linux /vmlinuz root=/dev/sda1
Grub> initrd /initrd.img

И, наконец, мы загружаем систему -

Grub> boot

Если вы закончите загрузку в оболочке busybox, просто введите fsck / dev / sda1 . После этого просто введите exit , и ваша система загрузится нормально.

7
ответ дан 2 March 2017 в 10:54

Я решил эту проблему, переместив мой раздел Linux ближе к началу жесткого диска. Когда раздел linux был в конце моего жесткого диска объемом 120 ГБ (40 ГБ с конца), у меня возникла эта проблема. Ни одно решение не сработало. После переноса раздела linux в пространство с 40Gb на 80Gb проблема исчезла.

3
ответ дан 2 March 2017 в 10:54

После многих часов поиска Я попробовал это решение, и оно хорошо работает, чтобы переустановить ядро:

sudo dpkg --configure -a
sudo apt-get install --reinstall linux-image-$(uname -r)
1
ответ дан 2 March 2017 в 10:54

Я достиг этой проблемы, когда использовал диск vmdk из пакета виртуальной машины OVA в virt-manager / QEMU / KVM. Виртуальная машина выдает это сообщение об ошибке.

Решением было преобразовать vmdk в qcow2:

qemu-img convert -O qcow2 MyAppliance-disk1.vmdk MyAppliance.qcow2

И вместо этого использовать преобразованный образ в virt-manager.

0
ответ дан 2 March 2017 в 10:54

У меня возникла эта проблема при попытке установить сервер Ubuntu 18 и Xubuntu 18 на сервер Dell. Выбор UEFI вместо Legacy в меню BIOS исправил это.

2
ответ дан 2 March 2017 в 10:54

Это случайная проблема.

В этом случае лучшим решением является создание папки / boot в отдельном разделе

Подробности здесь

0
ответ дан 5 January 2021 в 23:14

Другие вопросы по тегам:

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