1. 程式人生 > >暗影精靈3 安裝 deepin 15.6 後的配置

暗影精靈3 安裝 deepin 15.6 後的配置

1. 登入介面輸入密碼後進入桌面但是一直載入中

     進入桌面後亮度會變亮很多但是 dock 刷不出來. 應該是由於顯示卡驅動的原因。

解決方法

  • 下載對應的顯示卡驅動
  • 開機進入系統選擇選單選擇 Deepin 系統然後按 e 編輯 grub
  • 將 "splash quiet" 修改成 "nomodeset nouveau.noaccel=1"
  • 按 F10 啟動系統
  • 禁止 nouveau 模組
    sudo echo "balcklist nouveau options nouveau modeset=0" > /etc/modprobe.conf/blacklist-nouveau.conf
    sudo update-initramfs -u
  • 如果沒有效果,可以直接將 nouveau 模組刪除或備份

  • sudo mv /lib/modules/4.15.0-21deepin-generic/kernel/drivers/gpu/drm/nouveau/nouveau.ko /lib/modules/4.15.0-21deepin-generic/kernel/drivers/gpu/drm/nouveau/nouveau.ko.org
    
    sudo update-initramfs -u

    使用 Ctrl + Alt + F2 切換到字元介面(安裝 NVIDIA 驅動需要關閉圖形介面)

  • 安裝 NVIDIA 驅動
  • sudo service lightdm stop
    sudo . NVIDIA-Linux-x86_64-390.77.run
    sudo service lightdm start

    重啟系統

Note:  開機後會黑屏幾秒,然後就可以正常使用了

2. 無線模組載入不了

系統起來後無線網絡卡起不來,掃描不到網路,但是無線網絡卡是有識別出來的。使用 ifconfig -a 命令可以看到 wlo1 的介面。

kernel version:  4.15.0-21deepin-generic

解決方法

  1. 按照網上的方法下載開源的 rtlwifi 驅動

sudo apt update
sudo apt install git
git clone https://github.com/rtlwifi-linux/rtlwifi-next
cd rtlwifi-next
make
sudo make install
sudo modprobe rtl8822be

     但是在執行 make 命令進行編譯時會報錯,以下是報錯的 log

➜  rtlwifi-next git:(master) make
make -C /lib/modules/4.15.0-21deepin-generic/build M=/home/lbo/tools/rtlwifi-next modules
make[1]: Entering directory '/usr/src/linux-headers-4.15.0-21deepin-generic'
  CC [M]  /home/lbo/tools/rtlwifi-next/base.o
/home/lbo/tools/rtlwifi-next/base.c: In function ‘_rtl_init_deferred_work’:
/home/lbo/tools/rtlwifi-next/base.c:460:2: error: implicit declaration of function ‘setup_timer’; did you mean ‘sk_stop_timer’? [-Werror=implicit-function-declaration]
  setup_timer(&rtlpriv->works.watchdog_timer,
  ^~~~~~~~~~~
  sk_stop_timer
cc1: some warnings being treated as errors
scripts/Makefile.build:332: recipe for target '/home/lbo/tools/rtlwifi-next/base.o' failed
make[2]: *** [/home/lbo/tools/rtlwifi-next/base.o] Error 1
Makefile:1552: recipe for target '_module_/home/lbo/tools/rtlwifi-next' failed
make[1]: *** [_module_/home/lbo/tools/rtlwifi-next] Error 2
make[1]: Leaving directory '/usr/src/linux-headers-4.15.0-21deepin-generic'
Makefile:100: recipe for target 'all' failed
make: *** [all] Error 2

這錯誤可以先不管, 4.15 的 kernel 已經支援 rtl8822be 了, 所以我們並不需要進行編譯。

可以使用 lsmod | grep 8822be 可以檢查系統是否已經載入 rtl8822be 的模組(r8822be)。如果沒有執行 sudo modprobe r8822be 命令載入該模組。載入不上的話就可能需要重新編譯了。

2.  模組載入上以後執行 dmesg | grep 8822be 命令檢視 rtl8822be 的錯誤資訊。

[ 7654.114942] r8822be: module is from the staging directory, the quality is unknown, you have been warned.
[ 7654.133190] r8822be: Using firmware rtlwifi/rtl8822befw.bin
[ 7654.133482] r8822be 0000:3c:00.0: Direct firmware load for rtlwifi/rtl8822befw.bin failed with error -2
[ 7654.133483] r8822be: Selected firmware is not available
[ 7654.134357] r8822be: rtlwifi: wireless switch is on
[ 7654.135845] r8822be 0000:3c:00.0 wlo1: renamed from wlan0
[ 7654.166890] r8822be: halmac_init_hal failed
[ 7654.169089] r8822be: halmac_init_hal failed
[ 7654.169340] r8822be: halmac_init_hal failed
[ 7664.766699] r8822be: halmac_init_hal failed
[ 7664.766918] r8822be: halmac_init_hal failed

主要問題: [ 7654.133482] r8822be 0000:3c:00.0: Direct firmware load for rtlwifi/rtl8822befw.bin failed with error -2

rtlwifi/rtl8822befw.bin 這個檔案是不存在的,我們需要將下載的開源驅動中的 rtl8822befw.bin 複製過去。

3. 複製 rtl8822befw.bin

sudo cp rtlwifi-next/firmware/rtlwifi/rtl8822befw.bin /lib/firmware/rtlwifi/

4. 重新載入模組

sudo modprobe -r r8822be
sudo modprobe r8822be

到這裡,我們的無線驅動就能正常載入了。掃描連線都沒問題。

 5. 如果無線仍然起不來的話,再次使用 dmesg | grep 8822be 命令檢視相關的 log, 如果只有 r8822be: halmac_init_hal failed 的錯誤資訊的話可以嘗試以下步驟。

 6. 使用  grep -r "" /sys/module/r8822be/parameters/  命令檢視載入 rtl8822be 模組的引數

grep -r "" /sys/module/r8822be/parameters/


/sys/module/r8822be/parameters/dma64:N
/sys/module/r8822be/parameters/swlps:N
/sys/module/r8822be/parameters/debug_mask:0
/sys/module/r8822be/parameters/swenc:N
/sys/module/r8822be/parameters/msi:Y
/sys/module/r8822be/parameters/ips:Y
/sys/module/r8822be/parameters/debug_level:0
/sys/module/r8822be/parameters/aspm:1
/sys/module/r8822be/parameters/disable_watchdog:N
/sys/module/r8822be/parameters/fwlps:Y

7. 如果 aspm 為 1 ,將 aspm 指定為 0 重新載入模組,原先是 0 的話就改成 1 重新載入。

sudo modprobe -r r8822be
sudo modprobe r8822be aspm=0

8. 檢查無線是否可用,如果可以的話將剛才的載入引數寫入配置檔案。

sudo echo "options r8822be aspm=0" > /etc/modprobe.d/rtl8822be.conf

使用 aspm=0 還是 aspm=1 得看哪種可以使無線正常工作

 9. 重啟測試一下

風扇好像不轉啊!!!!