Zhenja Kaliuta
2021-12-24 17:54:58 UTC
Hi, Rinat!
On Fri, 24 Dec 2021 09:56:42 +0300 Rinat H. Sadretdinow writes:
RHS> Hello All!
RHS> У меня сейчас установлен драйвер NVIDIA вот такой версии:
У меня нет ни nvidia, ни dkms сейчас, поэтому попробую погадать.
RHS> ~~~
RHS> [***@sys3175 ~]$ nvidia-installer -v
RHS> nvidia-installer: version 470.82.00
RHS> The NVIDIA Software Installer for Unix/Linux.
RHS> This program is used to install, upgrade and uninstall The NVIDIA
RHS> Accelerated Graphics Driver Set for Linux-x86_64.
RHS> [***@sys3175 ~]$
RHS> ~~~
RHS> Захотел я его проапгрейдить. Hу сходил на сайт:
RHS> https://www.nvidia.ru/Download/index.aspx?lang=ru
RHS> и скачал там:
RHS> NVIDIA-Linux-x86_64-470.94.run
RHS> Запустил его из-под root, он мне сказал что "Обнаружен 470.82, он
RHS> будет предварительно удалён, а после я тебе 470.94 установлю". Я
RHS> согласился. Он попыхтел, сказал что 470.82 удалён, а 470.94
RHS> установлен. Перезагружаюсь -- не входит в X вообще. Лезу в
RHS> /var/log/messages. А там:
RHS> ~~~
RHS> Dec 24 12:09:14 sys3175 kernel: NVRM: loading NVIDIA UNIX x86_64 Kernel
RHS> Module 470.82.00 Thu Oct 14 10:24:40 UTC 2021
RHS> Dec 24 12:09:14 sys3175 kernel: nvidia-modeset: Loading NVIDIA Kernel
RHS> Mode Setting Driver for UNIX platforms 470.82.00 Thu Oct 14 10:17:58 UTC
RHS> 2021
RHS> ~~~
RHS> Hу и после этого:
RHS> ~~~
RHS> Dec 24 09:10:27 sys3175 kernel: NVRM: API mismatch: the client has the
RHS> version 470.94, but#012NVRM: this kernel module has the version
RHS> 470.82.00. Please#012NVRM: make sure that this kernel module and all
RHS> NVIDIA driver#012NVRM: components have the same version.
RHS> Dec 24 09:10:27 sys3175 kernel: NVRM: API mismatch: the client has the
RHS> version 470.94, but#012NVRM: this kernel module has the version
RHS> 470.82.00. Please#012NVRM: make sure that this kernel module and all
RHS> NVIDIA driver#012NVRM: components have the same version.
RHS> Dec 24 09:10:27 sys3175 kernel: NVRM: API mismatch: the client has the
RHS> version 470.94, but#012NVRM: this kernel module has the version
RHS> 470.82.00. Please#012NVRM: make sure that this kernel module and all
RHS> NVIDIA driver#012NVRM: components have the same version.
RHS> Dec 24 09:10:27 sys3175 kernel: NVRM: API mismatch: the client has the
RHS> version 470.94, but#012NVRM: this kernel module has the version
RHS> 470.82.00. Please#012NVRM: make sure that this kernel module and all
RHS> NVIDIA driver#012NVRM: components have the same version.
RHS> ~~~
RHS> со всеми вытекающими. Причём dkms говорит что у меня отныне 470.94:
RHS> ~~~
RHS> [***@sys3175 ~]$ dkms status
RHS> nvidia/470.94, 5.15.10-200.fc35.x86_64, x86_64: installed
RHS> [***@sys3175 ~]$
RHS> ~~~
RHS> но ведро считает что у меня до сих пор 470.82.00:
RHS> ~~~
RHS> [***@sys3175 ~]# lsinitrd | grep extra/nvidia
RHS> -rw-r--r-- 1 root root 24028 Oct 28 22:55
RHS> usr/lib/modules/5.15.10-200.fc35.x86_64/extra/nvidia-drm.ko.xz
RHS> -rw-r--r-- 1 root root 23809056 Oct 28 22:55
RHS> usr/lib/modules/5.15.10-200.fc35.x86_64/extra/nvidia.ko.xz
RHS> -rw-r--r-- 1 root root 515404 Oct 28 22:55
RHS> usr/lib/modules/5.15.10-200.fc35.x86_64/extra/nvidia-modeset.ko.xz
RHS> [***@sys3175 ~]#
RHS> ~~~
судя по man, lsinitrd -- часть dracut (initrd инфраструктура) и должен
по-умолчанию брать initramfs для текущего ядра.
Если dkms не обновил initrd (лень смотреть его скрипты) и модули грузятся
оттуда, то логично, хоть и странно (что не обновил). dracut --force должен
перегенерировать. А depmod -v | grep nvidia что показывает?
RHS> Так и есть, модули старые, 28 октября, от 470.82.
RHS> Изучаю /boot/initramfs$(uname -r).img, там кроме
RHS> microcode/GenuineIntel.bin больше нифига ничего нет.
Звучит странно.
RHS> Откатился пока что обратно на 470.82 чтобы была возможность загрузить
RHS> GoldEd и тут поспрашивать. В принципе мне ничуть не критичны драйвера
RHS> 470.94, я и на 470.82 прекрасно живу, но тут у меня уже принцип полез
RHS> -- какого хрена ведро считает себя умнее меня?
RHS> Посему вопрос (вопросы):
RHS> 1) где, чёрт возьми, хранится инфа о том, что ведро хочет 470.82, хотя
RHS> уже установлено 470.94?
У тебя установлены библиотеки и драйвер X новые, но ядерный модуль старый.
RHS> 2) откуда lsinitrd эту инфу берёт? (можно конечно на его исходники
RHS> глянуть и узнать откуда оно инфу цепляет, но не хотелось бы сразу же
RHS> нырять в такие дебри).
Можно в man глянуть.
RHS> 3) как сказать ведру чтобы оно забыло про 470.82 насовсем и стало юзать
RHS> 470.94?
RHS> И гуглил, и FAQ'и всякие читал, но нифига ответ так и не нашёл. Что
RHS> называется "и унитаз свой приносил, и задницу показывал, но не продают
RHS> мне нужную туалетную бумагу!"
RHS> Bye!
On Fri, 24 Dec 2021 09:56:42 +0300 Rinat H. Sadretdinow writes:
RHS> Hello All!
RHS> У меня сейчас установлен драйвер NVIDIA вот такой версии:
У меня нет ни nvidia, ни dkms сейчас, поэтому попробую погадать.
RHS> ~~~
RHS> [***@sys3175 ~]$ nvidia-installer -v
RHS> nvidia-installer: version 470.82.00
RHS> The NVIDIA Software Installer for Unix/Linux.
RHS> This program is used to install, upgrade and uninstall The NVIDIA
RHS> Accelerated Graphics Driver Set for Linux-x86_64.
RHS> [***@sys3175 ~]$
RHS> ~~~
RHS> Захотел я его проапгрейдить. Hу сходил на сайт:
RHS> https://www.nvidia.ru/Download/index.aspx?lang=ru
RHS> и скачал там:
RHS> NVIDIA-Linux-x86_64-470.94.run
RHS> Запустил его из-под root, он мне сказал что "Обнаружен 470.82, он
RHS> будет предварительно удалён, а после я тебе 470.94 установлю". Я
RHS> согласился. Он попыхтел, сказал что 470.82 удалён, а 470.94
RHS> установлен. Перезагружаюсь -- не входит в X вообще. Лезу в
RHS> /var/log/messages. А там:
RHS> ~~~
RHS> Dec 24 12:09:14 sys3175 kernel: NVRM: loading NVIDIA UNIX x86_64 Kernel
RHS> Module 470.82.00 Thu Oct 14 10:24:40 UTC 2021
RHS> Dec 24 12:09:14 sys3175 kernel: nvidia-modeset: Loading NVIDIA Kernel
RHS> Mode Setting Driver for UNIX platforms 470.82.00 Thu Oct 14 10:17:58 UTC
RHS> 2021
RHS> ~~~
RHS> Hу и после этого:
RHS> ~~~
RHS> Dec 24 09:10:27 sys3175 kernel: NVRM: API mismatch: the client has the
RHS> version 470.94, but#012NVRM: this kernel module has the version
RHS> 470.82.00. Please#012NVRM: make sure that this kernel module and all
RHS> NVIDIA driver#012NVRM: components have the same version.
RHS> Dec 24 09:10:27 sys3175 kernel: NVRM: API mismatch: the client has the
RHS> version 470.94, but#012NVRM: this kernel module has the version
RHS> 470.82.00. Please#012NVRM: make sure that this kernel module and all
RHS> NVIDIA driver#012NVRM: components have the same version.
RHS> Dec 24 09:10:27 sys3175 kernel: NVRM: API mismatch: the client has the
RHS> version 470.94, but#012NVRM: this kernel module has the version
RHS> 470.82.00. Please#012NVRM: make sure that this kernel module and all
RHS> NVIDIA driver#012NVRM: components have the same version.
RHS> Dec 24 09:10:27 sys3175 kernel: NVRM: API mismatch: the client has the
RHS> version 470.94, but#012NVRM: this kernel module has the version
RHS> 470.82.00. Please#012NVRM: make sure that this kernel module and all
RHS> NVIDIA driver#012NVRM: components have the same version.
RHS> ~~~
RHS> со всеми вытекающими. Причём dkms говорит что у меня отныне 470.94:
RHS> ~~~
RHS> [***@sys3175 ~]$ dkms status
RHS> nvidia/470.94, 5.15.10-200.fc35.x86_64, x86_64: installed
RHS> [***@sys3175 ~]$
RHS> ~~~
RHS> но ведро считает что у меня до сих пор 470.82.00:
RHS> ~~~
RHS> [***@sys3175 ~]# lsinitrd | grep extra/nvidia
RHS> -rw-r--r-- 1 root root 24028 Oct 28 22:55
RHS> usr/lib/modules/5.15.10-200.fc35.x86_64/extra/nvidia-drm.ko.xz
RHS> -rw-r--r-- 1 root root 23809056 Oct 28 22:55
RHS> usr/lib/modules/5.15.10-200.fc35.x86_64/extra/nvidia.ko.xz
RHS> -rw-r--r-- 1 root root 515404 Oct 28 22:55
RHS> usr/lib/modules/5.15.10-200.fc35.x86_64/extra/nvidia-modeset.ko.xz
RHS> [***@sys3175 ~]#
RHS> ~~~
судя по man, lsinitrd -- часть dracut (initrd инфраструктура) и должен
по-умолчанию брать initramfs для текущего ядра.
Если dkms не обновил initrd (лень смотреть его скрипты) и модули грузятся
оттуда, то логично, хоть и странно (что не обновил). dracut --force должен
перегенерировать. А depmod -v | grep nvidia что показывает?
RHS> Так и есть, модули старые, 28 октября, от 470.82.
RHS> Изучаю /boot/initramfs$(uname -r).img, там кроме
RHS> microcode/GenuineIntel.bin больше нифига ничего нет.
Звучит странно.
RHS> Откатился пока что обратно на 470.82 чтобы была возможность загрузить
RHS> GoldEd и тут поспрашивать. В принципе мне ничуть не критичны драйвера
RHS> 470.94, я и на 470.82 прекрасно живу, но тут у меня уже принцип полез
RHS> -- какого хрена ведро считает себя умнее меня?
RHS> Посему вопрос (вопросы):
RHS> 1) где, чёрт возьми, хранится инфа о том, что ведро хочет 470.82, хотя
RHS> уже установлено 470.94?
У тебя установлены библиотеки и драйвер X новые, но ядерный модуль старый.
RHS> 2) откуда lsinitrd эту инфу берёт? (можно конечно на его исходники
RHS> глянуть и узнать откуда оно инфу цепляет, но не хотелось бы сразу же
RHS> нырять в такие дебри).
Можно в man глянуть.
RHS> 3) как сказать ведру чтобы оно забыло про 470.82 насовсем и стало юзать
RHS> 470.94?
RHS> И гуглил, и FAQ'и всякие читал, но нифига ответ так и не нашёл. Что
RHS> называется "и унитаз свой приносил, и задницу показывал, но не продают
RHS> мне нужную туалетную бумагу!"
RHS> Bye!