Не удалось добраться до GRUB при загрузке и не может загрузиться с ядром по умолчанию

Откройте ~/.bashrc в текстовом редакторе и в строке безумия:

#force_color_prompt=yes

будет:

force_color_prompt=yes

[d4 ] сохранить, затем выполнить source ~/.bashrc

2
задан 11 January 2018 в 23:37

3 ответа

В верхнем ответе на вопрос, на который вы ссылаетесь, объясняется, как попасть в меню GRUB, если смена сдвига не работает. Вы просто редактируете файл /etc/default/grub и комментируете GRUB_HIDDEN_TIMEOUT=[some number]. Затем вы запустите sudo update-grub.

Поскольку вы не можете загрузиться вообще, вы не можете сделать это так легко.

Однако вы можете сделать это из живой системы, поэтому продолжайте и загрузитесь с

Теперь вы можете настроить chroot. Если вы не уверены в ярлыке устройства корневого раздела вашей установки, попробуйте запустить sudo fdisk -l, чтобы идентифицировать его. Вы должны увидеть что-то на выходе, например

/dev/sda2 <numbers indicating size> Linux filesystem

Попробуйте установить этот раздел:

sudo mount /dev/sdXY /mnt

, где sdXY является правильной меткой. Затем посмотрите, есть ли у установленного раздела каталоги, которые вы ожидаете увидеть в своем корневом разделе:

ls /mnt

Если вы видите такие вещи (не обязательно именно так, но, по крайней мере, большинство их)

bin    dev   mnt         root        sys   var
boot   etc   lost+found  opt         run   srv  tmp 
home   lib   media       proc        sbin  usr 

, тогда вы получили нужный раздел.

Если у вас есть отдельный загрузочный раздел, вам нужно его установить. Если вы не уверены, проверьте файл /mnt/etc/fstab, чтобы узнать, установлен ли раздел на /boot. Игнорируйте любое упоминание раздела, установленного на /boot/efi.

Если у вас есть отдельный загрузочный раздел, установите его:

sudo mount /dev/sdXY /mnt/boot

, где sdXY является правильной меткой загрузите раздел.

Возможно, нам потребуется связать некоторые дополнительные ресурсы (я не уверен, что это необходимо в этом случае):

for d in dev sys run proc; do sudo mount --bind /$d /mnt/$d; done

ОК, теперь введите chroot [!d13 ]

sudo chroot /mnt

Теперь мы можем действовать так, как если бы находились в нашей установленной системе. Сначала давайте отредактируем файл конфигурации:

sudoedit /etc/default/grub

(или вызовите ваш любимый текстовый редактор). Найдите строку

GRUB_HIDDEN_TIMEOUT=0

(у нее может быть другое число, но это не важно). Выделите строку, поместив # в начале ее, так что

#GRUB_HIDDEN_TIMEOUT=0

убедитесь, что строка

GRUB_TIMEOUT=[some number]

заканчивается числом больше 0 ( по умолчанию 10). Сохраните файл и выйдите.

Запустите эту команду, чтобы записать конфигурацию в /boot/grub/grub.cfg

sudo update-grub

Теперь вы можете перезагрузиться в свою установку, а меню GRUB будет принудительно приходите каждый раз.

1
ответ дан 22 May 2018 в 15:35
  • 1
    Фантастично основательно. Хотя я думаю, что моя система - потерянное дело. Первый шаг - поиск раздела Linux. Когда я монтирую его, я не получаю ни одного из каталогов. Я получаю только список abi-4.4.0-104-generic, abi-4.4.0-108-generic, boot-sav и т. Д. В imgur.com/a/yLj9O показано. Никакой другой раздел не может монтироваться как mnt, поэтому он определенно правильный. Я думаю, что его нужно будет переустановить – edwardmlyte 12 January 2018 в 21:27
  • 2
    @edwardmlyte - это загрузочный раздел. Вы можете отредактировать файл там grub/grub.cfg напрямую, чтобы отобразить grub. Измените линию set timeout_style=hidden на set timeout_style=menu и set timeout=0 на set timeout=10 (примерно на 80-90 строк, я думаю?) Затем просто перезагрузитесь, не нужно chroot. Я не рекомендовал это раньше, так как рискованно редактировать файл напрямую (он будет несколько уникальным для вашей системы), но попробуйте его перед переустановкой! – Zanna 12 January 2018 в 21:49
  • 3
    Отлично. После загрузки grub я могу обновить ядро. благодаря – edwardmlyte 13 January 2018 в 01:41
  • 4
    Потрясающие! Замечательно, что вы решили его решить @edwardmlyte – Zanna 13 January 2018 в 01:43

В верхнем ответе на вопрос, на который вы ссылаетесь, объясняется, как попасть в меню GRUB, если смена сдвига не работает. Вы просто редактируете файл /etc/default/grub и комментируете GRUB_HIDDEN_TIMEOUT=[some number]. Затем вы запустите sudo update-grub.

Поскольку вы не можете загрузиться вообще, вы не можете сделать это так легко.

Однако вы можете сделать это из живой системы, поэтому продолжайте и загрузитесь с

