deepin/uos使用时的问题与解决办法
Tofloor
poster avatar
thefivestar
deepin
2020-10-13 07:14
Author
本帖最后由 jinhaojun 于 2020-10-12 23:29 编辑

安装deepin/uos存在的问题与解决办法
        说明:本文章完全适用于华硕天选,也适用于其他双显卡电脑,其中,条目一针对无线网卡是rtl88x2ce的机器,条目二适用于双显卡机器,条目三和四适用于双系统机器,其他条目无限制。
        deepin/uos当前版本内核5.4无法安装amd4000系列移动平台CPU、5.7对于华硕天选会造成屏幕闪屏的问题,而内核5.8.13及之后的内核一定程度上解决了该问题,故本文章有升级内核的条目,升级内核后需要升级gcc。
一,WiFi连接一直要求输入密码,且无法连接
解决办法:安装rtl88x2ce无线网卡驱动
下载驱动
https://github.com/juanro49/rtl88x2ce-dkms/releases/tag/5.7.3_35403
安装后终端输入:
sudo modprobe rtl88x2ce

重启即可

二,安装nvidia显卡驱动
      安装时不要选择集成nvidia闭源驱动
显卡驱动安装引用的帖子:
1.笔记本双显卡安装NVIDIA闭源驱动
2.一个可以尝试的Nvidia Prime方案
3.发挥NVIDIA PRIME的全部功力:真·自动切换--系列
驱动安装准备工作:第一步:卸载系统存在的所有英伟达驱动
      在终端“root”权限下,终端输入:
sudo apt autoremove nvidia-*

     建议使用完代码后重启下系统
第二步:禁止nouveau驱动
     在终端“root”权限下,终端输入:
sudo dedit /etc/modprobe.d/blacklist.conf

在新建的blacklist.conf文件中复制以下内容并保存
---blacklist nouveau
blacklist lbm-nouveau
options nouveau modeset=0
alias nouveau off
alias lbm-nouveau off
---
sudo update-initramfs -u

第三步:重启系统
        重启后输入:
lsmod | grep nouveau

        如果没有输出内容,证明成功禁止nouveau驱动
开始安装驱动:第一步 安装驱动
        安装显卡驱动有两种方法,一般没有升级内核的推荐第一种方法,升级了内核的推荐第二种方法。

方法一:apt安装--可选
apt安装适用于内核版本为系统自带的内核
安装nvidia驱动的帖子
        安装deepin 20 bata源里面的英伟达闭源驱动
        在终端“root”权限下,

sudo apt install nvidia-driver

        这样就可以直接安装驱动程序了,其中有需要确认安装的,输入“y”回车

方法二:run文件安装--可选
        run安装适用于升级了内核的情况,且必须转安装完成内核对应版本的gcc后才能安装!
        请先安装自己内核对应版本的gcc!参见条目六(六,gcc10.2--可选)
        先去官网下载最新驱动,然后进入下载的驱动所在文件夹,使用如下命令安装:
        注意,NVIDIA-Linux-x86_64-后接的版本号要与自己的版本对应!

sudo chmod a+x ./NVIDIA-Linux-x86_64-455.28.run
sudo ./NVIDIA-Linux-x86_64-455.28.run --no-opengl-files

        安装时有一些选项需要选择,请按自己需求选择,选错可能会安装失败,可以多试一试。        
到此为止,驱动已经安装完成,还需要配置独立显卡的运行模式,下面有两种运行独立显卡的配置方式,选择其一配置(推荐第二种,能耗更低)

全独立显卡运行--可选


第一步:查看自己电脑存在的显卡,
        终端输入:

lspci | egrep "VGA|3D"

     记住Nvidia显卡前面的数字(这里要进行转换一下:01:00:0 --> 1:0:0)

第二步:配置Xorg
        终端输入:

sudo dedit /etc/X11/xorg.conf

        在新建的xorg.conf文件中复制以下内容并保存

Section "Module"
  Load "modesetting"

  EndSectionSection "Device"  
  Identifier "nvidia"  
  Driver "nvidia"  
  BusID "CI:X:X:X"      
  Option "AllowEmptyInitialConfiguration"
EndSection

     注意:代码中的"CI:X:X:X"要替换成自己电脑Nvidia显卡前面的数字(比如我的"CI:1:0:0")

第三步:配置xinitrc
        终端输入:

sudo dedit ~/.xinitrc


     在新建的.xinitrc文件中复制以下内容并保存

xrandr --setprovideroutputsource modesetting NVIDIA-0
xrandr --auto

