Форум русскоязычного сообщества Ubuntu


Увидели сообщение с непонятной ссылкой, спам, непристойность или оскорбление?
Воспользуйтесь ссылкой «Сообщить модератору» рядом с сообщением!

Автор Тема: Ядро 5.19.0-32  (Прочитано 186220 раз)

0 Пользователей и 2 Гостей просматривают эту тему.

Оффлайн medusa_10001

  • Автор темы
  • Любитель
  • *
  • Сообщений: 62
    • Просмотр профиля
Ядро 5.19.0-32
« : 03 Марта 2023, 15:51:50 »
Доброго времени суток. Уважаемые Господа, возник вопрос - система оповестила о наличии обновлений среди которых было и обновление ядра с версии 5.15.0-60 до версии 5.19.0-32. Ядро я загрузил, но старое сразу удалять не стал - перезагрузился и через меню Advanced выбрал загрузку с нового ядра. Создался виртуальный диск, но USB 2.0 не стали монтироваться. Ранее я для включения USB 3.0 выполнил следующую процедуру:

1. Открыть /etc/default/grub от имени администратора
2. Добавить строку GRUB_CMDLINE_LINUX="iommu=soft"
3. В терминале $ sudo update-grub
4. Перезагрузиться, Войти в BIOS и отключить IOMMU

Порывшись в Сети мне подсказали, что есть несколько иной способ:
GRUB_CMDLINE_LINUX="amd_iommu=on iommu=pt"
# GRUB_CMDLINE_LINUX="iommu=soft"
   
   При этом в BIOS включаем IOMMU. Результат таков, что 2.0 включились, но 3.0 отключились. Сейчас подключил ядро 5.15.0-60. С ним все работает. Все работало и обновлялось до этого момента. Может вы сталкивались с подобной проблемой? Спасибо.

О системе
(Нажмите, чтобы показать/скрыть)

Для 5.15.0-60
lsusb
(Нажмите, чтобы показать/скрыть)

Для 5.19.0-35
lsusb
(Нажмите, чтобы показать/скрыть)


Пользователь добавил сообщение 05 Марта 2023, 03:02:33:
Еще один момент, который мне не понятен. Это файл grub:
...
GRUB_DEFAULT="0"
#GRUB_TIMEOUT_STYLE="hidden"
GRUB_TIMEOUT_STYLE="menu"
GRUB_TIMEOUT="15"
GRUB_DISTRIBUTOR="`lsb_release -i -s 2> /dev/null || echo Debian`"
GRUB_CMDLINE_LINUX_DEFAULT="quiet splash scsi_mod.use_blk_mq=1 dm_mod.use_blk_mq=1"
GRUB_CMDLINE_LINUX="amd_iommu=on iommu=pt"
...

А вот вывод параметров загрузки ядра:
cat /proc/cmdline
BOOT_IMAGE=/vmlinuz-5.19.0-35-generic root=UUID=b6a3c53a-b83c-4d0a-8482-c1c1b27d59f3 ro iommu=soft quiet splash scsi_mod.use_blk_mq=1 dm_mod.use_blk_mq=1 vt.handoff=7

