minimal bash like line editing is supported что делать
Исправление минимального BASH, как редактирование строки поддерживается GRUB Ошибка в Linux
На днях, когда я установил Elementary OS в режиме двойной загрузки с Windows, я столкнулся с ошибкой Grub во время перезагрузки. Мне подарили командную строку с сообщением об ошибке:
Поддерживается минимальное редактирование в стиле BASH. Для первого слова TAB перечисляет возможные завершения команд. где-нибудь еще TAB перечисляет возможные дополнения устройства или файла.
На самом деле это не ошибка, специфичная для Elementary OS. Это распространенная ошибка Grub, которая может возникнуть в любой ОС Linux, будь то Ubuntu, Fedora, Linux Mint и т. Д.
Вы можете прочитать этот учебник, чтобы исправить похожую и более частую проблему, ошибка: в Linux нет спасения grub для таких разделов.
Предпосылки
Чтобы решить эту проблему, вам потребуется следующее:
Как только вы убедитесь, что у вас есть необходимые условия, давайте посмотрим, как исправить черный экран смерти для Linux (если я могу это так назвать;)).
Как исправить это «поддерживается минимальное BASH-подобное редактирование строк» Ошибка Grub в Linux на основе Ubuntu
Я знаю, что вы могли бы указать, что эта ошибка Grub не является исключительной для дистрибутивов Linux на основе Ubuntu или Ubuntu, тогда почему я делаю упор на мир Ubuntu? Причина в том, что здесь мы выберем легкий путь и используем инструмент под названием Boot Repair для решения нашей проблемы. Я не уверен, доступен ли этот инструмент для других дистрибутивов, таких как Fedora. Не теряя больше времени, давайте посмотрим, как решить минимальный BASH, например, поддерживается редактирование строк Ошибка Grub.
Шаг 1: загрузка в сеансе
Подключите live USB и загрузитесь в прямую сессию.
Шаг 2: Установите Boot Repair
После того, как вы вошли в сеанс жизни, откройте терминал и используйте следующие команды для установки Boot Repair:
Примечание. Следуйте этому руководству, чтобы исправить ошибку, из-за которой не удалось получить cdrom. Apt-get update не может быть использован для добавления новой ошибки CD-ROM, если вы столкнулись с ней во время выполнения вышеуказанной команды.
Шаг 3: Восстановите загрузку с помощью Boot Repair
Установив Boot Repair, запустите его из командной строки, используя следующую команду:
На самом деле все довольно просто отсюда. Вам просто нужно следовать инструкциям, предоставленным Boot Repair tool. Во-первых, нажмите « Рекомендованный вариант ремонта» в «Boot Repair».
Boot Repair займет пару минут, чтобы проанализировать проблему с загрузкой и Grub. После этого он предоставит вам некоторые команды для использования в командной строке. Скопируйте команды одну за другой в терминал. Для меня это показало мне такой экран:
Он будет выполнять некоторые процессы после ввода этих команд:
Как только процесс завершится, он предоставит вам URL, который состоит из журналов восстановления загрузки. Если проблема с загрузкой не устранена даже сейчас, вы можете зайти на форум или написать письмо команде разработчиков и предоставить им URL в качестве ссылки. Круто, не правда ли?
После успешного завершения восстановления загрузите компьютер, отключите USB и снова загрузитесь. Для меня он загрузился успешно, но добавил две дополнительные строки на экране Grub. Что-то, что не имело значения для меня, так как я был рад видеть, что система снова загружается нормально.
Это сработало для вас?
Так вот как я исправил минимальный BASH, как редактирование строк, поддерживается ошибка Grub в Elementary OS Freya. Как насчет тебя? Это сработало для вас? Не стесняйтесь задать вопрос или оставить предложение в поле для комментариев ниже.
Восстановление Grub2
Восстановление Grub2 с помощью LiveCD
Начнем с того, что вам нужна LiveCD система, той же разрядности, что и ваша система Linux Mint, на которую был установлен Grub. Причем, неважно будет там графический интерфейс или нет. Обычно все необходимые инструменты поддерживаются всеми дистрибутивами. А нужны нам только утилиты fdisk, mount и chroot. Чтобы восстановить загрузчик grub2 просто следуйте описанным ниже шагам.
Шаг 1. Загрузка LiveCD
Сначала вставьте носитель с LiveCD системой в дисковод или порт USB, если это флешка. Для загрузки с носителя, возможно, вам сначала понадобится зайти в меню BIOS и выставить приоритет загрузки с внешнего устройства.
Для запуска BIOS нажмите Del, F2, F8 или Shift +F2. В открывшимся меню найдите раздел Boot, и в пункте Boot Device Priority или 1st Boot Device или Boot Option #1 выберите нужное устройство:
Дальше перейдите на вкладку Exit и выберите Exit & Save settings. Дальше начнется загрузка образа.
Шаг 2. Определение разделов
Шаг 3. Монтирование файловой системы
Теперь вам предстоит смонтировать вашу корневую файловую систему в каталог /mnt:
mount /dev/nvme0n1p5 /mnt
Кроме того нужно смонтировать раздел boot. Например, если бы он у меня находился по адресу /dev/nvme0n1p1:
mount /dev/nvme0n1p1 /mnt/boot
Шаг 4. Подготовка к входу в систему
Шаг 5. Вход в окружение системы
Для входа в окружение вашей системы используйте команду:
chroot /mnt /bin/bash
Затем выполните эти команды для загрузки и обновления переменных профиля:
Теперь вы находитесь в Linux Mint, и можете выполнять почти все его программы, разумеется, недоступны сервисы, поскольку во время загрузки не использовалась система инициализации, а также как следствие, недоступно графическое окружение.
Шаг 6. Восстановление Grub2
Теперь восстановление Grub в Linux Mint. Просто выполните следующие команды. Первая, для переустановки загрузчика на жесткий диск:
sudo grub2-install /dev/sd*
Теперь создадим новый конфигурационный файл:
Путь к конфигурационному файлу может немного отличаться, так что будьте внимательны.
Еще можно использовать команду:
Но она работает только в Ubuntu и основанных на ней дистрибутивах.
Шаг 7. Готово
Выйдите из окружения chroot командой:
И перезагрузите компьютер:
Теперь все работает.
Восстановление Grub2 без LiveCD
В некоторых случаях повреждения Grub не вызывает полную невозможность загрузки. Например, когда загрузочный код в MBR цел, но программа не может получить доступ к файлам на диске. Тогда загрузчик открывает вместо меню некое подобие терминала с сообщением: Minimal BASH like line editing is supported. С помощью этого терминала мы можем попытаться загрузить систему. Восстановление grub2 без LiveCD не такая уж и сложная задача, хотя, это сложнее, чем первый способ.
Чтобы посмотреть список подключенных к компьютеру дисков просто выполните:
(hd2,msdos1, hd2,msdos2, hd2,msdos3, hd2,msdos4)
Важно отметить, что в grub диски и разделы именуются немного по другому. Здесь каждый жесткий диск имеет название hd и номер диска, например, hd0 или hd1. Разделы именуются начиная с единицы.
Вы можете работать только с одним разделом в определенный момент. Чтобы установить раздел, с которым нужно работать, нужно указать его в переменной root. Для установки переменных окружения используется команда set. Например, у если у меня файлы загрузчика grub находятся на /dev/sdc2, то получится hd2,2:
Загрузим нормальную оболочку grub:
insmod ext2
insmod normal
normal
После этого можно найти и запустить ядро. Для этого используйте команду linux. Обычно ядро находится папке /boot:
И наконец загружаемся:
Теперь, когда система загрузится, вам останется только открыть терминал, и выполнить следующие команды, чтобы завершить восстановление загрузчика linux mint:
sudo grub2-install /dev/sd*
Восстановление в Boot Repair
После этого установите утилиту:
sudo apt install boot-repair
Для запуска выполните:
Далее для восстановления загрузчика достаточно нажать кнопку Рекомендуемый способ восстановления:
Затем просто дождитесь завершения процесса восстановления:
После этого компьютер можно перезагружать и всё будет работать.
Выводы
Теперь восстановление загрузчика linux mint не вызовет у вас проблем в любых обстоятельствах, независимо от того, есть ли у вас диск с другим дистрибутивом или нет. Если остались вопросы, напишите в комментариях!
Восстановление GRUB Legacy
Содержание
Вкратце: на любом винчестере есть так называемая MBR область, к которой обращается BIOS при загрузке компьютера с этого винчестера. В эту MBR загрузчик системы должен записать ‘ссылку’ на свои основные файлы, которые храняться уже на основных разделах винчестера. Так вот, Windows при установке перетирает без всяких вопросов ссылку Linux и ставит свою, в итоге, Linux пропадает из меню загрузки. Слава богу, Windows так же втихую не убивает сам Linux, так что восстановить последствия беспредела достаточно просто.
Восстановление MBR с использованием LiveCD Ubuntu
Вам понадобиться всего лишь LiveCD с Ubuntu (обычный диск Ubuntu Desktop, в принципе, любой версии до 9.04 включительно). Загрузите компьютер с него, в появившемся при загрузке меню выберите пункт Загрузить Ubuntu без установки на компьютер, дождитесь окончания загрузки.
Теперь откройте терминал, он находится в меню Приложения→Стандартные→Терминал в русской версии или в меню Applications→Accessories→Terminal в английской версии.
В открывшемся терминале наберите:
Вы увидите нечто похожее на:
Это значит, что вы попали в программу управления grub. Теперь нам надо выяснить, где на вашем компьютере храниться основная часть загрузчика GRUB, для этого наберите:
В результате выполнения этой команды вы увидите нечто типа:
Всё, теперь можно перезагрузиться, при загрузке вы снова сможете попасть в свою Ubuntu. Правда, если вы устанавливали Windows, то он не появится волшебным образом в меню загрузки, см. ниже пункт про добавление в меню опций загрузки Windows и других ОС.
Super Grub Disk
Существует специальный диск для выполнения восстановительных работ с MBR, скачать его можно с официального сайта:
Инструкция по восстановлению остаётся такой же, как и в случае с LiveCD Ubuntu, с той лишь разницей, что необходимо грузиться с загрузочного диска Super Grub Disk, подробнее см. на сайте.
Установка файлов GRUB на раздел с Linux
Иногда зачем-то бывает необходимо поставить GRUB Legacy на существующий раздел с Linux. Например, если вы по неосторожности сумели повредить файлы загрузчика. Делается это очень просто. Необходимо загрузиться с LiveCD Ubuntu (или Super Grub Disk) и примонтировать раздел с вашим Linux. Допустим, вы примонтировали его в каталог /mnt.
После этого GRUB Legacy поставится в /mnt/boot/grub и пропишет загрузку себя в MBR винчестера /dev/sda.
Добавление Windows и других ОС в меню загрузки GRUB
Восстановление загрузчика WinXP
Иногда, по совершенно непонятным причинам, возникает необходимость восстановить не GRUB, а загрузчик WinXP. Этот загрузчик, в отличие от GRUB Legacy, не умеет грузить ни Linux, ни более современные версии Windows, так что подумайте перед тем как выполнять приведённые ниже инструкции.
Для восстановления загрузчика WinXP надо загрузиться с установочного диска WinXP и выбрать пункт Восстановление системы. Далее:
Grub отображает консоль вместо меню
Всем привет! Установил на компьютер (не на свой, а на другой) поверх Windows 8 Ubuntu 12.04 LTS. При включении компьютера вместо меню grub’а с выбором линукса и винды отображается консоль grub’а. Выглядит она так:
А grub в этой версии бубунты умеет UEFI? Возможно, дистр поновее надо. Ну или руками в инсталляторе выбрать версию grub с поддержкой UEFI(не знаю, возможно ли такое в бубунте, в дебиане такая возможность есть).
Спасибо за совет! Специально установил 12.10, потому что в 13.10 много косяков. Видимо придется переустанавливать.
P.S. Может, кто-нибудь что-нибудь другое напишет помимо этого?
Обнови только груб.
для этого нужно зайти с livecd, но как, если отображается лишь только консоль grub? В восьмой винде в биос зайти невозможно через del
Новый вопрос: 1) как через консоль grub’а зайти в ОС (в Windows зайти не спрашиваю, потому что у меня гр*баный Secure Boot включен) или 2) как зайти в BIOS через grub (для тех кто в танке: на компьютерах с предустановленным Windows 8 невозможно зайти в BIOS при включении компьютера. Только через «Дополнительные настройки ПО» внутри самой винды)?
Ура! Я смог наконец-то зайти через LiveCD! Что мне теперь писать в консоли линукса?
С этого момента команды выполняются внутри установленной системы. Я бы порекомендовал установить grub-efi, а затем
Я бы порекомендовал установить grub-efi[\quote] Я вас немножко не понял, как установить этот самый grub-efi? Или вы имели ввиду сделать то, что ниже этого текста?
Сделал всё по вашей инструкции (grub-efi через центр приложений установил), но всё тоже.
Быть может стоит переустановить Ubuntu? На более новую версию.
Как Вы зашли в liveSD?
А grub в этой версии бубунты умеет UEFI? Возможно, дистр поновее надо.
UEFI тут вероятнее всего не причём.
из «скриншота» видно что начальная стадия загрузки GRUB уже прошла (то есть — GRUB смог успешно получить управление в свои руки!).
вот только конфиг и модули — не загрузились (возможно поменялся нормел раздела? раздел удалился? или ещё какая-то фигня произошла?).
в этой ситуации можно было бы прям из этого GRUB-Minimal-Shell:
1. посмотреть переменные окружения. команда «set».
2. потом посмотреть какие файлы лежат на каком разделе, команды «ls» и «cd» — наверняка сработают.
3. подправить переменные окружения (в соответствии с увиденной реальной картиной из пункта 2). команда «set BLAHBLABLAH=BLABLA».
4. далее: команды «insmod normal» и «normal» — продолжат загрузку, загрузятся конфиг и модули. (в успешном случае — покажется нормальное меню GRUB, ну или пойдёт загрузка операционной системы)
Настройка и восстановление загрузчика Grub
Что же делать в этой ситуации? Хорошая новость заключается в том, что результатом получения одного из этих сообщений является программная ошибка. Вы можете исправить ее, отредактировав конфигурационный файл или же переустановив программу-загрузчик. Оба этих действия нетрудно выполнить, но только в том случае, если вы хорошо представляете себе, что вы должны получить в конечном результате. Поэтому для начала нам потребуется немного вводной информации. Я постараюсь объяснить все как можно проще.
Процесс загрузки
После успешного выполнения задачи все настройки будут установлены таким образом, что ядро операционной системы может управлять физическими файловыми системами, контроль над которыми и возложен на него.
Примерно так обстоят дела с загрузкой в системе PCLinuxOS. Однако то, о чем было вкратце описано выше, является неполной картиной всех процессов, происходящих в системе Grub. Более того, этот способ далеко не единственный, применяемый для загрузки операционных систем.
Восстановление
Приведем общую картину загрузки компьютера, применимую к дистрибутивам PCLinuxOS, но несколько отличную для других операционных систем. К примеру, Ubuntu и все дистрибутивы Linux, основанные на Ubuntu, на сегодняшний день используют загрузчик Grub2, алгоритм работы которого отличается от представленного здесь.
Как мы узнали ранее, загрузчику Grub необходимо знать три вещи, с помощью которых он сможет загрузить операционную систему:
Во время загрузки системы информация может быть введена в командной строке, поэтому требуется навык для работы с ней.
Для восстановления операционной системы можно загрузиться с LiveCD-диска, который использовался для установки PCLinuxOS на жесткий диск. С оптического диска система PCLinuxOS загрузится в оперативную память ОЗУ, после чего можно будет исправить любой поврежденный файл на жестком диске компьютера.
Поиск поврежденного файла
У вас будет запрошен пароль суперпользователя. Это пароль администратора (root) системы, но не пароль вашей пользовательской учетной записи. После того, как вы зайдете под учетной записью root, помните о том, что необходимо быть предельно осторожным при вводе любой команды в терминале, так как пользователь root обладает абсолютными правами. Он может все, поэтому любая ошибочная команда приведет к краху системы.
Затем вводим команду:
В результате произойдет переход в командную оболочку загрузчика Grub, где можно выполнить переустановку резидентной части Grub. Оболочка Grub имеет ограниченный набор поддерживаемых команд, список которых можно просмотреть, нажав клавишу «Tab».
В этом списке имена, оканчивающиеся на символ @ являются ссылками, которые можно использовать в конфигурационном файле загрузчика Grub.
Присвоение ярлыков разделам
Конфигурационный файл
В оригинале данный файл выглядит следующим образом:
Добавление нового пункта в меню Grub
При добавлении нового пункта меню (stanza) необходимо оставлять перед строфой и после нее одну пустую строку, так как иначе загрузчик Grub не будет знать, где заканчивается одна запись и начинается другая.
После того, как все данные будут введены, нажимаем сочетание клавиш Ctrl+X, при этом редактор nano спросит, сохранить ли изменения в файле. Подтверждаем сохранение и выходим.
Этого будет достаточно для успешной загрузки системы, хотя вы можете захотеть несколько приукрасить загрузчик. Однако, и этих трех строк в файле menu.lst хватит для правильной настройки конфигурации.
Я не сделал попытки восстановить файл. Наоборот, я напишу свои собственные инструкции, когда я буду знать, что конфигурационный файл Grub корректно работает и я могу им управлять. Поэтому я оставил оригинальный набор инструкций для загрузчика Grub. Позже, когда я буду точно знать, что система загружается нормально, я вернусь и отредактирую файл. Но сейчас я оставляю его таким, каким он был в самом начале.
Что все это значит
Четыре первые строки в файле menu.lst выполняют следующие функции.
Команда Timeout = 10 устанавливает временной промежуток, в течении которого загрузчик Grub будет ожидать действий пользователя, которые укажут ему, какой пункт меню загружать. Если он не дождется такого указания в течении установленного времени, то будет произведена загрузка пункта меню, установленного по умолчанию. А если такой не определен в конфигурационном файле, то первого по списку пункта меню. Чтобы остановить счетчик времени, достаточно нажать любую клавишу на клавиатуре.
Команда Color white/blue yellow/blue устанавливает цветовую раскраску текстового меню (в которое можно войти, нажав клавишу «Esc», если в данный момент вы находитесь в графическом меню Grub. Просто иногда бывают случаи, когда вам потребуется войти в текстовое меню загрузчика). Первая пара значений задает цвета переднего (foreground) и заднего (background) фона всего меню, а вторая пара служит для установки цветов выделенного пункта меню.
Команда gfxmenu (hd0,0)/boot/gfxmenu указывает загрузчику Grub, где располагается графическое меню.
Команда default 0 устанавливает пункт меню для загрузки по умолчанию, при этом отсчет ведется с нуля.
Добавление параметра aplash=silent vga=788 в конец этой строки позволит установленной графической теме Plymouth скрыть строки текста, появляющиеся на экране монитора при загрузке системы. Число 788 является разрешением монитора, которое наиболее оптимально для большинства компьютеров.
Установка PCLinuxOS по умолчанию предлагает три пункта меню загрузчика.
Все три вышеназванных режима можно включить, добавив одну из перечисленных ниже команд в строку kernel между параметром kernel и параметром корневой раздел root :
Переустановка загрузчика
Если загрузчик Grub является поврежденным, то задача его восстановления не такая уж и сложная. Снова откройте терминал, с помощью команды su получите права root и запустите командную оболочку Grub:
С помощью встроенной команды поиска find найдите разделы, на которых располагаются файлы Grub:
Проверьте, правильный ли вы выбрали раздел:
Все, задачу мы выполнили. Вводим команду quit для выхода из оболочки Grub.
Загрузка нескольких операционных систем
Если необходимо настроить загрузку одной из нескольких операционных систем, установленных на компьютере, то наиболее простой способ представлен ниже.
В окончании процесса установки операционной системы, как правило, у вас будет спрошено, куда бы вы хотели установить загрузчик Grub. По умолчанию это первый загрузочный сектор MBR жесткого диска, на который производиться установка. Вместо этого выберите установку загрузчика на раздел диска. Затем инсталлятор спросит вас, с какого жесткого диска производить загрузку операционной системы. В данном случае этот жесткий диск будет являться обычным корневым разделом, настройку которого мы будет производить дальше вручную в конфигурационном файле, открыв его в терминале.
А здесь представлена часть оригинального файла menu.lst :
Такое построение загрузки нескольких операционных систем мне кажется наиболее простым и легким для дальнейшей ее поддержки.
Добавление загрузки Windows
Для включения загрузки такой операционной системы, как Windows, которая не использует Grub, но имеет свой собственный загрузчик, я поступаю следующим образом. В конфигурационный файл menu.lst добавляется следующая строфа:
Обратите внимание: необходимо изменить раздел (hd0,2) на тот, на котором установлена операционная система Windows.
Команда makeactive делает указанный корневой раздел активным (загрузочным).
Команда chainloader +1 «говорит» загрузчику Grub перейти на второй сектор указанного раздела в поисках загрузочного кода, так как первый раздел всегда зарезервирован файловой системой.
Использование встроенных команд Grub во время загрузки
Если процесс загрузки компьютера окончился неудачей по какой-либо причине, то все еще существует возможность войти в систему, используя для этого собственную командную оболочку загрузчика Grub. Если у вас Grub настроен на использование графического меню, то нажмите клавишу «Esc» на клавиатуре, чтобы перейти в текстовый режим после подтверждения своего намерения в соответствующем окне.
Причиной ошибки при загрузке компьютера может быть опечатка, допущенная вами в конфигурационном файле Grub при его правке, или ошибка самого текстового редактора, который разбил одну длинную строку на две короткие и Grub не может понять, как ее читать. Прямо из командной оболочки Grub можно отредактировать эту строку. Для этого выберите в меню загрузчика тот пункт с операционной системой, которая «не хочет» загружаться, с помощью клавиш-стрелок на клавиатуре и затем последовательно нажмите клавиши «E» и «Enter». Если после этого снова нажать клавишу «E», то выбранная строка поместиться в командную оболочку Grub, где ее можно отредактировать. При первоначальном открытии для редактирования курсор будет находиться в самом конце строки, но его можно переместить с помощью клавиш-стрелок или же клавиш «Home» и «End». После внесения изменений в строку нажмите клавишу «Enter», чтобы сохранить их или же клавишу «Esc» для выхода из режима редактирования без сохранения изменений. Если редактор испортил изменяемую строку, то можно удалить ее полностью, нажав клавишу «D».
Если вы не видите в строках никаких ошибок, то не отчаивайтесь, еще не все потеряно. Нажмите клавишу «C» для перехода в режим командной строки Grub, который аналогичен тому, который мы получали в терминале для переустановки загрузчика.
Данная команда найдет разделы на всех установочных жестких дисках, которые могут быть корневыми разделами для Grub. Введите следующую команду, чтобы указать Grub использовать этот раздел:
Мы уже знаем, что файл vmlinuz является ссылкой, в то время как другой файл vmlinuz-2.6.32.11-pclos2 представляет из себя физическое ядро операционной системы. Которое мы можем использовать в дальнейшем, так как ссылка на него может быть поврежденной. Для того, чтобы добавить это имя в командную строку, нет необходимости вводить его полностью. Просто добавляем дефис и снова нажимаем клавишу «Tab», чтобы Grub сам дополнил все остальное. Такой способ позволяет избежать ошибок при вводе имени файла.
Кажется, все работает, поэтому переходим дальше и выполняем те же действия для файла initrd :
Видим, что Grub имеет всю необходимую ему информацию, поэтому мы можем попытаться загрузить операционную систему:
Вся информация для загрузки будет взята из текущей сессии Grub, поэтому я точно знаю, что все будет работать.
В заключение нужно сказать следующее. Все приведенные выше примеры работы с загрузчиком Grub безопаснее всего производить (в качестве тренировки) на операционной системе, установленной под виртуальной машиной VirtualBox. Установка и настройка такой машины проста и существует прекрасная статья, описывающая данный процесс, в октябрьском выпуске за 2008 год журнала PCLinuxOS. Статья написана редактором этого журнала parnote. В ней рассматривается установка операционной системы Windows под VirtualBox, но принцип остается одинаковым и полностью применим к инсталляции PCLinuxOS.

















