Ubuntu16.04 安裝nvidia驅動之后無法登陸,在lightdm登陸界面循環的問題以及ubuntu下驅動的正確安裝方法


Ubuntu更新完NVIDIA驅動后,重啟電腦進入不了系統,一直處於登錄界面.后來重啟電腦時發現我進入不了系統了,輸入我的登錄密碼會發現屏幕一閃,然后又重新跳回到登錄界面,就是進入了login loop的狀態,我一開始在網上查,很多人說是什么.Xauthority的問題,我嘗試了幾乎所有辦法都不行,所幸最后找到了問題所在,將Ubuntu NVIDIA驅動卸載再重新安裝即可。造成這種問題的與原因是:ubuntu有系統自帶的驅動,但是新安裝的NVIDIA驅動與其沖突,如果要安裝NVIDIA驅動,必須關閉圖形界面的系統自帶驅動。

先介紹tty1-7的幾種模式,在圖形登陸界面Ctrl+Shift+F1-7
init 0:關機

init 1:單用戶模式  Ctrl+Shift+F1

init 3:完全多用戶模式,標准的運行級 Ctrl+Shift+F3 

init 5:啟動可進入X-window系統 Ctrl+Shift+F5 

init 6:重啟

Ctrl+Shift+F7:lightdm登陸界面

 

解決上訴問題的方法:

1、在你的用戶登錄界面按ctrl+alt+F1進入tty模式
2、輸入你的賬戶名和密碼
3、依次運行如下語句:

 

1、打開tty1,先刪除舊的驅動:

sudo apt-get purge nvidia-*

2禁用自帶的 nouveau nvidia驅動 (important!!!!!!!!!!)

 

創建一個文件(通過命令):

sudo vim /etc/modprobe.d/blacklist-nouveau.conf

並添加如下內容:

blacklist nouveau

options nouveau modeset=0

再更新一下

sudo update-initramfs -u

 

修改后需要重啟系統。確認下Nouveau是已經被你干掉,使用命令: lsmod | grep nouveau

如果沒有結果,說明已經禁掉了

 

3重啟系統至init 3(文本模式),也可先進入圖形桌面再運行init 3進入文本模式,再安裝下載的驅動就無問題,(

Ctrl+Shift+F3   或者

  1. sudo init 3  

)

首先我們需要結束x-window的服務,否則驅動將無法正常安裝

關閉X-Window,很簡單:sudo service lightdm stop,然后切換到tty1控制台:Ctrl+Alt+F1即可

 

4接下來就是最關鍵的一步了:sudo ./NVIDIA-Linux-x86_64-367.57.run開始安裝,安裝過程比較快,根據提示選擇即可

這里利用的是自己下載編譯的驅動,而非由系統下載的安裝。需要提前下載匹配GPU的驅動。

我的GPU是Nvidia GeForce GT 550M,選擇的是NVIDIA-Linux-x86_64-367.57.run

下載驅動

Nvidia中文官網是 http://www.nvidia.cn/page/home.html

Nvidia4.png

點“驅動下載”,轉到這里。

Nvidia2.jpg

點“搜索”查找到 185.18驅動。

Nvidia1.jpg

Nvidia3.jpg

Nvidia4.jpg

下載下來NVIDIA-Linux-x86-185.18.14-pkg1.run驅動文件,放到 /home/用戶名/ 目錄下面。

最后安裝完畢后,重新啟動X-Windowsudo service lightdm start,然后Ctrl+Alt+F7進入圖形界面;

 

如果安裝后驅動程序工作不正常,使用下面的命令進行卸載:

sudo sh ~/NVIDIA-Linux-x86_64-367.57.run --uninstall

 

5

sudo apt-get install nvidia-settings

 

 

這里補充安裝驅動的幾種常用方法及命令

http://wiki.ubuntu.org.cn/NVIDIA

目錄

ubuntu常見錯誤--could not get lock /var/lib/dpkg/lock -open

1. ubuntu,用apt-get命令安裝一些軟件包時,總報錯:E:could not get lock /var/lib/dpkg/lock -open等

出現這個問題的原因可能是有另外一個程序正在運行,導致資源被鎖不可用。而導致資源被鎖的原因,可能是上次安裝時沒正常完成,而導致出現此狀況。

