Ubuntu系統登入介面變大,並且迴圈輸入正確密碼無法進入桌面的解決方案
問題描述:
電腦開機進入Ubuntu系統,登入介面字型變得很大(之前並沒有這樣的問題),在登入介面輸入正確的密碼,但是卻一直返回登入介面。
問題分析:
我的電腦中安裝的有1080Ti的顯示卡,是顯示卡驅動導致這樣的問題。
解決方法:
對於Ubuntu桌面版系統來說,NVIDIA顯示卡驅動安裝的大多可以通過桌面完成。但是目前登入不了Ubuntu系統,由於沒有GUI介面,安裝顯示卡驅動則必須通過命令列完成。
1. 下載官方驅動程式
選擇合適的驅動程式:我選擇的是NVIDIA-Linux-x86_64-384.130.run。該步驟需要使用瀏覽器完成,因此需要使用一臺帶有圖形介面的電腦完成該操作並將run檔案拷貝到U盤中,為接下來的掛載到ubuntu電腦上安裝驅動做準備。
2. 進入Ubuntu系統
首先在登陸介面按ctrl+alt+F1進入控制檯模式,tty1
在login:後面輸入你的使用者名稱,回車
然後在password:後面輸入密碼,回車
此時就已經進入系統了
3. 禁止整合的nouveau驅動
Ubuntu系統整合的顯示卡驅動程式是nouveau,它是第三方為NVIDIA開發的開源驅動,我們需要先將其遮蔽才能安裝NVIDIA官方驅動。 如果我們直接安裝驅動的話,往往會報錯:ERROR: The Nouveau kernel driver is currently in use by your system. This driver is incompatible with the NVIDIA driver。
將驅動新增到黑名單blacklist.conf中,但是由於該檔案的屬性不允許修改。所以需要先修改檔案屬性。
檢視屬性:
sudo ls -lh /etc/modprobe.d/blacklist.conf
修改屬性:
sudo chmod 666 /etc/modprobe.d/blacklist.conf
用vim編輯器開啟(vim使用方法自行百度):
sudo vim /etc/modprobe.d/blacklist.conf
在該檔案後新增以下幾行:
blacklist vga16fb blacklist nouveau blacklist rivafb blacklist rivatv blacklist nvidiafb
並執行:
sudo update-initramfs -u
重啟後執行:
lsmod | grep nouveau
沒有輸出即為遮蔽好了。
4. 開始安裝
對於伺服器版系統,則需要將含有run檔案的U盤手動掛載到mnt/usb目錄下,
4.1 將含有run檔案的U盤手動掛載到mnt/usb目錄下教程如下:
4.1.1 確定U盤在系統中的裝置號
在插入U盤之前之後兩次輸入
cat /proc/partitions
在第二次顯示結果中多出來的即為U盤的裝置號。因為電腦裡是雙硬碟,所以U盤在系統中為/dev/sdc1(sdc1表示的是sdc中的一個分割槽)。
關於/proc目錄:這個目錄是一個虛擬的目錄,它是系統記憶體的對映,我們可以通過直接訪問這個目錄來獲取系統資訊。
這個目錄的內容不在硬碟上而是在記憶體裡,我們也可以直接修改裡面的某些檔案。
4.1.2 mount命令掛載U盤
mount命令需要管理員許可權,因為以普通使用者登陸Ubuntu時需要加sudo指令
sudo mount /dev/sdc1 mnt/usb
該命令的含義是將/dev/sdc1這一裝置(U盤)掛載到mnt/usb這一目錄下
注意:若沒有mnt/usb路徑,需要建立,否則不能完成掛載(怎麼建立資料夾自行百度)。另外,對於需要臨時掛載的外部裝置,掛載點通常為/mnt。
完成掛載後可以通過mnt/usb訪問U盤裡的內容。以下的命令為顯示該U盤的內容目錄:
cd mnt/usb
ls
4.2 安裝
通過 cd mnt/usb命令進入該目錄裡。
若之前安裝過顯示卡驅動,需要先解除安裝掉。建議裝驅動前都執行以下該指令,有益無害。
sudo apt-get --purge remove nvidia-*
該指令能解除安裝驅動並不保留配置檔案。
安裝指令如下:
sudo chmod a+x NVIDIA-Linux-x86_64-384.130.run
sudo ./NVIDIA-Linux-x86_64-384.130.run -no-x-check -no-nouveau-check -no-opengl-files
在上述指令中,–no-opengl-files表示只安裝驅動檔案,不安裝OpenGL檔案,這個引數最重要。–no-x-check 安裝驅動時不檢查X服務。–no-nouveau-check 安裝驅動時不檢查nouveau(注:這個選項和1.2禁止整合的nouveau驅動組成雙保險,其實一項操作就可以了)。
Ubuntu伺服器版由於在安裝系統時只裝了OpenSSH server和standard system utilities,一些必備的development tool並沒有安裝,需要接下來手動安裝。在安裝驅動程式的過程中,會因為缺少gcc、g++、make等development tool而報錯導致無法完成驅動程式安裝(ERROR:Ubable to find the development tool ‘make’ in your path…),不用擔心,手動安裝這些開發包後再次執行安裝指令即可。另外,安裝過程中出現的彈框根據預設選項選擇即可。手動安裝development tool指令為:
sudo apt-get install gcc
sudo apt-get install g++
sudo apt-get install make
4.3 umount命令解除安裝U盤
在完成對U盤內容的訪問後,需使用umount命令手動解除安裝U盤,umount命令同樣需要管理員許可權。以下兩條命令均可完成解除安裝操作:
sudo umount /dev/sdc1
sudo umount /mnt/usb
最後按ctrl+alt+F7進入Ubuntu登入介面,重新登入,按照提示正常選擇即可恢復正常