ubuntu16安裝from nvidia-390顯示卡驅動後,不能進入系統的解決方案
裝置:小米筆記本pro 顯示卡:MX150和intel UHD620 系統:ubuntu16.04 現象描述:筆記本為雙系統環境,win10+ubuntu16.04,由於專業學習,需要安裝cuda-toolkit做並行運算。按照tensorflow官方給的教程分別安裝了tensorflow和cuda-toolkit(後者的安裝步驟參考:https://www.tensorflow.org/install/gpu)。安裝完之後,在python console中輸入import tensorflow as tf,以驗證tensorflow是否能正常使用,結果報錯為:ImportError: libcuda.so.1: cannot open shared object file: No such file or directory。通過網路搜尋瞭解到,報這個錯是因為顯示卡驅動不是nvidia的驅動,因此按照“system settings-->system-->software&updates-->additional drivers”進入系統顯示卡驅動選擇介面這裡面我選了version 390.30 from nvidia-390(因為裝的是cuda9,網上檢索結果表明,nvidia-39×系列驅動和cuda9都是相容的,因此就選了比較低的390)。噩夢從此開始,390驅動安裝好之後,重啟系統,然後畫面就是不停地在黑屏與狀態介面之間切換,即閃屏,閃了一會之後,穩定在狀態介面,狀態介面顯示內容為:“/dev/nvme0n1p3: clean, 301086/1875968 files, 2492253/7500032 blocks”
sudo apt-get purge *390* sudo apt-get autoremove
執行這些命令主要是為了刪除nvidia-390,需要注意的是,在點“y”之前,要確認刪除的都是與nvidia顯示卡驅動相關的檔案,別刪錯東西了。 3.然後重啟,重新進入系統顯示卡驅動選擇介面,注意,選version 396.44 from nvidia-396,一定要選from nvidia-396的,安裝好該驅動之後,重啟,正常進入系統,並重新測試了一下tensorflow的可用性,顯示tensorflow是可用的。如果按照“system settings-->system-->details”進入系統資訊介面,能夠看到系統的顯示卡已經切換為 MX150了。
問題小結:至於from nvidia-390的驅動為什麼不能用,有個說法是GDM和390驅動不相容,而這個GDM(GNOME Display Manager)是ubuntu預設的管理使用者登入的圖形介面工具,因而導致了不能進入使用者登入介面。如果真是這樣子的話,或許可以通過把gdm切換為lightDM來解決390驅動的相容問題,有興趣的話可以一試(出問題了別找我呀,逃)