欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

Linux/Deepin全流程安装指南:双显卡-Prime-docker-Nvidia_docker-日常应用

程序员文章站 2024-02-29 21:38:34
...

 

文档内容简要说明

记录个人配置deepin的完整过程

关键词:双系统、双显卡(Nvidia)配置、高分屏配置

本着Linux的开源精神,本文内容只是把找到零碎文章拷贝额不借鉴过来,整合成一篇比较流畅的指南,原文地址在文段开始之前给出link

文档修订记录

2020.05.01

创建文档及目录——Flanker

2020.05.02

完成了包括显卡驱动安装,日常软件安装的撰写——Flanker

2020.05.05

终端美化,docker安装的撰写——Flanker

2020.05.30

搬运至CSDN,什么时候搞完嵌入式大作业什么时候更docker-ROS——Flanker

正文

为什么选择Deepin

  • 傻瓜式的U盘制作工具
  • Linux平台最傻瓜的安装器: 不需要动分区工具、3步、5分钟装完系统
  • 基于Debian滚动更新, 每年发布3~4个版本, 独立维护内核和软件仓(Ubuntu也是基于Debian)
  • 独立开发了深度桌面环境:许多发行版都有人移植deepin桌面过去,因为好看
  • 第一款linux产品质量级别的深度商店: 一键安装大部分精品应用
  • 开发了DeepinWine以完美支持QQ、迅雷等50多款Windows应用(不过TIM最近除了点问题)
  • Linux平台最好用的深度截图工具, 功能堪比QQ截图
  • 可以监控进程网络、磁盘实时信息的深度系统监视器
  • 和国内厂商合作开发了:搜狗输入法、有道词典、网易云音乐

安装过几次manjaro,但是显卡装爆过几次,也卡过回滚式更新出不来

用wubi装过Ubuntu,也比较方便,显卡驱动装爆了(又是Nvidia)

最近一次deepin成功,其他功能还在继续探索

不过对于我们而言,重要的是能不能满足工程需求,这一点我还在摸索,并在适当时候继续更新本文

 

使用的系统版本

最新的deepin-V20-beta:V20beta-release

为啥用了新的版本?或许是因为基于更新版本的Debian吧(其实是因为好看)

Linux/Deepin全流程安装指南:双显卡-Prime-docker-Nvidia_docker-日常应用

机型配置

作者的机型是XPS-9560,i7-7700HQ,16+2T,GTX1050,4k,在win10基础上进行安装。

可以在网站上查找自己的机型,看开发人员对其兼容性的测试结果,再考虑是否使用:兼容性良好的笔记本型号

制作启动盘

启动盘制作教程

运行deepin-boot-maker.exe文件后弹出深度启动盘制作工具分别点击光盘和U盘,选择对应的镜像和U盘。此处光盘就选刚刚在官网下载的深度系统(Deepin Linux)镜像,而U盘则选择已插入电脑的准备用于做启动盘的U盘。

Linux/Deepin全流程安装指南:双显卡-Prime-docker-Nvidia_docker-日常应用

深度启动盘制作工具界面

选择后点开始便可开始制作启动盘,非常简单。建议在开始前勾选格式化U盘。

Linux/Deepin全流程安装指南:双显卡-Prime-docker-Nvidia_docker-日常应用

深度启动盘制作工具写入镜像

大约两三分钟的时间,深度系统(Deepin Linux)的系统安装U盘就已经制作妥当了。

Linux/Deepin全流程安装指南:双显卡-Prime-docker-Nvidia_docker-日常应用

深度启动盘制作工具写入镜像成功

这里是制作工具的下载地址:启动盘制作工具下载地址

 

对分区进行调整,并设置BIOS

在开始安装前,打开disk manager,分隔出两个新分区:一个8G的linux exchange格式(作为交换分区),一个64G~inf.G的ext4格式的分区(作为根目录系统安装),虽然没有交换分区也可以正常安装使用,但是一旦占满内存系统就会卡死。

 

对BIOS的设置进行调整:开机按f12(每个品牌不一样,需自己查询),选择进入bios设置:

  • 关闭secure boot
  • 检查磁盘模式:若为raid,需把raid切换为achi,这会有一个较长的转换时间。
  • 使用UEFI进行启动

 

