粗暴解决因ubuntu 18.04因内核省级导致的NVIDIA显卡驱动失效
有一天电脑开机之后发现显示屏分辨率不对,接过一看系统信息发现显卡找不到了,再使用nvidia-smi查看显卡驱动果然打不开了.
以前出现过这种文体,好像是通过重装对应内核版本的dkms来解决,但是这次我发现dkms并没有问题,
sudo apt-get install dkms
安装信息如下:
Reading package lists... Done
Building dependency tree
Reading state information... Done
dkms is already the newest version (2.3-3ubuntu9.7).
The following packages were automatically installed and are no longer required:
libfcitx-core0 libfcitx-qt0 libfcitx-qt5-1 libgettextpo0 liblua5.2-0 libmng2
libpresage-data libpresage1v5 libqt4-dbus libqt4-declarative libqt4-network
libqt4-script libqt4-sql libqt4-sql-mysql libqt4-xml libqt4-xmlpatterns
libqtcore4 libqtdbus4 libqtgui4 linux-headers-5.4.0-132-generic
linux-hwe-5.4-headers-5.4.0-120 linux-hwe-5.4-headers-5.4.0-121
linux-hwe-5.4-headers-5.4.0-122 linux-hwe-5.4-headers-5.4.0-124
linux-hwe-5.4-headers-5.4.0-126 linux-hwe-5.4-headers-5.4.0-128
linux-hwe-5.4-headers-5.4.0-131 linux-hwe-5.4-headers-5.4.0-132
linux-hwe-5.4-headers-5.4.0-42 linux-hwe-5.4-headers-5.4.0-77
linux-image-5.4.0-121-generic linux-image-5.4.0-122-generic
linux-image-5.4.0-124-generic linux-image-5.4.0-126-generic
linux-image-5.4.0-128-generic linux-image-5.4.0-131-generic
linux-image-5.4.0-132-generic linux-modules-5.4.0-121-generic
linux-modules-5.4.0-122-generic linux-modules-5.4.0-124-generic
linux-modules-5.4.0-126-generic linux-modules-5.4.0-128-generic
linux-modules-5.4.0-131-generic linux-modules-5.4.0-132-generic
linux-objects-nvidia-470-5.4.0-121-generic
linux-objects-nvidia-470-5.4.0-122-generic
linux-objects-nvidia-470-5.4.0-124-generic
linux-objects-nvidia-470-5.4.0-126-generic
linux-objects-nvidia-470-5.4.0-128-generic
linux-objects-nvidia-470-5.4.0-131-generic
linux-objects-nvidia-470-5.4.0-132-generic
linux-signatures-nvidia-5.4.0-121-generic
linux-signatures-nvidia-5.4.0-122-generic
linux-signatures-nvidia-5.4.0-124-generic
linux-signatures-nvidia-5.4.0-126-generic
linux-signatures-nvidia-5.4.0-128-generic
linux-signatures-nvidia-5.4.0-131-generic
linux-signatures-nvidia-5.4.0-132-generic presage qdbus qml-module-qtquick2
qt-at-spi qtcore4-l10n shim
Use 'sudo apt autoremove' to remove them.
0 to upgrade, 0 to newly install, 0 to remove and 221 not to upgrade.
因此感觉是因为内核版本升级之后导致的问题.
于是在搜索了全网所有的关于内核升级掉驱动的方法后,我决定按照自己的想法来试一下.
首先我电脑之前是采用ppa安装的方法,不一定适用于所有人.
输入uname -r查看当前内核名字
发现我的内核版本是 5.4.0-136-generic
而我没有删掉之前的内核,因此在grub界面中出现了一堆之前的版本,在使用挨个重启电脑打开不同内核之后,发现最后一次能够正确启动显卡驱动的版本是 5.4.0-132-generic 显卡驱动是 nvidia-driver-470
之后我又在5.4.0-136-generic下尝试了 ubuntu-drivers devices
发现给出的安装信息是这样的:
WARNING:root:_pkg_get_support nvidia-driver-515: package has invalid Support PBheader, cannot determine support level
WARNING:root:_pkg_get_support nvidia-driver-525: package has invalid Support PBheader, cannot determine support level
WARNING:root:_pkg_get_support nvidia-driver-510: package has invalid Support PBheader, cannot determine support level
WARNING:root:_pkg_get_support nvidia-driver-390: package has invalid Support Legacyheader, cannot determine support level
WARNING:root:_pkg_get_support nvidia-driver-515-server: package has invalid Support PBheader, cannot determine support level
WARNING:root:_pkg_get_support nvidia-driver-525-server: package has invalid Support PBheader, cannot determine support level
== /sys/devices/pci0000:00/0000:00:01.0/0000:01:00.0 ==
modalias : pci:v000010DEd00001B06sv00001458sd0000374Cbc03sc00i00
vendor : NVIDIA Corporation
model : GP102 [GeForce GTX 1080 Ti]
driver : nvidia-driver-418-server - distro non-free
driver : nvidia-driver-515 - distro non-free
driver : nvidia-driver-525 - third-party non-free
driver : nvidia-driver-510 - distro non-free
driver : nvidia-driver-390 - distro non-free
driver : nvidia-driver-515-server - distro non-free
driver : nvidia-driver-450-server - distro non-free
driver : nvidia-driver-470-server - distro non-free
driver : nvidia-driver-525-server - distro non-free
driver : nvidia-driver-470 - distro non-free recommended
driver : xserver-xorg-video-nouveau - distro free builtin
也就是说,其实还是支持 nvidia-driver-470的,并且也是推荐.
结合上面的dkms安装信息,我推断是正确的,是因为内核的问题导致的
所以我输入了如下指令:
sudo apt-get install linux-objects-nvidia-470-5.4.0-136-generic
sudo apt-get install linux-signatures-nvidia-5.4.0-136-generic
重启之后发现并没有效果,在一筹莫展之际,我只能死马当活马医的试了一下这条安装命令:
sudo apt-get install nvidia-driver-470
发现有如下的安装信息:
The following additional packages will be installed:
libnvidia-cfg1-470 libnvidia-compute-470 libnvidia-compute-470:i386
libnvidia-decode-470 libnvidia-decode-470:i386 libnvidia-encode-470
libnvidia-encode-470:i386 libnvidia-extra-470 libnvidia-fbc1-470
libnvidia-fbc1-470:i386 libnvidia-gl-470 libnvidia-gl-470:i386
libnvidia-ifr1-470 libnvidia-ifr1-470:i386
linux-modules-nvidia-470-5.4.0-136-generic
linux-modules-nvidia-470-generic-hwe-18.04-edge nvidia-compute-utils-470
nvidia-kernel-common-470 nvidia-kernel-source-470 nvidia-utils-470
xserver-xorg-video-nvidia-470
The following packages will be REMOVED
linux-modules-nvidia-470-5.4.0-132-generic
The following NEW packages will be installed
linux-modules-nvidia-470-5.4.0-136-generic
The following packages will be upgraded:
libnvidia-cfg1-470 libnvidia-compute-470 libnvidia-compute-470:i386
libnvidia-decode-470 libnvidia-decode-470:i386 libnvidia-encode-470
libnvidia-encode-470:i386 libnvidia-extra-470 libnvidia-fbc1-470
libnvidia-fbc1-470:i386 libnvidia-gl-470 libnvidia-gl-470:i386
libnvidia-ifr1-470 libnvidia-ifr1-470:i386
linux-modules-nvidia-470-generic-hwe-18.04-edge nvidia-compute-utils-470
nvidia-driver-470 nvidia-kernel-common-470 nvidia-kernel-source-470
nvidia-utils-470 xserver-xorg-video-nvidia-470
也就是说,其实真的是内核没有升级到对应版本的问题,单独安装时少安装了modules这个模块,
如是顺利进行到下面,自动安装升级和卸载内核后,重启之后问题解决.
nvidia-smi
Sun Jan 8 10:33:01 2023
+-----------------------------------------------------------------------------+
| NVIDIA-SMI 470.161.03 Driver Version: 470.161.03 CUDA Version: 11.4 |
|-------------------------------+----------------------+----------------------+
| GPU Name Persistence-M| Bus-Id Disp.A | Volatile Uncorr. ECC |
| Fan Temp Perf Pwr:Usage/Cap| Memory-Usage | GPU-Util Compute M. |
| | | MIG M. |
|===============================+======================+======================|
| 0 NVIDIA GeForce ... Off | 00000000:01:00.0 On | N/A |
| 0% 37C P8 16W / 250W | 321MiB / 11175MiB | 8% Default |
| | | N/A |
+-------------------------------+----------------------+----------------------+
+-----------------------------------------------------------------------------+
| Processes: |
| GPU GI CI PID Type Process name GPU Memory |
| ID ID Usage |
|=============================================================================|
| 0 N/A N/A 1848 G /usr/lib/xorg/Xorg 139MiB |
| 0 N/A N/A 2915 G /usr/bin/gnome-shell 59MiB |
| 0 N/A N/A 3372 G /usr/lib/firefox/firefox 119MiB |
+-----------------------------------------------------------------------------+
我正在使用i18n从头开始构建一个多语言网络应用程序,虽然我自己可以处理一大堆yml文件,但我说的语言(非常)有限,最终我想寻求外部帮助帮助。我想知道这里是否有人在使用UI插件/gem(与django上的django-rosetta不同)来处理多个翻译器,其中一些翻译器不愿意或无法处理存储库中的100多个文件,处理语言数据。谢谢&问候,安德拉斯(如果您已经在rubyonrails-talk上遇到了这个问题,我们深表歉意) 最佳答案 有一个rails3branchofthetolkgem在github上。您可以通过在Gemfi
我看到这个错误:translationmissing:da.datetime.distance_in_words.about_x_hours我的语言环境文件:http://pastie.org/2944890我的看法:我已将其添加到我的application.rb中:config.i18n.load_path+=Dir[Rails.root.join('my','locales','*.{rb,yml}').to_s]config.i18n.default_locale=:da如果我删除I18配置,帮助程序会处理英语。更新:我在config/enviorments/devolpment
如果我使用ruby版本2.5.1和Rails版本2.3.18会怎样?我有基于rails2.3.18和ruby1.9.2p320构建的rails应用程序,我只想升级ruby的版本,而不是rails,这可能吗?我必须面对哪些挑战? 最佳答案 GitHub维护apublicfork它有针对旧Rails版本的分支,有各种变化,它们一直在运行。有一段时间,他们在较新的Ruby版本上运行较旧的Rails版本,而不是最初支持的版本,因此您可能会发现一些关于需要向后移植的有用提示。不过,他们现在已经有几年没有使用2.3了,所以充其量只能让更
我试过重新启动apache,缓存的页面仍然出现,所以一定有一个文件夹在某个地方。我没有“公共(public)/缓存”,那么我还应该查看哪些其他地方?是否有一个URL标志也可以触发此效果? 最佳答案 您需要触摸一个文件才能清除phusion,例如:touch/webapps/mycook/tmp/restart.txt参见docs 关于ruby-如何在Ubuntu中清除RubyPhusionPassenger的缓存?,我们在StackOverflow上找到一个类似的问题:
按照目前的情况,这个问题不适合我们的问答形式。我们希望答案得到事实、引用或专业知识的支持,但这个问题可能会引发辩论、争论、投票或扩展讨论。如果您觉得这个问题可以改进并可能重新打开,visitthehelpcenter指导。关闭10年前。问题1)我想知道rubyonrails是否有功能类似于primefaces的gem。我问的原因是如果您使用primefaces(http://www.primefaces.org/showcase-labs/ui/home.jsf),开发人员无需担心javascript或jquery的东西。据我所知,JSF是一个规范,基于规范的各种可用实现,prim
大家好!我对我的:username字段进行了一个小的验证,它应该是4到30个字符。我写了一个验证::length=>{:within=>4..30,:message=>I18n.t('activerecord.errors.range')-我想显示一个错误各种错误的消息(不像,太长或太短),但这里有一个问题-我可以将最小值和最大值都传递给翻译,以便有类似的东西:用户名应该在4到30个字符之间。目前我有:range:"shouldbebetween%{count}and%{count}characters",这显然不起作用(只是为了检查)。是否可以从范围中获取这些值?谢谢大家的指教!
本教程将在Unity3D中混合Optitrack与数据手套的数据流,在人体运动的基础上,添加双手手指部分的运动。双手手背的角度仍由Optitrack提供,数据手套提供双手手指的角度。 01 客户端软件分别安装MotiveBody与MotionVenus并校准人体与数据手套。MotiveBodyMotionVenus数据手套使用、校准流程参照:https://gitee.com/foheart_1/foheart-h1-data-summary.git02 数据转发打开MotiveBody软件的Streaming,开始向Unity3D广播数据;MotionVenus中设置->选项选择Unit
之前在培训新生的时候,windows环境下配置opencv环境一直教的都是网上主流的vsstudio配置属性表,但是这个似乎对新生来说难度略高(虽然个人觉得完全是他们自己的问题),加之暑假之后对cmake实在是爱不释手,且这样配置确实十分简单(其实都不需要配置),故斗胆妄言vscode下配置CV之法。其实极为简单,图比较多所以很长。如果你看此文还配不好,你应该思考一下是不是自己的问题。闲话少说,直接开始。0.CMkae简介有的人到大二了都不知道cmake是什么,我不说是谁。CMake是一个开源免费并且跨平台的构建工具,可以用简单的语句来描述所有平台的编译过程。它能够根据当前所在平台输出对应的m
在VMware16.2.4安装Ubuntu一、安装VMware1.打开VMwareWorkstationPro官网,点击即可进入。2.进入后向下滑动找到Workstation16ProforWindows,点击立即下载。3.下载完成,文件大小615MB,如下图:4.鼠标右击,以管理员身份运行。5.点击下一步6.勾选条款,点击下一步7.先勾选,再点击下一步8.去掉勾选,点击下一步9.点击下一步10.点击安装11.点击许可证12.在百度上搜索VM16许可证,复制填入,然后点击输入即可,亲测有效。13.点击完成14.重启系统,点击是15.双击VMwareWorkstationPro图标,进入虚拟机主
需求:要创建虚拟机,就需要给他提供一个虚拟的磁盘,我们就在/opt目录下创建一个10G大小的raw格式的虚拟磁盘CentOS-7-x86_64.raw命令格式:qemu-imgcreate-f磁盘格式磁盘名称磁盘大小qemu-imgcreate-f磁盘格式-o?1.创建磁盘qemu-imgcreate-fraw/opt/CentOS-7-x86_64.raw10G执行效果#ls/opt/CentOS-7-x86_64.raw2.安装虚拟机使用virt-install命令,基于我们提供的系统镜像和虚拟磁盘来创建一个虚拟机,另外在创建虚拟机之前,提前打开vnc客户端,在创建虚拟机的时候,通过vnc