Отсутствует директория /etc/grub.d/

Изображение пользователя Aleksandru71.

Во время очередного обновления увидел что обновилось ядро, но при загрузке системы в списке этого ядра не оказалось.
Оказывается у меня куча ядер, а используется самое старое.
Докопался я до того, что у меня почему то отсутствует директория /etc/grub.d/ видимо она не создалась во время установки системы.
И вот как её создать, эту директорию причем с содержимым, я ни где не нашел.

0
krolik - 13 Октябрь, 2014 - 18:01
Изображение пользователя krolik.

Попробуй создать директорию /etc/grub.d/ вручную под рутом, и залей туда вот эти файлы, это я скопировал у себя. Ну и посмотри что будет. Вот ссылка на файлы, предварительно распакуй https://yadi.sk/d/CsyV3drnbyc4Y Ну на ваш страх и риск.) Может какой то другой есть способ, но я не знаю.

0
Aleksandru71 - 13 Октябрь, 2014 - 18:28
Изображение пользователя Aleksandru71.

Не стал я заливать ваши файлы. После переустановки всего связанного с grub, директория появилась с таким же содержимым как вы мне прислали и даже больше.
Но новых ядер, груб все равно не видит.

0
AlexBKost - 13 Октябрь, 2014 - 18:36

sudo update-grub2

0
AlexBKost - 13 Октябрь, 2014 - 18:30

А если в режиме Live-CD загрузиться и скопировать напрямую? Или при этом папка /etc/grub.d/ тоже не создается? Так хоть файлы родные будут.

0
Aleksandru71 - 13 Октябрь, 2014 - 18:44
Изображение пользователя Aleksandru71.

Папка создалась /etc/grub.d/ я выше написал.
Но новых ядер не видно.

Хотя с обновлением сегодня пришло ядро linux-headers-3.13.0-37
0
AlexBKost - 13 Октябрь, 2014 - 18:57

А /boot/initrd.img-3.13.0-37-generic имеется?

0
MacLeod - 13 Октябрь, 2014 - 19:04
Изображение пользователя MacLeod.

Переустановите пакеты ядра 3.13.0-37, ибо если в момент его установки были проблемы с grub, скрипты могли выполниться криво.

0
Aleksandru71 - 13 Октябрь, 2014 - 19:58
Изображение пользователя Aleksandru71.

Спасибо получилось. Правда система с ядром 3.13.0-37 не работает должным образом.
Но это уже другой вопрос.

+2
AlexBKost - 13 Октябрь, 2014 - 21:40

Что получилось — хорошо. Но остались непонятки в нюансах. Например, предыдущие ядра в диапазоне 3.13.0-31 — 3.13.0-36 ранее устанавливались/обновлялись и работали ли правильно?
Не скупитесь на ответы, тут кроме помощи другому может параллельно проходить и обучение прочих.

+1
MacLeod - 13 Октябрь, 2014 - 22:02
Изображение пользователя MacLeod.

Оказывается у меня куча ядер, а используется самое старое.
Я так понял, что устанавливаться они устанавливались, но, из-за косяка с grub, post-скрипты не отрабатывали корректно и ядро не попадало в список на загрузку.
Предположу, что система вообще все время работала на одном ядре.

0
Aleksandru71 - 13 Октябрь, 2014 - 22:32
Изображение пользователя Aleksandru71.

Да вроде бы нет, ядро у меня самое раннее 3.13.0-24 сейчас 3.13.0-30.
Вот что интересное в синаптике наблюдаю: пакеты linux-headers-3.13.0-36-generic и linux-headers-3.13.0-36 установлены.
А пакет linux-image-3.13.0-36-generic не установлен.
Тоже самое и с ядром 3.13.0-37.
Доустановил 37-е ядро, систма с ним грузится, но не работает мышка, сеть, и разрешение экрана не стандартное.
У меня 32 репозитория подключено, могут быть из за этого такие проблемы?

0
AlexBKost - 13 Октябрь, 2014 - 23:18

Если сравнивать со сборкой Fierta, а у него тоже стоят все ядра гамузом и нормально обновляются (пока во всяком случае), а ppa только 7, то ваши 32 могут выглядеть вполне логичным объяснением подобного поведения системы. Но не факт.
Вопросом остается на каком этапе произошла эта неприятность с ядрами и сможем ли мы докопаться до истины?

0
Fierta - 13 Октябрь, 2014 - 23:26
Изображение пользователя Fierta.

Они не только нормально обновляются, но и еще нормально удаляются, консоль сообщает об этом.

0
AlexBKost - 14 Октябрь, 2014 - 00:03

Нормальное удаление ядер в вашей сборке тут никому не поможет. Тут ядра обновляются ненормально. Ключевым было только упоминание количества добавленных ppa, а в общем у вас всё хорошо.
Мне ваша сборка пришла на ум, как отличный пример по обновляемости и не настолько простой, как голая система по ppa.

0
MacLeod - 14 Октябрь, 2014 - 00:50
Изображение пользователя MacLeod.

Ну, значит, в какой-то момент один из скриптов при установке/обновлении какого-то пакета что-то натворил/поломал. Возможно, это было при попытке собрать модуль для обновляемого ядра на какой-нить виртуалбокс или нвидию...
То, что 3.13.0-30 работает, а 3.13.0-37 - нет, это, как минимум, очень странно. Опять же, что проблемы с разрешением - возможно, не собрался модуль на нвидию, и поможет переустановка пакетов с видеодрайверами, но вот мышь и сеть... Сравните список загруженных модулей ядра на том и на другом, что ли.
А количество репозиториев тут влиять не должно, на 3.13.0-30 же работает все.

0
Aleksandru71 - 14 Октябрь, 2014 - 17:40
Изображение пользователя Aleksandru71.

Сейчас переустановил ядро 3.13.0-37 работает все кроме нвидиевсого драйвера.
По первости видеодрайвер я ставил из оф реп.
Потом из: ppa:ubuntu-x-swat/x-updates.
Затем из: xorg-edgers/ppa/ubuntu
Сейчас установлен nvidia driver 340.46
С ядра 3.13.0-24 по 3.13.0-30 они ядра, нормально обновлялись. После 3.13.0-30 до 3.13.0-37 скачивались при обновлениях но не устанавливались.

0
MacLeod - 14 Октябрь, 2014 - 17:57
Изображение пользователя MacLeod.

Т.е. nvidia 340.46 работает на 3.13.0-30, но не работает на 3.13.0-37?
При установке ругается на что-нибудь? Он по идее, при установке, должен собирать модуль на самое свежее ядро и dkms. При установке пишет, что собирает на 3.13.0-37?
Пакеты от 3.13.0-37 все нужные установлены?
ii  linux-headers-3.13.0-37                     3.13.0-37.64                                 all          Header files related to Linux kernel version 3.13.0
ii  linux-headers-3.13.0-37-generic             3.13.0-37.64                                 amd64        Linux kernel headers for version 3.13.0 on 64 bit x86 SMP
ii  linux-headers-3.17.0-031700                 3.17.0-031700.201410060605                   all          Header files related to Linux kernel version 3.17.0
ii  linux-headers-3.17.0-031700-lowlatency      3.17.0-031700.201410060605                   amd64        Linux kernel headers for version 3.17.0 on 64 bit x86 SMP
ii  linux-headers-generic                       3.13.0.37.44                                 amd64        Generic Linux kernel headers
ii  linux-image-3.13.0-37-generic               3.13.0-37.64                                 amd64        Linux kernel image for version 3.13.0 on 64 bit x86 SMP
ii  linux-image-3.17.0-031700-lowlatency        3.17.0-031700.201410060605                   amd64        Linux kernel image for version 3.17.0 on 64 bit x86 SMP
ii  linux-image-extra-3.13.0-37-generic         3.13.0-37.64                                 amd64        Linux kernel extra modules for version 3.13.0 on 64 bit x86 SMP

В отличие от ядер, установленных вручную, должен быть пакет linux-image-extra-3.13.0-37-generic.

0
Aleksandru71 - 14 Октябрь, 2014 - 18:50
Изображение пользователя Aleksandru71.

Установил все из вашего списка, заработало все и видеодрайвер в том числе.
Но раньше я всегда ставил три пакета, кажется этих:
linux-headers-3.13.0-37
linux-headers-3.13.0-37-generic
linux-image-3.13.0-37-generic
И все работало. Почему сейчас не так?

0
Aleksandru71 - 14 Октябрь, 2014 - 18:12
Изображение пользователя Aleksandru71.

Список модулей 3.13.0-30

3.13.0-37:
0
MacLeod - 14 Октябрь, 2014 - 18:51
Изображение пользователя MacLeod.

Похоже, не собраны модули на nvidia и virtualbox.
[email protected]:~/tmp/kern_diff$ diff 37.txt 30.txt | grep nvidia
> nvidia 10548695 39
> drm 303102 2 nvidia
[email protected]:~/tmp/kern_diff$ diff 37.txt 30.txt | grep vbox
> vboxpci 23194 0
> vboxnetadp 25670 0
> vboxnetflt 27613 0
> vboxdrv 409815 3 vboxnetadp,vboxnetflt,vboxpci

Надо разбираться, почему они не собираются.

+1
MacLeod - 13 Октябрь, 2014 - 18:59
Изображение пользователя MacLeod.

Не нужно ничего руками создавать.
Смотрим, в каком пакете файлы из данного каталога:

Итак, это grub-common.
Смотрим, какие пакеты grub установлены:
Пуржим их через dpkg -P или apt-get purge, и, не перезагружаясь, ставим заново через apt-get install.
В случае загрузки с MBR диска вместо grub-efi должен быть grub-pc.

Отправить комментарий

CAPTCHA на основе изображений
Введите цифры