开始正式安装

设置之后,再次进入BIOS设置界面,选择启动盘U盘进行启动(当然要插着优盘启动咯),进入:deepin正式安装

进入安装界面,选择需要安装的语言(其实我建议英文,网上大部分参考代码都是英文)。

Linux/Deepin全流程安装指南:双显卡-Prime-docker-Nvidia_docker-日常应用

选择文件格式、挂载点、分配空间等。选择手动安装,选择对应分区(自动没用过,似乎会把整个硬盘格式化?(雾))

Linux/Deepin全流程安装指南:双显卡-Prime-docker-Nvidia_docker-日常应用

这里就要

挂载点 挂载点中文名 文件系统 大小
/ 根分区 EXT4(推荐) 最少64G
swap 交换分区 不设置 4G内存以下分配2G,4G以上可不分配

点击 安装

在弹出的确认安装窗口中,点击 确定

将开始自动安装深度操作系统。

Linux/Deepin全流程安装指南:双显卡-Prime-docker-Nvidia_docker-日常应用

完成后选择立即体验,这时候会重启,注意立即拔出优盘!

Linux/Deepin全流程安装指南:双显卡-Prime-docker-Nvidia_docker-日常应用

双显卡安装时更改grub启动命令行(Nvidia显卡用户)

重启后会进入deepin的grub界面(如下图),注意,此时应按e进入启动命令行。

Linux/Deepin全流程安装指南:双显卡-Prime-docker-Nvidia_docker-日常应用

 

有关双显卡启动黑屏卡logo的解决办法

进入引导文本编辑页面

找到类似如下内容的一行

linux    /boot/vmlinuz-4.9.0-deepin13-amd64 root=UUID=57d9aa6c-2452-4374-b4b8-bbd81a2975c2 ro splash quiet

在 quiet 的后面空一格 加入 acpi_osi=! acpi="windows 2009"

加好以后,按F10保存开机

这样应该就可以进入系统了(设置时区,帐号)

进入系统之后,开始设置系统

更改默认启动命令行

命令行小知识

很多操作需要管理员模式。为了让某些指令以管理员权限执行,需要在行首加“sudo”

sudo xxxxxx

并输入密码

在命令行中粘贴代码的快捷键为Ctrl+Shift+V

停止正在执行的操作Ctrl+Z

 

先说这么多,暂时够用了

然后打开终端(快捷键Ctrl+Alt+T),依次输入:

sudo gedit /boot/grub/grub.cfg

接着,在弹出的文本页面里,再次找到

linux        /boot/vmlinuz-4.9.0-deepin13-amd64 root=UUID=57d9aa6c-2452-4374-b4b8-bbd81a2975c2 ro splash quiet

同样的在 quiet 后面空一格,加入 acpi_osi=! acpi="windows 2009"

保存,关闭

接着,在终端里输入

sudo gedit /etc/default/grub

在弹出的文本页面的末尾加入

GRUB_CMDLINE_LINUX_DEFAULT="$GRUB_CMDLINE_LINUX_DEFAULT "'acpi_osi=! acpi_osi="Windows 2009"'

这样以后就可以不用每次开机都重复设置了

 

使用显卡驱动管理器安装intel显卡驱动并切换

当然解决的根本办法还是装好对应的驱动,这里我们先安装集显的驱动:

可以在软件应用市场下载

深度显卡驱动管理器

Linux/Deepin全流程安装指南:双显卡-Prime-docker-Nvidia_docker-日常应用

选择使用英特尔驱动,会自动识别进行安装。

不过,这个时候系统仍然不能识别本人键盘的屏幕亮度调节宏命令。但是在系统设置中可以调节屏幕亮度,先调暗一点,装完闭源驱动后再来折腾零碎小事。

安装Nvidia闭源驱动及Nvidia-prime

接下来安装Nvidia驱动。因为Nvidia驱动闭源,所以系统不能直接安装,开源驱动nouveau又鶸,所以需要这些冗杂的步骤。

 

Vim的基本使用

这里插播一条vim编辑器的使用教程。一般编辑文本文件有两种编辑器,一种是gedit,一种是vim,vim的使用没有gedit那么直观,是嵌入在命令行中的。

