Это возможно, загрузив исходные коды ядра из более новой версии Ubuntu — скажем, Ubuntu 21.10 (impish), используя соответствующий контейнер Docker, а затем скомпилируйте ядро в целевой системе 18.04 LTS с небольшими изменениями следующим образом:
mkdir -p ~/Загрузки/impish-kernel
Затем поместите код ниже в скомпилировать-impish-kernel.sh
сценарий внутри ~/Загрузки/impish-kernel
каталог с помощью любого текстового редактора:
#!/бин/баш
# подготовить скрипт загрузки
кошка << EOF > script.sh
установить -х
sed -i "s/# deb-src/deb-src/g" /etc/apt/sources.list
apt-получить обновление && \
apt-get install -y dpkg-dev
cd && apt-получить исходный код Linux
chown -R 1000:1000 линукс*
EOF
# запускаем скрипт внутри контейнера
docker run --rm -v ${PWD}:/root -it ubuntu:impish sh /root/script.sh
компакт-диск Linux-5.13.0
эхо 9 > дебиан/совместимость
LANG=C fakeroot debian/правила чистые
sed -i "s/^CONFIG_KASAN/#CONFIG_KASAN/" debian.master/config/annotations
sed -i "s/^CONFIG_KCSAN/#CONFIG_KCSAN/" debian.master/config/annotations
LANG=C fakeroot debian/rules бинарные-заголовки бинарный-общий бинарный-перарх
ls ../linux-headers-5.13*.deb ../linux-image-unsigned-5.13*.deb ../linux-modules-*.deb
Запустите скрипт по
chmod +x скомпилировать-impish-kernel.sh
./compile-impish-kernel.sh
и, наконец, установите пакеты ядра 5.13 с помощью
sudo apt-get install ./linux-headers-5.13*.deb ./linux-image-unsigned-5.13*.deb ./linux-modules-*.deb
В результате будет установлено ядро 5.13. Драйвер Nvidia будет работать нормально.