之前也提到了,舊機器上有一塊NVIDIA的顯卡,裝了ubuntu16.04后一直沒有安裝驅動。這周算是有點時間,就差點作了死。
首先必須澄清,這個不是正確的安裝過程,起碼我就報了memory error問題,沒有成功,同樣屏幕顯示也不正常了,分辨率被調到了2048*4196這個奇葩的數字。
本來是想安裝gpu driver的,利用命令
lspci | grep VGA
發現自己的顯卡是GT216,屬於GeForce GT220系列的。因此上NVIDIA官網上下載了對應的驅動,有個GeForce 200 serials的,可以選擇
下載下來后,發現是.run文件。查詢了下別人的安裝過程,應該是一個安裝文件。在這之前需要先安裝其他的依賴庫
sudo apt-get install libprotobuf-dev libleveldb-dev libsnappy-dev libopencv-dev libhdf5-serial-dev protobuf-compiler sudo apt-get install --no-install-recommends libboost-all-dev sudo apt-get install libopenblas-dev liblapack-dev libatlas-base-dev sudo apt-get install libgflags-dev libgoogle-glog-dev liblmdb-dev
並不清楚這些庫哪些是必須的,還是有很多事根本沒有必要的,我只是提示我的過程。
如果有圖形化界面則需要禁用x-window服務(請注意,從這一步開始,請不要使用x-window界面)
sudo service lightdm stop
禁用 nouveau
安裝好依賴包后需要禁用 nouveau,只有在禁用掉 nouveau 后才能順利安裝 NVIDIA 顯卡驅動,禁用方法就是在 sudo vim /etc/modprobe.d/blacklist.conf文件中添加幾條禁用命令
blacklist nouveau blacklist lbm-nouveau options nouveau modeset=0 alias nouveau off alias lbm-nouveau off
執行以下命令來禁止內核中nouveau
echo options nouveau modeset=0 | sudo tee -a /etc/modprobe.d/nouveau-kms.conf
之后按照教程重啟
sudo update-initramfs -u reboot
我的.run文件是從瀏覽器中下載下來的,文件名是xxx.run,因此使用
/home/userxxx/Download/xxx.run
來運行,提示必須使用root權限。因此重試
sudo /home/userxxx/Download/xxx.run
能夠編譯,但是報錯了,強制重啟后,分辨率變成了640*480, X-window都正常啟動了,很明顯不正確
這一步如果沒啟動X-window的話,建議切換到其他窗口,使用
sudo service lightdm start
來啟動。
查看GPU的使用命令,也不成功。這就很明顯了,GPU driver安裝失敗,這個時候,需要換一種方法,但是在換方法之前,我覺得我的操作應該還可以拯救下。
想使用xrandr命令來切換分辨率,結果發現只有640*480的分辨率,因此決定重新操作回去,因為我的X-window啟動了,所以這里沒有列X-window的啟動,請看前邊。
啟用 nouveau
當然,就是把剛才寫的都注釋或者刪掉
執行以下命令來啟用內核中nouveau,很明顯,把0改成1也許好使
echo options nouveau modeset=1 | sudo tee -a /etc/modprobe.d/nouveau-kms.conf
之后按照教程重啟
sudo update-initramfs -u reboot
結果令人欣喜,又出現了熟悉的