具体学习请跳转网址,这边只说这个情形下咋用:

用户刚刚启动 vi/vim,便进入了命令模式。按下i,切换到输入模式。然后将需要输入的内容输入进去,就像正常编辑文本一样操作即可。当编辑完文本之后,按下esc,退出输入模式,切换到命令模式输入:wq即可保存推出vim(在命令模式下按下:(英文冒号)为进入底线命令模式,其后w 保存文件q 退出程序)

禁用nouveau

笔记本双显卡安装NVIDIA闭源驱动

新建一个黑名单让系统启动的时候不去加载开源驱动

sudo vim /etc/modprobe.d/blacklist-nouveau.conf

写入以下内容:

blacklist nouveau
  options nouveau modeset=0

按ESC键,输入 :wq 保存(注意有个冒号)

重新生成 kernel initramfs:

sudo update-initramfs -u

然后重启

重新进入系统之后输入以下代码检查是否禁用成功

lsmod | grep nouveau

如果没有输出内容,证明禁用成功了。

下载run文件安装nvidia驱动

//其实网上也有使用命令行直接sudo自动安装的,但是我给装爆了,所以建议还是用tty3进行安装

确认显卡型号 使用命令

lspci | egrep "VGA|3D"

Linux/Deepin全流程安装指南:双显卡-Prime-docker-Nvidia_docker-日常应用

红框部分就是你的显卡型号,然后去NVIDIA官方下载对应的驱动

GeForce xx series 是台式机显卡驱动

GeForce xx series (Notebooks) 是笔记本驱动

别下错咯。

比如我这台机器是GTX1050,就按照下图这样设置

Linux/Deepin全流程安装指南:双显卡-Prime-docker-Nvidia_docker-日常应用

下载下来的文件是NVIDIA-Linux-x86_64-xxx.xx.run格式的

按CTRL+ALT+F3进入TTY命令行模式,帐号密码是你登陆系统的帐号和密码。

进入之后先检查之前时候安装过闭源驱动和大黄蜂方案,如果有最好卸载掉。

nvidia-smi

没输出内容证明没有安装过闭源驱动

sudo apt remove --purge nvidia* bumblebee*

安装过闭源驱动用上述方法无法卸载的,尝试

nvidia-uninstall

确认卸载完成之后,下面开始安装

先给安装包赋予运行权限

sudo chmod +x ~/Download/NVIDIA-Linux-x86_64-440.82.run

接着 切换到 运行级别3 来运行驱动安装程序(不切换好像安装不了,进安装界面就直接error

sudo init 3

运行驱动安装程序

sudo sh ~/Download/NVIDIA-Linux-x86_64-440.82.run

安装里的选项里,只有yes和no的 选yes ,有3个选项的选择中间那个over 的,最后进度条走完那个弹窗的2个选项 选 No,到这一步就算安装完成了,不过不要重启还需要配置,这时候重启可能会黑屏

配置启动脚本

新建一个display_setup.sh

sudo vim /etc/lightdm/display_setup.sh

内容如下

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

然后赋予权限

sudo chmod +x /etc/lightdm/display_setup.sh

然后在lightdm里配置启用这个脚本

sudo vim /etc/lightdm/lightdm.conf

找到 display-setup-script这一行,去掉前面的注释,将display_setup.sh这个目录填进去

display-setup-script=/etc/lightdm/display_setup.sh

做完这些操作就可以重启了。

如果发现重启之后无法进入桌面,按CTRL+ALT+F3进入TTY命令行模式,可以试试排错,一般来说不能进入桌面,应该是lightdm.service出了问题,可以用

systemctl status lightdm.service

来查看lightdm的状态。

还可以尝试看看日志来确认错误,一般出错的可能在ligthdm和xorg连接上,可以查看x-0.log这个文件来看看问题处在哪里。

安装nvidia-prime

 一个可以尝试的Nvidia Prime方案

dalao说用这个办法不保证成功,但是bumble-bee又出名地不好用,那就试试叭

要求:

turing架构的GPU(真自动切换,即不用时会自动关闭N卡),非turing架构(假自动切换,你会发现独显一直跑着xorg,以此来实现“自动切换”,目前本人已知pascal,maxwell架构可以使用该方案,欢迎大家测试)

NVIDIA版本:>=435.17(beta源已符合要求)

Xorg-server版本:>=1.20.6-1(beta源低于这个版本:1.20.4)

由于Xorg-server版本不符合要求,接下来需要添加源,终端执行:

sudo nano /etc/apt/sources.list.d/debian.list

然后添加进如下内容:

deb http://mirrors.ustc.edu.cn/debian/ unstable main contrib non-free

保存并退出,为了防止依赖关系混乱,还需要再执行:

sudo nano /etc/apt/apt.conf

 往里面加入如下内容:

APT::Default-Release "apricot";         #这么一来,除非你自己指定使用unstable源安装软件,否则apt是不会用的

保存并退出。

接下来刷新你的源列表:

sudo apt update

升级Xorg-server:

sudo apt -t unstable install xserver-xorg xserver-xorg-core

升级完成后,还没完。安装这个包,使用dpkg -i:

sudo dpkg -i nvidia-prime.deb

下载并解压这个包,解压得到.deb包再安装(不是改后缀名!我把.deb包用tar命令给压缩了):

下载nvidia-prime.tar.gz

 

然后注销,重新登录,打开nvidia-settings,如果你是像下图那样显示,证明Prime已经在运作,大功告成。你可能会遇到一个提示,说要用nvidia-xconfig创建文件,不用管它。

Linux/Deepin全流程安装指南:双显卡-Prime-docker-Nvidia_docker-日常应用

如果因为某种原因,没有像上图那样显示,那么你需要在/etc/X11/xorg.conf中显式指定(参见Arch wiki):

sudo nano /etc/X11/xorg.conf

添加如下内容:

Section "Device"
  Identifier "iGPU"
  Driver "modesetting"
EndSection

Section "Screen"
  Identifier "iGPU"
  Device "iGPU"
EndSection

Section "Device"
  Identifier "dGPU"
  Driver "nvidia"
EndSection

注销重登,Prime应该会运作了。如果还不行,请在配置文件中添加BUSID参数,具体方法参考Arch wiki。

有些应用会自动调用你的独显运行,比如虚幻4,如果没有,这么做:

prime-run command        #使用prime-run运行软件

以Blender为例:

prime-run blender

如此就很快乐地完成了Nvidia驱动以及prime的安装!

能控制屏幕亮度的快捷键

之前就有一个问题,我的键盘宏命令不能控制屏幕亮度了,我想要解决它

#!/bin/sh

if [ $# -eq 0 ]
then
echo
exit
else
step=$*
display=`xrandr --verbose | grep connected | grep -v disconnected | awk '{print $1}' `
bright=`xrandr --verbose | grep Brightness | tr -d '   Brightness: ' `
s=`echo "scale=2;$bright+$step"|bc`
xrandr --output $display --brightness $s
fi

把上面的脚本内容复制到一个文本文件里,改名成bright.sh放到一个好记的目录(比如我直接放在home目录下:/home/bright.sh),然后在下图界面添加自定义快捷键:

Linux/Deepin全流程安装指南:双显卡-Prime-docker-Nvidia_docker-日常应用

#增加亮度:

sh bright.sh 0.1 #必须给定step值!!
#降低亮度:

sh bright.sh -0.1

然后分别设置组合快捷键就ok了

可以自行调整变化值,有效位数是小数点后两位

这里设置的command也可以在命令行中执行,可以在命令行里先试一下

不过这是更改屏幕输出的明度,并不是DC调光,系统display中的亮度条并没有变化

 

xdotool方法

这里有DC调光的方法,不过本人在快捷键方式中,command不能识别,只能在终端中使用。

#调低亮度

xdotool key XF86MonBrightnessDown
#调高亮度

xdotool key XF86MonBrightnessUp

高分屏-输入法太小

默认安装的输入法其实就挺好用了,缺点……么得象形文字算马(

使用默认输入法(ctrl+space切换),设置中调整字号即可:

在侧边栏中右键输入法-configure-Appearence

Linux/Deepin全流程安装指南:双显卡-Prime-docker-Nvidia_docker-日常应用

Font size更改至30(改一下用一下输入法,调到合适大小即可)

 

Git安装

sudo apt-get install git

若缺乏依赖项:

sudo apt -f install

Oh-My-Zsh一个舒服的终端

ohmyzsh的安装

sudo apt install zsh curl
sh -c "$(curl -fsSL https://raw.githubusercontent.com/robbyrussell/oh-my-zsh/master/tools/install.sh)"

或许会遇到这个问题:(域名被污染)

Linux/Deepin全流程安装指南:双显卡-Prime-docker-Nvidia_docker-日常应用

修改hosts

sudo vim /etc/hosts
#添加如下内容:

199.232.68.133 raw.githubusercontent.com

重新执行命令即可,但是下载会比较慢。

Linux/Deepin全流程安装指南:双显卡-Prime-docker-Nvidia_docker-日常应用

安装成功

不过有的图标会出现乱码,在更改主题之前,先下载兼容的字体包

sudo apt-get install fonts-powerline 

然后更改主题

# 打开配置文件
sudo gedit ~/.zshrc 
# 找到并修改配置文件中的ZSH_THEME="XXX",XXX为默认主题,寻找一个你喜欢的主题名字替换引号中间部分即可[我是用的是agnoster]
ZSH_THEME="agnoster"
#保存退出后执行使生效
source ~/.zshrc
#重启即可生效

Linux/Deepin全流程安装指南:双显卡-Prime-docker-Nvidia_docker-日常应用

右上角选项可以在“switch theme”中更改主题(配色),在settings中更改透明度以及字体。

几个终端插件

接下来装一些比较好用的插件,例如高亮以及自动补全

下载

# 首先跳转当前目录为插件目录
cd ~/.og-my-zsh/plugins
 
# 下载自动补全插件zsh-autosuggestions
git clone https://github.com/zsh-users/zsh-autosuggestions
 
# 下载语法高亮插件zsh-autosuggestions
git clone https://github.com/zsh-users/zsh-syntax-highlighting.git

配置使用插件

# 1.自动补全插件配置
    # 打开zsh配置文件  
    sudo gedit ~/.zshrc
    # 找到plugins=(git)在git后面加个空格填写上zsh-autosuggestions即可,大部分插件都是这么配置
    plugins=(git zsh-autosuggestions)
# 2.语法高亮插件配置
    # 跳转到~/.oh-my-zsh/plugins
    cd ~/.oh-my-zsh/plugins
    # 查看当前目录所在位置并记录地址
    pwd
    # 打开zsh配置文件  
    sudo gedit ~/.zshrc
    # 在.zshrc文件最后一行加上
    source "$这里填写的就是你之前pwd之后的地址$/zsh-syntax-highlighting/zsh-syntax-highlighting.zsh"

安装自动跳转autojump

# 1.安装
sudo apt-get install autojump
 
# 2.配置
#在.zshrc最后一行添加如下
source "/usr/share/autojump/autojump.sh"

 

wps-官网下载

在app-store中没有提供,前往官网下载:wps-linux下载链接

选择Deb for x64格式,然后找到安装包安装即可

qq轻聊版

从19年9月开始,linux端的tim就无法正常接收用户头像以及聊天图片了……属实烦嗷,不过qq轻聊版还能正常工作

Wechat可以正常使用

 

网课必备-zoom

zoom下载链接,选择deb最新版即可

在安装之前,需要安装依赖项:

sudo apt-get install libxcb-xtest0

然后安装zoom的包即可

 

Docker的安装

docker是个啥呢,简单的说就是个效率贼高的虚拟机,然后可以在上面运行一些对外部没啥影响的镜像。这样不容易把系统搞崩掉,分享移植也更简单,更详细的说明见——docker是个啥.破乎

Docker中的基本概念

  • 镜像(Image):类似于虚拟机中的镜像,是一个包含有文件系统的面向Docker引擎的只读模板。任何应用程序运行都需要环境,而镜像就是用来提供这种运行环境的。例如一个Ubuntu镜像就是一个包含Ubuntu操作系统环境的模板,同理在该镜像上装上Apache软件,就可以称为Apache镜像。
  • 容器(Container):类似于一个轻量级的沙盒,可以将其看作一个极简的Linux系统环境(包括root权限、进程空间、用户空间和网络空间等),以及运行在其中的应用程序。Docker引擎利用容器来运行、隔离各个应用。容器是镜像创建的应用实例,可以创建、启动、停止、删除容器,各个容器之间是是相互隔离的,互不影响。注意:镜像本身是只读的,容器从镜像启动,是Docker在镜像的上层创建的一个可写层,镜像本身不变。
  • 仓库(Repository):类似于代码仓库,这里是镜像仓库,是Docker用来集中存放镜像文件的地方。注意与注册服务器(Registry)的区别:注册服务器是存放仓库的地方,一般会有多个仓库;而仓库是存放镜像的地方,一般每个仓库存放一类镜像,每个镜像利用tag进行区分,比如Ubuntu仓库存放有多个版本(12.04、14.04等)的Ubuntu镜像。

deepin论坛上都是用debian装的:docker for Debian官方文档

我觉得应该是因为deepin基于debian内核所以用debian的安装方法吧

#首先卸载就版本(等等你为什么会有旧版
sudo apt-get remove docker docker-engine docker.io containerd runc
#于是乎shell表示没有新增更改

接下来开始安装

#刷新源,并安装一些依赖项
sudo apt-get update
sudo apt-get install \
    apt-transport-https \
    ca-certificates \
    curl \
    gnupg-agent \
    software-properties-common
  • Add Docker’s official GPG key //新增GPG**:
$ curl -fsSL https://download.docker.com/linux/debian/gpg | sudo apt-key add -
  • Verify that you now have the key with the fingerprint 9DC8 5822 9FC7 DD38 854A E2D8 8D81 803C 0EBF CD88, by searching for the last 8 characters of the fingerprint //验证**正确安装,看fingerprint是否一致就可以了.
$ sudo apt-key fingerprint 0EBFCD88
#以下是返回的内容
pub   4096R/0EBFCD88 2017-02-22
      Key fingerprint = 9DC8 5822 9FC7 DD38 854A  E2D8 8D81 803C 0EBF CD88
uid                  Docker Release (CE deb) <aaa@qq.com>
sub   4096R/F273FCD8 2017-02-22

添加源

sudo gedit /etc/apt/sources.list.d/docker.list
#内容如下:
deb [arch=amd64] https://download.docker.com/linux/debian buster stable

检查更新并下载

sudo apt update
sudo apt install docker-ce docker-ce-cli containerd.io

检查安装是否成功

  • Verify that Docker Engine is installed correctly by running the hello-world image.
sudo docker run hello-world
  • This command downloads a test image and runs it in a container. When the container runs, it prints an informational message and exits.

成功后会显示这个:

Linux/Deepin全流程安装指南:双显卡-Prime-docker-Nvidia_docker-日常应用

导入并安装nvidia-container-toolkit

Linux/Deepin全流程安装指南:双显卡-Prime-docker-Nvidia_docker-日常应用

#添加**
curl -s -L https://nvidia.github.io/nvidia-docker/gpgkey | sudo apt-key add -

由于deepin这个分支并不是主流分支,所以Nvidia的源是没有for-deepin的。

所以跟之前一样的操作,下载debian10的nvidia-container-toolkit

#选择将debian10的源添加进来,注意正确添加会有几行“deb”打头的返回值
curl -s -L https://nvidia.github.io/nvidia-docker/debian10/nvidia-docker.list | sudo tee /etc/apt/sources.list.d/nvidia-docker.list
#更新源,如果正常,将会在HIT几行之后开始GET
sudo apt-get update
#安装,因为国内访问github较慢,下载速度亦不快
sudo apt-get install -y nvidia-container-toolkit
#重启docker
sudo systemctl restart docker
#进行验证,docker检查本地没有对应image后将会从docker-hub拉取可用源,这里下载速度亦不算快
sudo docker run --gpus all nvidia/cuda:10.0-base nvidia-smi

然后出现了报错

Linux/Deepin全流程安装指南:双显卡-Prime-docker-Nvidia_docker-日常应用

添加libnvidia-ml.so到环境变量

根据分析,应当是镜像中无法检索到libnvidia-ml.so文件,所以要找到这个文件的路径(如果存在的话),在这个镜像中添加其为环境变量

先启动一个容器,把镜像加载进去,然后在与容器的交互界面(bash)中,搜一下这玩意儿是不是存在

#-it是进入可以交互的bash的意思
#如果没有-it,则执行命令后半句后会退回到host的命令行,如上图失败截图
sudo docker run -it --gpus all nvidia/cuda:10.0-base
#进入之后发现命令的头部变成了root+blablabla:这个时候是su模式的,命令前就不需要加sudo了
#查询系统中文件名开头为“libnvidia-ml”的文件路径
find  -name libnvidia-ml*

Linux/Deepin全流程安装指南:双显卡-Prime-docker-Nvidia_docker-日常应用

那我们把它的路径添加到环境变量中应该就可以了

查询nivdia-docker的系统及版本

. /etc/os-release;echo $ID$VERSION_ID

Linux/Deepin全流程安装指南:双显卡-Prime-docker-Nvidia_docker-日常应用

可以使用apt进行更新安装

#先更新源
apt-get update
#然后安装vim
apt-get install vim

然后更改系统环境变量(PATH)我们希望设置为永久有效的,所以修改profile文件

#打开文件
vim /etc/profile
#在末尾添加如下内容
export PATH=$PATH:/usr/lib/x86_64-linux-gnu
#esc,然后输入:wq回车退出,然后让文件生效
source /etc/profile
#然后再测试nvidia驱动
nvidia-smi

Linux/Deepin全流程安装指南:双显卡-Prime-docker-Nvidia_docker-日常应用

配置成功

exit
#退出容器

注意此时Docker引擎中就有了两个(我多启动了一次所以三个)容器,可使用docker ps -a查看:

Linux/Deepin全流程安装指南:双显卡-Prime-docker-Nvidia_docker-日常应用

当退出容器时,容器的进度将被保留,下次再进入这个容器还可以继续操作:

#使用容器ID启动镜像(此时在后台启动)
sudo docker start 93554a21507d   
#进入这个容器
sudo docker attach 93554a21507d

Linux/Deepin全流程安装指南:双显卡-Prime-docker-Nvidia_docker-日常应用

我希望把我的进度保存成镜像(可以分享)

#-m后是说明信息;-a指定用户信息;
#c73f415f4b1b代表容器的id;flanker/nvidia:smi指定目标镜像的用户名、仓库名和 tag 信息
sudo docker commit -m "nvidia-docker smi" -a "flanker" c73f415f4b1b flanker/nvidia:smi
#查看镜像信息
sudo docker images

Linux/Deepin全流程安装指南:双显卡-Prime-docker-Nvidia_docker-日常应用

补一个,古有删库跑路,今有删容器跑路(bushi)的方法

#container_id可以通过ps -a查询
sudo docker rm container_id

然后会返回容器的id,再输入docker ps -a就发现他们不见了(好了可以跑路了

Apollo

  • 查看你的CPU是否支持FMA和AVX,否则仿真环境Dreamview无法启动(当在浏览器中输入http://localhos:8888,会出现"Unable to connect"的错误)。原因在于百度默认你计算机的CPU有这两个功能,代码中未提供非此类CPU时真正的解决办法。除非你能力强,马上能修改不完善的代码。
#查询CPU是否支持FMA和AVX
grep fma < /proc/cpuinfo
grep avx < /proc/cpuinfo
#分别在指令集标识中查找,若有则会返回值
  • 浏览器必须支持WebGL,否则仿真界面无法显示动画,这实际上隐含了对GPU的要求,可以不是Nvidia的,但要有。百度提供的仅有CPU的编译选项,只是水中花、镜中月。firefox开启webGL的方法
  • 必须要能搞到CAN卡的驱动程序,因为这个不是开源的,需要你购买硬件时才能提供,虽然只用到了其中的两个文件。
  • 硬盘至少50G,内存至少4G。

 

之前都是安装apollo的prerequest

#从gitee上克隆apollo,速度非常感人(对了前提要安装git
git clone https://gitee.com/baidu/apolloauto