Как исправить данную проблему?(((( Спасибо.
=============================================================================================================

Цитата: Правила форума
1.4. Листинги и содержимое текстовых файлов следует добавлять в сообщение с помощью тегов [spoiler]...[/spoiler] или [code]...[/code], либо прикреплять к сообщению в виде отдельного файла.

То, что я Вам "подправил" с помощью [code]...[/code] -выделил красным цветом с курсивом.
Таким образом информация воспринимается лучше - видно, что  пишите ВЫ, а что - "отвечает" система.
=Onlininer=
« Последнее редактирование: 05 Марта 2023, 03:20:05 от Onlininer »

Оффлайн БТР

  • Заслуженный пользователь
  • СуперМодератор
  • Старожил
  • *
  • Сообщений: 6161
    • Просмотр профиля
Re: Ядро 5.19.0-32
« Ответ #1 : 04 Марта 2023, 23:37:03 »
Как исправить данную проблему?((((
Если проблема в том, что ваши изменения не применились, то нужно обновить конфиг загрузчика:sudo update-grub

Оффлайн medusa_10001

  • Автор темы
  • Любитель
  • *
  • Сообщений: 62
    • Просмотр профиля
Re: Ядро 5.19.0-32
« Ответ #2 : 05 Марта 2023, 00:05:58 »
Цитировать
Если проблема в том, что ваши изменения не применились, то нужно обновить конфиг загрузчика:

Я обновлял, но решение оказалось гораздо ближе. Я еще раз изучил скрипт в Grub Castomizer и обнаружил такую вот не задачу:

(Нажмите, чтобы показать/скрыть)
Я отредактировал данный скрипт, заменив iommu=soft на amd_iommu=on iommu=pt и все запустилось. Остается не ясным только то, почему редактирование файла /etc/default/grub с последующим sudo update-grub не перезаписало данную строку автоматически. Спасибо.

Оффлайн БТР

  • Заслуженный пользователь
  • СуперМодератор
  • Старожил
  • *
  • Сообщений: 6161
    • Просмотр профиля
Re: Ядро 5.19.0-32
« Ответ #3 : 05 Марта 2023, 17:00:53 »
Остается не ясным только то, почему редактирование файла /etc/default/grub с последующим sudo update-grub не перезаписало данную строку автоматически.
medusa_10001, значит обновления не было. Нужно смотреть лог операции при запуске из терминала. Какое к этому отношение имеет Grub Customizer?

Оффлайн medusa_10001

  • Автор темы
  • Любитель
  • *
  • Сообщений: 62
    • Просмотр профиля
Re: Ядро 5.19.0-32
« Ответ #4 : 06 Марта 2023, 18:58:09 »
Цитировать
Какое к этому отношение имеет Grub Customizer?

Отношение в том смысле, что я в ручную отредактировал скрипт. Файл grub.cfg, как я понял из указания в данном файле
# DO NOT EDIT THIS FILE
#
# It is automatically generated by grub-mkconfig using templates
# from /etc/grub.d and settings from /etc/default/grub
#

редактировать в ручную не стоит. И я просто отредактировал данный скрипт через Grub Customizer. Спасибо.
« Последнее редактирование: 06 Марта 2023, 19:02:17 от medusa_10001 »

Оффлайн БТР

  • Заслуженный пользователь
  • СуперМодератор
  • Старожил
  • *
  • Сообщений: 6161
    • Просмотр профиля
Re: Ядро 5.19.0-32
« Ответ #5 : 06 Марта 2023, 21:26:11 »
как я понял из указания в данном файле  <> редактировать в ручную не стоит.
Там написано, что редактировать grub.cfg вообще не следует ни ручным, ни другим способом, кроме как правкой файлов в /etc/grub.d/* и /etc/default/grub.
Вам нужно было отредактировать /etc/default/grub, после чего обновить grub.cfg:sudo update-grub

Оффлайн medusa_10001

  • Автор темы
  • Любитель
  • *
  • Сообщений: 62
    • Просмотр профиля
Re: Ядро 5.19.0-32
« Ответ #6 : 08 Марта 2023, 14:42:57 »
Цитировать
Вам нужно было отредактировать /etc/default/grub, после чего обновить grub.cfg:

Давайте еще кружочек. Итак, я получаю новое обновление. которое включает в себя новое ядро. Устанавливаю эти обновления. но старое ядро не удаляю. Далее, перезапускаю ситему и загружаюсь с нового ядра через ramdisk. Система грузится и все порты подключаются без ошибок. Далее, я открываю Grab Castomizer и в скрипте прописываю новое ядро. Далее, открываю /etc/default/grub меняю строку  GRUB_CMDLINE_LINUX="iommu=soft" на GRUB_CMDLINE_LINUX="amd_iommu=on iommu=pt", сохраняю данный файл, после чего выполняю команду в терминале sudo update-grub. Пререзапускаю систему и порты 3.0 отключаются. Порывшись 2 дня (не постоянно конечно) захожу в файл grub.cfg и обнаруживаю там интересную вещь:
(Нажмите, чтобы показать/скрыть)
если предположить. что я не выполнил sudo update-grub, то как изменилась запись в меню submenu "Advanced options for Ubuntu"? Конечно, мои знания Линукс, по истечении 2,5 лет, не столь глубоки, но обновление файла grub - операция обязательная и элементарная. Вот я и пытаюсь понять, почему выполнив все операции в скрипте основной загрузки не перезаписалась строка. А Вы пытаетесь меня убедить в том, что я после внесенных правок не выполнил обновление загрузчика. Спасибо.
« Последнее редактирование: 08 Марта 2023, 14:45:32 от medusa_10001 »

Morisson

  • Гость
Re: Ядро 5.19.0-32
« Ответ #7 : 08 Марта 2023, 15:31:17 »
Не используйте grub-customizer. Он старый, не развивается и в некоторых случаях работает неправильно.
Правьте конфиг руками, а не через эту прогу.
При правке grub.cfg если сделать grub-update правки слетают.

Оффлайн andytux

  • Заслуженный пользователь
  • Старожил
  • *
  • Сообщений: 6834
    • Просмотр профиля
Re: Ядро 5.19.0-32
« Ответ #8 : 09 Марта 2023, 08:07:22 »
"Однажды Лебедь, Рак да Щука Везти с поклажей воз взялись..."

medusa_10001, вообще твой конфиг груба порождает массу вопросов. Впечатление, что над ним потрудился не один кустомайзер-репаир.
Примерно в порядке формирования конфига.
Цитировать
нужно было отредактировать /etc/default/grub...
Эти переменные обрабатывают скрипты 00_*, 05_*, 10_*. Что там реально, нам неведомо.
Пункт меню, для загрузки самой новой версии системы и подменю "Advanced..." формируются скриптом 10_linux. Опять неведомо.
Но зато видим:
Цитировать
### BEGIN /etc/grub.d/40_custom_proxy ###
menuentry "Ubuntu" --class ubuntu --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-simple-b6a3c53a-b83c-4d0a-8482-c1c1b27d59f3' {
...
### BEGIN /etc/grub.d/41_linux_proxy ###
submenu "Advanced options for Ubuntu"{
menuentry "Ubuntu, with Linux 5.19.0-35-generic" --class ubuntu --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-5.19.0-35-generic-advanced-b6a3c53a-b83c-4d0a-8482-c1c1b27d59f3' {
...
Откуда взялись "40_custom_proxy", "41_linux_proxy", кто ими заведует? По умолчанию нет таких.
Но ясно, всё, что насоздавали предыдущие скрипты, перекроено этими "40_custom_proxy", "41_linux_proxy".
Они изменят даже то, что создано "40_custom". А он как-раз для того и придуман, чтобы в него вносить все пользовательские хотелки, потому он и последний (должен быть), чтобы уже никто не переправил.
Далее...
Цитировать
linux   /vmlinuz-5.19.0-35-generic root=UUID=b6a3c53a-b83c-4d0a-8482-c1c1b27d59f3 ro iommu=soft quiet splash scsi_mod.use_blk_mq=1 dm_mod.use_blk_mq=1 $vt_handoff
Ядро в корне, откуда, зачем?
Изначально в линуксе в корне была символическая ссылка на ядро. Но после 18.04 ее решили удалить, чтобы не засоряла. Теперь все в /boot.

Оффлайн medusa_10001

  • Автор темы
  • Любитель
  • *
  • Сообщений: 62
    • Просмотр профиля
Re: Ядро 5.19.0-32
« Ответ #9 : 09 Марта 2023, 15:15:35 »
Правьте конфиг руками, а не через эту прогу.
При правке grub.cfg если сделать grub-update правки слетают.

Да я бы так и сделал, но правки руками не дали желаемого результата. Конечно, программа устарела, но для меня это стало выходом. Кроме того, иного способа кроме как отредактировать через файл /etc/default/grub, я не знаю, а хотелось бы знать. Спасибо.

Пользователь добавил сообщение 09 Марта 2023, 15:26:10:
Впечатление, что над ним потрудился не один кустомайзер-репаир.

Так в чем проблема? Давайте я выложу полный файл, а Вы, как профессионал, подскажите мне что и где надо убрать или добавить и главное, как это сделать правильно. Я потому и прошу помощь, а мне просто пишут - ты не прав. Выложил полный код скрипта. Спасибо.

/boot/grub/grub.cfg

(Нажмите, чтобы показать/скрыть)
« Последнее редактирование: 09 Марта 2023, 15:26:10 от medusa_10001 »

Оффлайн andytux

  • Заслуженный пользователь
  • Старожил
  • *
  • Сообщений: 6834
    • Просмотр профиля
Re: Ядро 5.19.0-32
« Ответ #10 : 09 Марта 2023, 16:02:37 »
Я еще часто пишу: "сам-то смотрел в свой конфиг".
Итак, смотрим...
Цитировать
### END /etc/grub.d/05_debian_theme ###

### BEGIN /etc/grub.d/10_linux_proxy ###
После 05_debian_theme никаких, должных быть по умолчанию, 10_linux, сразу невесть откуда взявшиеся 10_linux_proxy. Поэтому редактирование grub/default ничего не дало.
После которого сразу пошли "40_custom_proxy".

Цитировать
способа кроме как отредактировать через файл /etc/default/grub, я не знаю
Способ называется "40_custom".
40_custom у тебя преобразился в 48_custom_proxy. На это название и буду опираться.
Этот файл как раз и придуман, чтобы в него писать все пользовательские конфиги. Поэтому он последний, чтобы никто его не перебил.
Внимательно причитай, что в заголовке этого файла. Заголовок не трогай. Все добавляй после заголовка.
update-grub проверяет синтакис. Если будут ошибки, то он создаст рядом новый конфиг с другим именем, но действующим останется старый.
Даже если он пропустит ошибки, то эти изменеия будут в конце конфига. Как правило, часть конфига до ошибки останется действующей.

Оффлайн medusa_10001

  • Автор темы
  • Любитель
  • *
  • Сообщений: 62
    • Просмотр профиля
Re: Ядро 5.19.0-32
« Ответ #11 : 09 Марта 2023, 16:23:40 »
Все добавляй после заголовка.

Ну хорошо. Вот, собственно, текст файла:
48_custom_proxy
#!/bin/sh
#THIS IS A GRUB PROXY SCRIPT
'/etc/grub.d/proxifiedScripts/custom' | /etc/grub.d/bin/grubcfg_proxy "+*
+#text
-'Ubuntu'~dd6b20e133a8589631dafbcaf0c7691d~

Вопрос - я должен скопировать то, что находится в grub.cfg? Cпасибо.
40_custom_proxy
#!/bin/sh
#THIS IS A GRUB PROXY SCRIPT
'/etc/grub.d/proxifiedScripts/custom' | /etc/grub.d/bin/grubcfg_proxy "+*
+#text
-'Ubuntu'~dd6b20e133a8589631dafbcaf0c7691d~

41_linux_proxy
#!/bin/sh
#THIS IS A GRUB PROXY SCRIPT
'/etc/grub.d/proxifiedScripts/linux' | /etc/grub.d/bin/grubcfg_proxy "-*
-#text
-'Ubuntu'~dd6b20e133a8589631dafbcaf0c7691d~
+'SUBMENU' as 'Advanced options for Ubuntu'{+'Advanced options for Ubuntu'/*, +'Advanced options for Ubuntu'/'Ubuntu, with Linux 5.19.0-35-generic'~7c834885e54902c851a96c7255bf07ca~, +'Advanced options for Ubuntu'/'Ubuntu, with Linux 5.19.0-35-generic (recovery mode)'~52df48f13f9bad2a3cce07fc12e558ab~, +'Advanced options for Ubuntu'/'Ubuntu, with Linux 5.15.0-60-generic'~6ce82a191c568821ccd36146e0c3da25~, +'Advanced options for Ubuntu'/'Ubuntu, with Linux 5.15.0-60-generic (recovery mode)'~dd42c64f0cd0f74c92eb19a09f9216c8~}
"

Оффлайн andytux

  • Заслуженный пользователь
  • Старожил
  • *
  • Сообщений: 6834
    • Просмотр профиля
Re: Ядро 5.19.0-32
« Ответ #12 : 09 Марта 2023, 18:05:06 »
Честно говоря, как-то это не похоже на то, что я ожидал увидеть. Или я ошибся, или это не то, или я не понимаю, что это.
Например. Вот оригинальный скрипт 40_custom:
#!/bin/sh
exec tail -n +3 $0
# This file provides an easy way to add custom menu entries.  Simply type the
# menu entries you want to add after this comment.  Be careful not to change
# the 'exec tail' line above.
Вот так он выглядит в grub.cfg:
### BEGIN /etc/grub.d/40_custom ###
# This file provides an easy way to add custom menu entries.  Simply type the
# menu entries you want to add after this comment.  Be careful not to change
# the 'exec tail' line above.
### END /etc/grub.d/40_custom ###
Теперь, что у тебя. В grub.cfg вполне похоже:
### BEGIN /etc/grub.d/48_custom_proxy ###

# This file provides an easy way to add custom menu entries.  Simply type the
# menu entries you want to add after this comment.  Be careful not to change
# the 'exec tail' line above.

### END /etc/grub.d/48_custom_proxy ###
А вот сам скрипт:
#!/bin/sh
#THIS IS A GRUB PROXY SCRIPT
'/etc/grub.d/proxifiedScripts/custom' | /etc/grub.d/bin/grubcfg_proxy "+*
+#text
-'Ubuntu'~dd6b20e133a8589631dafbcaf0c7691d~
Я не понимаю.
Впрочем, ты можешь взять оригинальный 40_custom и переименовать его, например, в 49_1custom. Имя скрипта задает порядок выполнения.
Твой должен оказаться между 48_custom_proxy и 49_custom. Хотя, если нет файла custom.cfg (в принципе, имя файла конфига груба может быть любое), можешь назвать его 50_custom.
Добавляем в него код загрузки *бунту, получаем такой скрипт:
#!/bin/sh
exec tail -n +3 $0
# This file provides an easy way to add custom menu entries.  Simply type the
# menu entries you want to add after this comment.  Be careful not to change
# the 'exec tail' line above.
  menuentry '*buntu hi10 [so1202]' --class ubuntu --class gnu-linux --class gnu --class os {
src='so1202'; key='fastboot noresume quiet --'
key="root=LABEL=${src} ${key}"
insmod gzio
search --no-floppy --set --label "${src}"
linux /boot/vmlinuz${version} ${key}
initrd /boot/initrd.img${version}
  }
« Последнее редактирование: 10 Марта 2023, 02:59:16 от andytux »

Оффлайн medusa_10001

  • Автор темы
  • Любитель
  • *
  • Сообщений: 62
    • Просмотр профиля
Re: Ядро 5.19.0-32
« Ответ #13 : 09 Марта 2023, 21:42:05 »
Честно говоря, как-то это не похоже на то, что я ожидал увидеть.

Ну я скопировал полностью текст скрипта. Попробую выполнить то, что вы предлагаете. О результатах отпишусь. Если, конечно, все запустится. как планируется. Я на всякий случай сделал копию директории grub.d. Если будет время взгляните, вдруг обнаружится еще что-то "интересное". Спасибо.

grub.d
https://169828.selcdn.ru/files/grub.d.7z
« Последнее редактирование: 09 Марта 2023, 21:57:34 от medusa_10001 »

Оффлайн andytux

  • Заслуженный пользователь
  • Старожил
  • *
  • Сообщений: 6834
    • Просмотр профиля
Re: Ядро 5.19.0-32
« Ответ #14 : 10 Марта 2023, 04:00:46 »
Если вдруг... И опять, сам-то смотрел свои файлы...
Гадаем по датам файлов.
14 октября 2022. Некто запустил нечто и с тех пор что-то пошло не так.
Эта программка сохранила в каталоге backup копии каталогов /boot/grub, /etc/grub.d. Заменила скрипты в /etc/grub.d своими аналогами.
.script_sources.txt - в этом файле соответствие старых имён скриптов и новых. Помимо этого, есть бинарник bin/grubcfg_proxy, который выполнет "грязную работу". В частности, в скрипте 48_custom_proxy он по своим правилам формирует часть конфига груба.

 

Страница сгенерирована за 0.062 секунд. Запросов: 22.