Уголок новичка
   3260

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

Добрый день.
Подскажите пожалуйста — какая то чертовщина с загрузчиком. Установил ядро 5.10 (дополнительно к 5.9 и 5.4). Манжаро не может грузиться с 5.10, но с 5.9 грузится. Визуально появилось в меню загрузчка 2 раздела Manjaro — как понял, один из них от Grub-customizer.
Одновременно возникла проблема с Grub-customizer — система пишет что он конфликтует с GRUB.
В соседнем разделе стоит Endeavour OS — с ядрами 5.10 и 5.4. Там 5.10 работает, а 5.4 перестал работать, при этом если снести 5.4 и поставить заново — проблема не решается, а если поставить zen то работает. Раньше работало все и в Manjaro и в Endeavour. Сломалось пару дней назад.
Пока еще можно использовать Manjaro 5.4 и 5.9 и Endeavour 5.10 — вопрос надолго ли и что с этим можно сделать?

22 комментария

avatar
Удали Grub-customizer, он теперь несовместим с манджаровским Grub'ом. Я писал Стефано ответственному за пакет Grub и он мне ответил, что Grub-customizer может поломать загрузчик.На счёт дубликатов строк в загрузчике. У меня было тоже самое, залез в файл /boot/grub/grub.cfg и нашёл строку с дублем. У меня за это отвечал скрипт который находится по пути /etc/grub.d/51_linux. Запретил ему права на исполнение sudo chmod -x /etc/grub.d/51_linux. Сделал sudo update-grub. После перезагрузки всё стало нормально. Так что, открывай конфиг граба и ищи строки-дубликаты и скрипты которые за это отвечают, обычно в начале строк они указаны и либо запрещай права на исполнение, либо вообще их удаляй.
?
Из трёх решений одно может быть правильным, одно неправильным и одно невероятным.
0
avatar
Нашел на forum.manjaro.org/t/grub-conflicts-with-grub-customizer/43917/46 решение:
Rename:
/etc/grub.d
to
/etc/grub.d.old
Reinstall Grub 2
sudo update-grub
Пока не делал. Похоже на рабочий вариант. Как думаете — стоит так сделать? Ничего не сломаю?
0
avatar
Не знаю, вряд ли это поможет. У тебя Grub-customizer создал свои скрипты, они останутся по пути /etc/grub.d.old И при выполнении команды sudo update-grub заново пропишутся в файле /boot/grub/grub.cfg. Хотя попробуй, если не получится, то сделай как я писал.
Последний раз редактировалось
?
Из трёх решений одно может быть правильным, одно неправильным и одно невероятным.
0
avatar
Сделал как ты посоветовал. Проблема с двойными строками ушла, большое спасибо!
К сожалению проблема с невозможностью загрузки некоторых ядер осталась — видимо они случайно совпали по времени но не связаны с двойными entries в загрузчике.
Манжаро не может работать с ядром 5.10, работает с 5.9.16 и 5.4.85.
Arch (Endeavour) работает с 5.10.4, zen и hardened, но не видит lts 5.4.86
Подумал может дело в ядре, сносил Arch, ставил lmde4 (ядро 4.19) и mint 20 (ядро 5.4) — ни тот ни другой не грузятся. Заново поставил Arch — опять работает с 5.10.4, zen и hardened, но не видит lts 5.4.86.
Ошибка — не видит UUID в момент загрузки, предлагает обновить microcode. Сделал как сказано тут: wiki.archlinux.org/index.php/microcode
Установил intel-ucode и перегенерил Grub grub-mkconfig -o /boot/grub/grub.cfg — не помогает ни Арчу ни Манжаре. :(

Один из вариантов ошибки: acpi bios error could not resolve symbol [\_sb.pci0.sat1.spt1._gtf.dssp]
Последний раз редактировалось
0
avatar
Использовать загрузчик здорового человека. Например, rEFInd. Можно найти более легковесное решение ((gummi|sd)boot), но этот прост как палка. Требований ровно два: GPT и поддержка EFI.
Последний раз редактировалось
0
avatar
Grub вполне себе нормальный загрузчик, а не вот это ваше EFIшное говно.
?
Из трёх решений одно может быть правильным, одно неправильным и одно невероятным.
0
avatar
И теперь Вы лихо поясняете минусы EFI, ага? Не отдельных убогих недореализаций (коими раньше грешили ноуты), а системы в целом.
GRUB настолько «нормальный», что генерирует конфиг специальной тулзой на основе другого конфига.
Последний раз редактировалось
0
avatar
Не буду себя утруждать, просто прочитай. И какой это тулзой Grub генерирует конфиг на основе другого конфига? update-grub что ли? И да, если Grub настолько «плохой» по твоему мнению, то почему все разработчики дистрибутивов ставят именно его, а не твой rEFInd? Они глупее тебя?
Последний раз редактировалось
?
Из трёх решений одно может быть правильным, одно неправильным и одно невероятным.
0
avatar
Ну вы еще подеритесь, горячие финские парни…
GRUB не так уж и плох. По Крайней мере, позволяет гибко передать параметры ядру, что ценно. Хотя и не интуитивен, но мощен. Действительно, к нему есть обоснованные претензии, но прям говном назвать сложно.
EFI — искусственная приблуда, детище мелкософта. ИМХО- по сути лишняя хрень, и без нее неплохо жили. С её появлением только проблем добавилось, а ничего особенно полезного не появилось. Но и так тоже можно, хрен бы с ней, освоили и эту беду, куда уж деваться…

Вы че сцепились-то? Не понимаю, вроде оба неплохо умеете в оба способа?.. Стоит ли сам вопрос драки?
Последний раз редактировалось
?
Правильные ответы начинаются с правильных вопросов.
0
avatar
Тащемта, параметры ведру позволяет не менее гибко передавать что rEFInd, что (gummi|sd)boot. Более того, там простой и понятный человекочитаемый конфиг.
И если для systemd-boot при версионном именовании ядер их делает по шаблону systemd-boot-manager, то в rEFInd это делается просто руками.
EFI — искусственная приблуда, детище мелкософта.
Детище Intel же. К мелкомягким претензии по поводу SecureBoot.
а ничего особенно полезного не появилось
GPT появилось. Убраны ограничения шестнадцатибитного режима. Параллельная инициализация железа.
Главная проблема EFI это откровенно черезжопные реализации оного.
+1
avatar
Ну GPT -да, тут действительно не возразишь…
Главная проблема EFI это откровенно черезжопные реализации оного.
Я бы сказал- мы именно с реализациями и имеем дело. К самойто технологии претензий нету.
Последний раз редактировалось
?
Правильные ответы начинаются с правильных вопросов.
0
avatar
Вот и и я об этом. В последнее время сильно лучше с этим стало, раньше на каком-нибудь «чудесном» нетпуке действительно было проще включить легаси.
Последний раз редактировалось
0
avatar
Не буду себя утруждать, просто прочитай.
Прочитайте комменты к Вашей же ссылке. Замечу, что автор темы откровенно плавает в ней: какие-то три раздела, путает тип разметки диска и т.д.
И какой это тулзой Grub генерирует конфиг на основе другого конфига? update-grub что ли?
Если быть точным grub-mkconfig.
почему все разработчики дистрибутивов ставят именно его
Отучаемся говорить за всех. Arch, например, никакого стандартного загрузчика не имеет. Хоть lilo ставьте, хоть вообще без загрузчика ядро грузите. Void тоже не обязывает ставить GRUB. manjaro-architect тоже предоставляет выбор.
Используется именно он в силу максимального охвата. EFI-only загрузчики попросту не поддерживают legacy-системы.
Последний раз редактировалось
0
avatar
Кто мешает сделать свой, простой конфиг, ручками?
Последний раз редактировалось
?
Arch Linux x86_64 на btrfs
0
avatar
Абсолютно ничего. Только при первом же обновлении ядра alpm дернет 99-grub.hook, GRUB наш конфиг затрет и водрузит вместо него простыню на основе /etc/default/grub и /etc/grub.d/*. Связано такое поведение с версионной нумерацией содержимого /boot.
Systemd-boot, кстати, действует схожим образом — sdboot-manage, рулит entries-файлами. Но, к чести авторов тулзы, там все прозрачно.
В rEFInd же есть простой как палка refind-linux.conf. Который никто кроме пользователя не трогает.
Последний раз редактировалось
+1
avatar
В grub есть возможность вынести свои настройки в другой файл, к примеру в menu.cfg, а сам grub.cfg заблокировать от изменений. И ничего не затрет его больше.
Другой вопрос надо ли это обычному пользователю.
Но такая возможность есть и многие ей пользуются.
?
Arch Linux x86_64 на btrfs
0
avatar
Безусловно, можно.
Но это приведет к одному из вариантов:
  1. Сочинять свой велосипед для загрузки версионированных ядер. В принципе, все просто: хук и регексп, получающий VERSION из, к примеру, vmlinuz-$VERSION. Вместе они генерируют нам конфиг на основе шаблона.
  2. Использовать дистр с arch-like именованием таковых. Тут все вполне здраво получается.
  3. Попросту забить на обновление ведра, лол.
Только какие преимущества дает GRUB на обычной рабочей станции с EFI, где надо просто грузить ядро?
0
avatar
Grub на обычной рабочей станции с EFI, более универсален, когда используются экзотические FS, шифрование.
?
Arch Linux x86_64 на btrfs
0
avatar
Я писал про обычную рабочую станцию, напомню. Не экзотическую, там GRUB норм ибо умеет стоя в гамаке.
Впрочем, /boot на отдельном разделе позволяет избежать таких проблем. Кроме разве что шифрования /boot.
Последний раз редактировалось
0
avatar
Пожалуй что ты прав, убедил. При случае попробую этот ваш rEFInd, похоже оно того стОит.
Чето-то раньше никогда не задумывался над этими вопросами, что дано то и пользовал. До перехода на Манжаро на Зенвалке и с Lilo тоже жилось неплохо… Хотя Lilo совсем уж примитивен, да и фиг бы сним.
Да! все равно спасибо за пищу для размышлений.
ЗЫ: Может, стОит вынести ваш диалог в отдельную тему? Жаль будет если потеряется…
Последний раз редактировалось
?
Правильные ответы начинаются с правильных вопросов.
0
avatar
Насчет примитивности — думаю, это скорее плюс, раз задачи выполняются. Слака до сих пор (E)LILO использует.
Местами так и вовсе топят за отказ от загрузчика — EFI может загрузить stub-ядро самостоятельно. Но в этом случае, ИМХО, страдает удобство, даже с неизменным именем ядра. Например, изменять параметры ядра напрямую через EFI_STUB не самый удобный вариант. И вот тут простое решение рулит.
ЗЫ: Может, стОит вынести ваш диалог в отдельную тему? Жаль будет если потеряется…
Все равно утонет из-за структуры форума. Некоторые темы по десятку раз поднимаются.
0
avatar
Штатная команда:
sudo grub-mkconfig -o /boot/grub/grub.cfg
Последний раз редактировалось
?
i3-3210 / 10GB / VGA Intel HD 2500 / SSD 240GB / / Kernel 6.6.32 / KDE 5.116 / Plasma 5.27.11 / Ungoogled-Chromium
0
Только зарегистрированные и авторизованные пользователи могут оставлять комментарии.