Теперь вы можете настроить chroot. Если вы не уверены в ярлыке устройства корневого раздела вашей установки, попробуйте запустить sudo fdisk -l, чтобы идентифицировать его. Вы должны увидеть что-то на выходе, например

/dev/sda2 <numbers indicating size> Linux filesystem

Попробуйте установить этот раздел:

sudo mount /dev/sdXY /mnt

, где sdXY является правильной меткой. Затем посмотрите, есть ли у установленного раздела каталоги, которые вы ожидаете увидеть в своем корневом разделе:

ls /mnt

Если вы видите такие вещи (не обязательно именно так, но, по крайней мере, большинство их)

bin dev mnt root sys var boot etc lost+found opt run srv tmp home lib media proc sbin usr

, тогда вы получили нужный раздел.

Если у вас есть отдельный загрузочный раздел, вам нужно его установить. Если вы не уверены, проверьте файл /mnt/etc/fstab, чтобы узнать, установлен ли раздел на /boot. Игнорируйте любое упоминание раздела, установленного на /boot/efi.

Если у вас есть отдельный загрузочный раздел, установите его:

sudo mount /dev/sdXY /mnt/boot

, где sdXY является правильной меткой загрузите раздел.

Возможно, нам потребуется связать некоторые дополнительные ресурсы (я не уверен, что это необходимо в этом случае):

for d in dev sys run proc; do sudo mount --bind /$d /mnt/$d; done

ОК, теперь введите chroot

sudo chroot /mnt

Теперь мы можем действовать так, как если бы находились в нашей установленной системе. Сначала давайте отредактируем файл конфигурации:

sudoedit /etc/default/grub

(или вызовите ваш любимый текстовый редактор). Найдите строку

GRUB_HIDDEN_TIMEOUT=0

(у нее может быть другое число, но это не важно). Выделите строку, поместив # в начале ее, так что

#GRUB_HIDDEN_TIMEOUT=0

убедитесь, что строка

GRUB_TIMEOUT=[some number]

заканчивается числом больше 0 ( по умолчанию 10). Сохраните файл и выйдите.

Запустите эту команду, чтобы записать конфигурацию в /boot/grub/grub.cfg

sudo update-grub

Теперь вы можете перезагрузиться в свою установку, а меню GRUB будет принудительно приходите каждый раз.

1
ответ дан 17 July 2018 в 23:19

В верхнем ответе на вопрос, на который вы ссылаетесь, объясняется, как попасть в меню GRUB, если смена сдвига не работает. Вы просто редактируете файл /etc/default/grub и комментируете GRUB_HIDDEN_TIMEOUT=[some number]. Затем вы запустите sudo update-grub.

Поскольку вы не можете загрузиться вообще, вы не можете сделать это так легко.

Однако вы можете сделать это из живой системы, поэтому продолжайте и загрузитесь с

Теперь вы можете настроить chroot. Если вы не уверены в ярлыке устройства корневого раздела вашей установки, попробуйте запустить sudo fdisk -l, чтобы идентифицировать его. Вы должны увидеть что-то на выходе, например

/dev/sda2 <numbers indicating size> Linux filesystem

Попробуйте установить этот раздел:

sudo mount /dev/sdXY /mnt

, где sdXY является правильной меткой. Затем посмотрите, есть ли у установленного раздела каталоги, которые вы ожидаете увидеть в своем корневом разделе:

ls /mnt

Если вы видите такие вещи (не обязательно именно так, но, по крайней мере, большинство их)

bin dev mnt root sys var boot etc lost+found opt run srv tmp home lib media proc sbin usr

, тогда вы получили нужный раздел.

Если у вас есть отдельный загрузочный раздел, вам нужно его установить. Если вы не уверены, проверьте файл /mnt/etc/fstab, чтобы узнать, установлен ли раздел на /boot. Игнорируйте любое упоминание раздела, установленного на /boot/efi.

Если у вас есть отдельный загрузочный раздел, установите его:

sudo mount /dev/sdXY /mnt/boot

, где sdXY является правильной меткой загрузите раздел.

Возможно, нам потребуется связать некоторые дополнительные ресурсы (я не уверен, что это необходимо в этом случае):

for d in dev sys run proc; do sudo mount --bind /$d /mnt/$d; done

ОК, теперь введите chroot

sudo chroot /mnt

Теперь мы можем действовать так, как если бы находились в нашей установленной системе. Сначала давайте отредактируем файл конфигурации:

sudoedit /etc/default/grub

(или вызовите ваш любимый текстовый редактор). Найдите строку

GRUB_HIDDEN_TIMEOUT=0

(у нее может быть другое число, но это не важно). Выделите строку, поместив # в начале ее, так что

#GRUB_HIDDEN_TIMEOUT=0

убедитесь, что строка

GRUB_TIMEOUT=[some number]

заканчивается числом больше 0 ( по умолчанию 10). Сохраните файл и выйдите.

Запустите эту команду, чтобы записать конфигурацию в /boot/grub/grub.cfg

sudo update-grub

Теперь вы можете перезагрузиться в свою установку, а меню GRUB будет принудительно приходите каждый раз.

1
ответ дан 24 July 2018 в 13:49

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

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