1. 程式人生 > >Ubuntu系統登入介面變大,並且迴圈輸入正確密碼無法進入桌面的解決方案

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登入介面,重新登入,按照提示正常選擇即可恢復正常