xrandr --dpi 96

第四步:配置默认显卡脚本
        终端输入:

sudo dedit /etc/lightdm/display_setup.sh

     在新建的display_setup.sh文件中复制以下内容并保存

\#!/bin/sh
xrandr --setprovideroutputsource modesetting NVIDIA-0

xrandr --auto
xrandr --dpi 96

     然后赋予运行权限:
sudo chmod +x /etc/lightdm/display_setup.sh

第五步:启用默认显卡脚本
      终端输入:
sudo dedit /etc/lightdm/lightdm.conf

     在打开的文本中,找到[Seat:]这一行,然后在[Seat:]行下复制以下内容并保存
display-setup-script=/etc/lightdm/display_setup.sh
     最后,在成功完成以上六步操作后,重启

prime-run运行--可选

建立nvidia-prime文件:
sudo dedit /usr/share/X11/xorg.conf.d/20-nvidia-prime.conf

配置:
Section "ServerLayout"
    Identifier "layout"   

  Option "AllowNVIDIAGPUScreens"
EndSection

建立prime-run脚本:
sudo dedit /usr/bin/prime-run

输入:
#!/bin/bash
__NV_PRIME_RENDER_OFFLOAD=1 __VK_LAYER_NV_optimus=NVIDIA_only __GLX_VENDOR_LIBRARY_NAME=nvidia "$@"

赋予运行权限:
sudo chmod +x /usr/bin/prime-run

三,隐藏win10分区
      查询分区UUID:
lsblk -f
      新建:90-hide_parts.rules
sudo dedit /etc/udev/rules.d/90-hide_parts.rules
      添加内容:
ENV{ID_FS_UUID}=="XXXXXXXXXXXX", ENV{UDISKS_IGNORE}="1"
把XXXXXXXXXXXX换成你要隐藏的分区uuid,保存重启生效!

四,双系统时间配置统一
        在linux系统内,终端输入:
timedatectl set-local-rtc 1 --adjust-system-clock

五,升级内核--可选
curl --proto '=https' --tlsv1.2 -sSf https://gitee.com/2016_12_21/up_kernel/raw/master/get_kernel_zip.sh | sh

六,gcc10.2--可选1,安装依赖
sudo apt-get install  m4
sudo apt-get install  libgmp3-dev

sudo apt-get install build-essentials
sudo apt-get install g++
cd /usr/lib/x86_64-linux-gnu/
sudo cp libisl.so.19 libisl.so.15

2,安装gcc
1.安装gmp
./configure --prefix=/usr/local/gmp-6.1.0

make -j8
sudo make install
​2.安装mpfr
./configure --prefix=/usr/local/mpfr-4.1.0 --with-gmp=/usr/local/gmp-6.1.0
make -j8
sudo make install
​3.安装mpc
./configure --prefix=/usr/local/mpc-1.1.0 --with-gmp=/usr/local/gmp-6.1.0 --with-mpfr=/usr/local/mpfr-4.1.0
make -j8
sudo make install
​4.安装isl
./configure --prefix=/usr/local/isl-0.18 --with-gmp=/usr/local/gmp-6.1.0
make -j8
sudo make install​
5.安装gcc
./configure --prefix=/usr/local/gcc-10.2.0/ --enable-checking=release --enable-languages=c,c++ --disable-multilib --with-gmp=/usr/local/gmp-6.1.0 --with-mpfr=/usr/local/mpfr-4.1.0 --with-mpc=/usr/local/mpc-1.1.0 --with-isl=/usr/local/isl-0.18
make -j16
sudo make install​

sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-8 10 --slave /usr/bin/g++ g++ /usr/bin/g++-8
sudo update-alternatives --install /usr/bin/gcc gcc /usr/local/gcc-10.2.0/bin/gcc 20 --slave /usr/bin/g++ g++ /usr/local/gcc-10.2.0/bin/g++
sudo update-alternatives --config gcc







Reply Favorite View the author
All Replies
thefivestar
deepin
2020-10-13 07:16
#1
本帖最后由 jinhaojun 于 2020-10-12 23:30 编辑

最好看附件操作

Reply View the author
SamLukeYes
deepin
2020-10-13 07:48
#2
升级内核可以去 app4deepin,兴许不用升级 gcc
如果一定要升级 gcc,可以通过 ppa 安装预编译的版本
Reply View the author
a***1@163.com
deepin
2020-10-13 07:48
#3
先记号那个双系统时间一致的打算试试
Reply View the author