新版的膝上型電腦安裝ubuntu系統過程中卡死問題解決方法
關於部分電腦u盤安裝ubuntu不上的問題
最近樓主購入一臺華碩的遊戲本,包含NVIDIA的GTX1080顯示卡。發現無法安裝ubantu,每次安裝都卡在ubuntu的起始介面。經過多次的嘗試和總結,總算找到原因:ubuntu在安裝的時候載入了圖形介面,呼叫了開源n卡驅動導致不相容(安裝程式中的驅動無法驅動9代n卡),那麼解決方案也就來了,下載ubuntu server安裝包(這個安裝時是不啟動x的),製作啟動盤,安裝,注意:安裝中請選擇基本系統+ubuntu deskdop包。於是,新筆記本按不上ubuntu的問題就解決了。
修正,此問題廣泛存在於新n卡的雙顯示卡筆記本,可以在啟動時加入禁止開源n卡驅動載入的程式碼,這樣就可以圖形介面按裝了。
另外一種解決方案如下:
1. 解決方法:重新開機,游標選中“InstallUbuntu” ,按“e”,進入grub介面,將倒數第二行中的“quiet splash ---”改為“nomodeset”。F10儲存,就可以進入安裝介面,進行安裝。
2. 安裝完成後,進入ubuntu的recovery mode,安裝nvidia的顯示卡驅動。從nvidia網站下載NVIDIA-Linux-x86_64-375.66.run程式包。然後採用sudo chmod a+x *****.run使得使用者具有安裝的許可權。然後./****.run安裝驅動。
3. 從recovery mode進入Ubuntu之後,crtl+alt+F1可進入命令列模式(tty)。crtl+alt+F7可退出命令列模式。
4. 進入命令模式後採用nvidia-smi命令可現實nvidia顯示卡的編號(375),然後可採用命令來安裝nvidia 375顯示卡驅動。
5. 安裝nvidia顯示卡驅動之後,就可安裝CUDA。對於ubuntu系統來說,需要下載https://developer.nvidia.com/cuda-downloads網站的資料。
中deb(network)對應的安裝包,然後根據提示就可以順利安裝cuda。
88888888888888888888888888888888888888888888888888888888888888888888888
解除安裝nvidia驅動
sudo apt-get remove --purge nvidia-331-updates
如果安裝的是官網下載的驅動
則重新執行run檔案來解除安裝
sh ./nvidia.run --uninstall
8888888888888888888888888888888888888888888888888888888888888888888888888
在安裝過程中,還可能遇到以下幾個坑:
一、迴圈登入
主要表現為在登入介面輸入密碼後依然跳轉回登陸介面,無限迴圈,這是我在使用.run檔案安裝時遇到的問題,這裡有一個親測有效的解決方案:
當輸入安裝指令時,不要簡單地輸入sudo ./....run,而是輸入:
sudo ./NVIDIA.run-no-x-check -no-nouveau-check -no-opengl-files
-no-x-check:安裝驅動時關閉X服務
-no-nouveau-check:安裝驅動時禁用nouveau
-no-opengl-files:只安裝驅動檔案,不安裝OpenGL檔案
這樣再reboot,就不會出現迴圈登入的問題。
注意:這裡的NVIDIA.run代表包含具體的從NVIDIA官網下載的驅動的版本號。
888888888888888888888888888888888888888888888888888888888888888888
解決迴圈登入方法2
2、原有驅動刪除之後,還需要將Ubuntu整合的開源驅動加入黑名單,即修改/etc/modprobe.d/blacklist.conf檔案:
sudo gedit /etc/modprobe.d/blacklist.conf
在該檔案中增加如下兩行:
blacklist nouveau
options nouveau modeset=0
執行sudo update-initramfs –u
8888888888888888888888888888888888888888888888888888888888888888888888
首先介紹一下我的安裝流程,我所採用的是PPA的安裝方式:
sudo add-apt-repository ppa:graphics-drivers/ppa
sudo apt-get update
sudo apt-get install nvidia-378 nvidia-prime
88888888888888888888888888888888888888888888888888888888888888888888888888888888
用板載vga安裝ubuntu系統,下載最新的nvidia官網驅動(NVIDIA-Linux-x86_64-352.21.run). 2. 禁用開源nouveau驅動: 在/etc/modprobe.d 下建立名為disable-nouveau.conf的檔案,內容為: blacklist nouveau options nouveau modeset=0 執行: sudo update-initramfs -u 使其生效。 3. 配置kernel以text模式啟動: 修改/etc/default/grub檔案:將GRUB_CMDLINE_LINUX_DEFAULT="quiet splash"行改為:GRUB_CMDLINE_LINUX_DEFAULT="quietsplash text" 將GRUB_CMDLINE_LINUX=""行改為:GRUB_CMDLINE_LINUX="rdblacklist=nouveaunouveau.modeset=0"執行: sudo update-grub 使其生效 4. 重啟電腦,在text模式下,終端中執行安裝檔案 $shNVIDIA-Linux-x86_64-352.21.run 安裝過程中互動的地方一直選擇繼續. 安裝完成之後,將grub中新增的 text 刪掉,再執行update-grub,是重啟後用圖形模式進入系統。
88888888888888888888888888888888888888888888888888888888888888888888
sudo gedit/etc/modprobe.d/disable-nouveau.conf
在裡面填入兩行內容:
blacklist nouveau
options nouveau modeset=0
安裝過程需要在純命令列下完成,所以需要關閉X service,用sudoservice lightdm stop
4. 重啟,重啟後,很可能已經不能進入圖形介面了,按ctrl+alt+f1,進入終端登入
以下是安裝驅動的可行的幾種方法:
NVIDIA
這個PPA新增到您的系統上,開啟一個終端視窗,執行以下命令:
sudo add-apt-repository ppa:graphics-drivers/ppa
之後,你有,執行以下命令來下載最新的軟體包列表:
sudo apt-get install nvidia-
舉個例子你可以使用下面的命令安裝 nvidia-361
sudo apt-get install nvidia-361
https://developer.nvidia.com/cuda-downloads
最後按快捷鍵Ctrl + Alt+F7返回到圖形介面,這樣nvidia顯示卡官方驅動就安裝完成了。
8888888888888888888888888888888888888888888888888888888888888888888
裝caffe是一項技術活,很能考驗一個人的耐力,經過無數次的重灌系統之後,caffe終於安裝成功了。</span>
作業系統:Ubuntu14.04 64bits
處理器:Intel core i7-4790k 8核4GHz
GPU:GTX TITAN X
cuda:cuda7.0
NVIDIA驅動:NVIDIA346.72
blas:mkl
安裝過程:
(一)Ubuntu系統安裝
最好安裝Ubuntu14.04,對caffe的支援最好,另外,安裝完Ubuntu之後不要更新系統。
(二)caffe依賴項
注意,這裡安裝的都是一些必要的庫檔案,必須安裝。
(三)NVIDIA驅動安裝
從NVIDIA官網下載英文版驅動,有.run與.deb兩種格式,前者可自選元件進行安裝,後者則等效於一鍵安裝。注意要選擇與自己gpu想匹配的驅動,沒試過中文版驅動,不知道是否可行,不過在官網上下載中文驅動的時候會出現亂碼。下載完驅動之後(我下的.run檔案)按照官網的安裝說明進行安裝,大體步驟如下:
1、利用sudo gedit/etc/modprobe.d/blacklist-nouveau.conf新建blacklist-nouveau.conf檔案,輸入命令
blacklist nouveau
blacklist lbm-nouveau
options nouveau modeset=0
alias nouveau off
alias lbm-nouveau off
儲存並退出。這一步是為了禁掉Ubuntu自帶開源驅動nouveau。之後sudo reboot重啟系統。在終端執行命令
lsmod | grep nouveau
可以檢視nouveau模組是否被載入。如果什麼都沒輸出,則執行下一步。
2、重啟後螢幕解析度變低,不用管。進入tty1檔案模式,輸入使用者名稱密碼後登陸,輸入命令
sudo /etc/init.d/lightdm stop
關閉xserver。注意,安裝NVIDIA驅動需要以root使用者登陸,所以利用命令sudo su進入root。輸入命令
bash NVIDIA-LINUX-X86_64-346.72.run--kernel-source-path=/usr/src/linux-headers-3.*.*
進行安裝。這裡的linux-headers-3.*.*是Linux系統原始檔名。安裝過程中有一些提示問題讓你回答,注意,當提示
The distribution-provided pre-installscript failed!Are you sure you want to continue?
的時候不用管,繼續安裝就行了,這個問題我至今沒明白是什麼原因導致的,但這不影響後續安裝及使用。當提示
Would you like to register the kernelmodule sources with DKMS?This will allow DKMS to auomatically build a newmodule,if you install a different kernel later
的時候,回答No。
3、最好再執行命令
sudo apt-get installlinux-image-extra-virtual
否則後續可能會出現如下錯誤提示:
modprobe: ERROR: could not insert'nvidia':Unknown symbolinmodule,or unknown parameter(see dmesg)
4、執行sudo /etc/init.d/lightdm start並重啟電腦。重啟後可能會產生解析度問題,只需要更改/etc/X11/xorg.conf檔案如下:
<span style="font-size:18px;">Section 'Monitor'
**
**
HorizSync 31.5 - 61.0
VertRefresh 50.0 - 75.0
**
**
Section 'Screen'
Modes "[email protected]" "[email protected]" "[email protected]" "[email protected]" "[email protected]" "[email protected]" "[email protected]" "[email protected]" "[email protected]" "[email protected]" "[email protected]" "[email protected]"
EndSubSection</span>
(四)cuda7.0安裝
注意,caffe推薦安裝最新版NVIDIA驅動,所以cuda內建的驅動我們就不需要安裝了,cuda的安裝完全按照官網教程進行,過程比較簡單,這裡不再贅述,如有問題可以留言我們相互討論。但注意一點是安裝完成之後需要修改環境變數,只需在/etc/ld.so.conf.d/下新建一個cuda.conf檔案,將cuda庫路徑(預設是/usr/local/cuda-7.0/lib64)加入之後儲存即可。
(五)MKL的安裝
caffe所需要的blas我們安裝mkl,雖然mkl的下載稍微有點麻煩,但安裝起來還是很快的。下載的時候只需要在官網申請學生免費版,用你的郵箱註冊之後會自動收到下載指南以及一個lic註冊檔案,按照指示下載即可,安裝也較為簡單,這裡只提幾點注意事項:
1、一個mkl安裝檔案可以同時被幾個使用者使用,所以不必重複下載。
2、安裝的時候必須將安裝包放置在Ubuntu能夠識別的檔案系統中,推薦~/,否則無法執行.sh指令碼檔案。
3、安裝之後需要把mkl庫路徑(/opt/intel/lib以及/opt/intel/mkl/lib/intel64)加入環境變數。
(六)如果要使用Python介面,那麼還需要另外安裝一些Python庫檔案(Ubuntu自帶Python不能滿足我們的需要)
sudo apt-get install python-numpy python-scipy python-dev
udo apt-get install libgflags-dev libgoogle-glog-dev liblmdb-dev protobuf-compiler
(七)如果需要使用matlab介面,那麼推薦新版本的matlab比如R2013a/b,R2014a/b等,我安裝的R2014b,沒任何問題。
(八)編譯配置caffe
下載caffe檔案並解壓至某一目錄caffe-root,注意修改makefile檔案當中的一些路徑。執行一下命令
cd caffe-root/caffe-master
cp Makefile.config.example Makefile.config
make all
make test
make runtest</span>
在make編譯過程中會遇到一些問題,可能是由caffe本身檔案相容性問題造成的,比如
1、提示make:protoc:命令未找到,這是因為protoc未安裝,只需安裝就行。
sudo apt-get install protobuf-c-compiler protobuf-compiler
2、提示“src/caffe/util/math_functions.cu(140):errot:callinga host function("std::signbit")from aglobalfunction("caffe::sgnbit kernel")is not allowed”,
修改./include/caffe/util/math_functions.hpp224行
刪除(註釋):using std::signbit
修改:DEFINE_CAFFE_CPU_UNARY_FUNC(sgnbit, y[i] = signbit(x[i]));
為:DEFINE_CAFFE_CPU_UNARY_FUNC(sgnbit,y[i] = std::signbit(x[i]));
這是Yangqing Jia給出的解決方案,目前只有這一種方法。
我在編譯的時候只對於某些版本的caffe會遇到情況2,對於第一個問題只要你按照前面的步驟做了應該不會出現的。雖然裝這個花了好幾天,不過總算是自己的努力換來了回報,希望caffe以後能優化的更完美,不要再在編譯的時候遇上這麼多麻煩,對於初學者是很不利的。希望大家共同學習,共同進步吧!