解決方法:輸入以下命令

sudo rm /var/cache/apt/archives/lock

sudo rm /var/lib/dpkg/lock

之后再安裝想裝的包,即可解決。

2. Linux中帶鎖的文件夾圖標,表示您沒有權限訪問該文件夾。

當然,你可以使用如下方法解除限制。

sudo chmod +777 路徑(文件夾或文件) (以Ubuntu為例)

 

補充: +777和+755的區別

在linux終端先輸入ll,可以看到如:   
-rwx-r--r-- (一共10個參數)
表示文件所屬組和用戶的對應權限。
第一個跟參數屬於管理員,跟chmod無關,先不管.
2-4參數:屬於user
5-7參數:屬於group
8-10參數:屬於others
接下來就簡單了:r==>可讀 w==>可寫 x==>可執行
r=4 w=2 x=1
所以755代表 rwxr-xr-x
777 代表 rwxr-rwx-rwx 所有用戶都可讀可寫可執行。

3. You do not appear to have an NVIDIA GPU supported by the 1.0-8776  NVIDIA Linux graphics driver installed in this system. 

--安裝出錯

WARNING: You do not appear to have an NVIDIA GPU supported by the 1.0-8776
         NVIDIA Linux graphics driver installed in this system.  For further
         details, please see the appendix SUPPORTED NVIDIA GRAPHICS CHIPS in
         the README available on the Linux driver download page at
         www.nvidia.com.
License accepted.
-> A precompiled kernel interface for kernel 'Red Hat Linux 9 updated to kernel
   2.4.20-8 Athlon' has been found here:
   ./usr/src/nv/precompiled/nv-linux.o-1.0-8776.rh9up_2.4.20-8_athlon.
   executing: 'cd ./usr/src/nv; /usr/bin/ld -d -r -o nvidia.o precompiled-nv-li
   nux.o nv-kernel.o'...
-> Kernel module linked successfully.
ERROR: Unable to load the kernel module 'nvidia.o'.  This happens most
       frequently when this kernel module was built against the wrong or
       improperly configured kernel sources, with a version of gcc that differs
       from the one used to build the target kernel, or if a driver such as
       rivafb/nvidiafb is present and prevents the NVIDIA kernel module from
       obtaining ownership of the NVIDIA graphics device(s).
      
       Please see the log entries 'Kernel module load error' and 'Kernel
       messages' at the end of the file '/var/log/nvidia-installer.log' for
       more information.
--安裝時出錯原因


目前nvidia 驅動主持2.4和2.6 內核,debian/fedora 用戶安裝驅動時注意安裝 kernel-headers。

sudo ./NVIDIA-Linux-x86-1.0-4496-pkg2.run --add-this-kernel

4 如何使U盤直接和linux相連接,如何查看U盤內容

掛載u盤: 1.在mnt文件夾下創建一個掛載u盤用的文件夾 mkdir /mnt/usb 
2.插上u盤查看u盤被識別成什么 fdisk -l
3.比如u盤識別成了sdb1,開始掛載u盤 mount /dev/sdb1 /mnt/usb
4.打開/mnt/usb文件夾就是u盤文件里
5.卸載u盤 unmount /dev/sdb1

拷貝: cp -i xxxx.xx拷貝目標文件  /xxx/xxx/xxx/拷貝目的目錄 

參考文獻

1. ubuntu16.04 NVIDIA顯卡驅動安裝 http://blog.csdn.net/u012581999/article/details/52433609

2. ubuntu安裝nvidia驅動的指導手冊及命令 http://wiki.ubuntu.org.cn/NVIDIA

3. ubuntu常見錯誤--could not get lock /var/lib/dpkg/lock -open http://blog.sina.com.cn/s/blog_4fd984420100y6or.html

4 rethat下安裝nvidia 顯卡驅動問題解決方法 http://blog.csdn.net/cyco008/article/details/2281537

5. 兩種Ubuntu安裝N卡官方驅動的方法 http://cryolite.iteye.com/blog/657951

6. 如何使U盤直接和linux相連接,如何查看U盤內容 https://zhidao.baidu.com/question/311865507.html?skiptype=2

7.Linux chmod +755和chmod +777  https://zhidao.baidu.com/question/168415347.html?skiptype=2

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM