关键词:
最近实验室买了一台新的机器,正好要从头配置机器的环境,把环境记录一下
1.安装ubuntu系统
1.1制作系统盘
首先,我们需要准备三个东西
有个这三样我们就可以开始安装我们的ubuntu系统了。
我们需要先安装好UISO9,制作U盘镜像系统。其中不需要购买软件,只需要试用即可。
第一步:打开我们下载好的iso文件
第二步:选择启动,点击写入硬盘映像,并确认硬盘驱动器是你U盘,映像文件是你下载的ISO文件,点击写入,三四分钟后即可写入完成
1.2 系统安装
我们要在自己本身的要在系统中划出一部分空间来存放ubuntu系统,所以我把分出了400G的硬盘用来安装ubuntu系统。
我们在安装系统之前,还是需要按F2进入机器的bios,修改几个设置,
- 找到Secure Boot 将他设置成Disable
- 在中设置成UEFI快速启动
这两步中根据品牌的不同,位置也是不同的,在列表中仔细寻找到该位置即可。
设置完以后,重新启动电脑,按F12,选择启动的顺序,这个时候我们需要选择U盘选项进行启动,我们会进入U盘引导项,选择install Ubuntu即可。
接下来就是我们安装ubuntu系统的过程了,一定要注意在安装的时候要断网安装
!
- 先选择中文简体,然后点击安装Ubuntu
- 选择键盘布局,我们直接默认,点击继续。
- 这里我们的硬盘空间足够大,选择正常安装,但是一定要勾掉安装Ubuntu是下载更新。
- 安装类型选择其他选项,继续
-
然后我们选择刚开始在window上划分出来给ubuntu系统的空间,点击+号,把挂载点选择成 / 即为根目录。最后点击现在安装。
-
下面一步选择时段直接继续就行,然后在设置一个登陆的名字和密码,点击继续后等待安装。
这样Ubuntu系统就安装完毕了。装系统的内容可以参考这篇博客,写的超级详细
安装以后发现一个巨大的坑,就是ubuntu无法联网,经过搜索各种博客,最终解决,可查看这篇博客
接下来我们要对ubuntu系统进行换源,这里也解释一下为什么在安装ubuntu的时候特意强调一定要断网在安装,因为ubuntu安装过程中会下载很多东西,因为国内网络原因,网速会特别的慢,这样会导致我们好几个小时都安装不好ubuntu。
接下来我们将软件源更换成国内的
- 我们现将原来的源备份
cp /etc/apt/sources.list /etc/apt/sources.list.bak
- 将源的内容设置为阿里云镜像,这里需要注意要用vi,而不要用vim
sudo vi /etc/apt/sources.list
#将sources.list文件修改为:
deb http://mirrors.aliyun.com/ubuntu/ focal main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ focal-security main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ focal-updates main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ focal-proposed main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ focal-backports main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ focal main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ focal-security main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ focal-updates main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ focal-proposed main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ focal-backports main restricted universe multiverse
- 更新软件列表:
sudo apt update
sudo apt upgrade
2. 安装Anaconda
进入官网下载anaconda,也可以使用清华源下载这个会快一些
下载好后,我们开始安装anaconda
bash Anaconda3-2019.03-Linux-x86_64.sh
接下来回车继续,后面会出现一堆的License许可声明,按Q,就会到底部,出现下面如图输入yes,回车
接下来是确认安装目录,我们也是回车
接下来是询问是否进入系统我们就初始化环境,我们这里选择no
出现下面的内容即为安装成功。
因为我们在初始化的时候选择的是no,所以我们需要手动的配置conda的环境变量。
# 在终端输入,这里的/home/gh/anaconda/bin就是你安装anaconda的路径下的bin文件夹
echo 'export PATH="/home/gh/anaconda/bin:$PATH"' >> ~/.bashrc
# 更新文件
source ~/.bashrc
怎么查看我们安装是否成功呢?运行下面这个命令,要是显示的是你的anaconda的python环境,那就是对的。
which python
安装好anaconda3后,需要给anaconda换成国内的镜像源
我们可以直接运行下面的内容进行修改镜清华源像源:
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/conda-forge/
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main/
conda config --append channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/fastai/
conda config --append channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/pytorch/
conda config --append channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/bioconda/
# 搜索时显示通道地址
conda config --set show_channel_urls yes
但是这样运行完以后,配置文件会是这样:
我们需要把- default
那一行删除掉
因为要后面可能需要科学上网,所以请大家自行学习科学上网方式,使用科学上网,会让你的安装环境过程减少一大半的问题。
3. 安装 CUDA
首先,我们需要去CUDA官网下载,普通网络可能进去有点慢,所有最好可以科学上网。
选择自己想要下载的版本,这里我下载的CUDA11.0,选择runfile版本的下载。
.run形式安装cuda,清理原有显卡驱动后,先安装自己显卡对应的驱动。
.deb形式安装cuda,由于会默认安装自带的旧版本驱动,故安装成功后,卸载此驱动,再重新安装显卡对应的驱动。
下面会给出下载命令行
wget http://developer.download.nvidia.com/compute/cuda/11.0.2/local_installers/cuda_11.0.2_450.51.05_linux.run
这里如果wget下载比较慢的话,可以配置wget后面的链接到迅雷,通过它下载这样会快一些。
下载完后,我们安装前先看一下nvidia的驱动
nvidia-smi
标1的位置你现在nvidia驱动的版本,标2的位置是安装CUDA的最高版本
这里一定要对应好自己下载的CUDA版本与NVIDIA Driver与Linux与GCC的版本对应关系,可参考博客查看对应关系
执行安装命令:
sudo sh cuda_11.0.2_450.51.05_linux.run
安装的时候会出现下图,选择continue
,这里网上有一些博客会说移除掉现有的Nvidia驱动,其实并不需要,保证现装的驱动版本正确即可,还有一些博客会让你禁用nouveau,并且卸载点图形界面,重新安装自己下载的驱动,我试过…然后系统崩溃了,又重新装系统从头配环境…
下一步,我们输入accept
再下一步,因为我们已经有驱动,一定要把Driver这一个给勾掉,不要选他,按回车就可以取消勾选了,最后选择Install,安装
最后安装完毕以后会出现:
安装好以后,需要配置环境变量
sudo gedit ~/.bashrc
在最后面加上
# CUDA Soft Link
export PATH=/usr/local/cuda-11.0/bin$PATH:+:$PATH
export LD_LIBRARY_PATH=/usr/local/cuda-11.0/lib64$LD_LIBRARY_PATH:+:$LD_LIBRARY_PATH
刷新一下:
source ~/.bashrc
测试CUDA是否安装成功,输入
nvcc -V
显示如下,安装成功
4. 安装cuDNN
首先我们需要下载cuDNN,下载的时候我们需要他的官网需要我们注册登录才可以下载,但是他注册登录的功能还是崩溃的…我们需要绕过他的注册登录
点击这里下载,找到自己对应版本的cuDNN,这里我选择cuDNN8.1.1。
点击右键有一个复制链接地址,把这个地址复制到迅雷上,就可以避免注册和登陆,但是有的版本采用这种方法下载的时候,迅雷会一直显示连接资源,出现这种情况,就只能老老实实注册登陆吧。
下载好以后,首先解压:
tar -xvf cudnn-11.2-linux-x64-v8.1.0.77.tgz
复制解压出来的文件到安装好的CUDA环境中,输入:
sudo cp cuda/include/cudnn.h /usr/local/cuda/include
sudo cp cuda/lib64/libcudnn* /usr/local/cuda/lib64
# 更改权限输入
sudo chmod a+r /usr/local/cuda/include/cudnn.h /usr/local/cuda/lib64/libcudnn*
5.配置SSH & 远程桌面
5.1 配置SSH
因为在学校里面,只要连接校园网就是在同一个局域网下,我将ubuntu系统配置SSH,用于远程连接使用。
sudo apt install ssh
会自动安装好很多依赖包并启动服务,完成之后用XShell等软件就可以SSH登录服务器了。
5.2配置远程桌面
为了方便的可以直接在局域网下远程控制桌面版Ubuntu,安装一下Xrdp,Xrdp是一个开源工具,允许用户通过Windows RDP访问Linux远程桌面。 除了Windows RDP之外,xrdp工具还接受来自其他RDP客户端的连接,如FreeRDP,rdesktop和NeutrinoRDP。 Xrdp现在支持TLS安全层,这样就可以使用window自带的远程工具进行远程控制了。
还有一点要注意:有的Xwindow软件是不太兼容xrdp的(比如ubuntu 18.04的默认桌面),但是ubuntu 20.04使用的Gnome是完全ok的。
安装过程如下:
sudo apt install xrdp
安装完成xrdp 服务将会自动启动,可以输入下面的命令验证它:
sudo systemctl status xrdp
输出会是这个样子
● xrdp.service - xrdp daemon
Loaded: loaded (/lib/systemd/system/xrdp.service; enabled; vendor preset: enabled)
Active: active (running) since Fri 2020-05-22 17:36:16 UTC; 4min 41s ago
…
默认情况下,Xrdp 使用/etc/ssl/private/ssl-cert-snakeoil.key
,它仅仅对“ssl-cert” 用户组成语可读。运行下面的命令,将xrdp
用户添加到这个用户组:
sudo adduser xrdp ssl-cert
重启 Xrdp 服务,使得修改生效:
sudo systemctl restart xrdp
这样就可以使用window自带的远程控制电脑了。
我在配置完以后还是出现了一点问题,在连接成功后远程一直是黑屏
,要是同样出现这种情况,可以采用下面的方法进行解决:
vim /etc/xrdp/startwm.sh
在文件中添加
unset DBUS_SESSION_BUS_ADDRESS
unset XDG_RUNTIME_DIR
最后重启使配置生效:
sudo systemctl restart xrdp
linux编程手把手教你搭建linux编程环境(代码片段)
纸上得来终觉浅,绝知此事要躬行Linux编程环境搭建有两套方案。关于这两套方案我都会做详细的讲解,以便帮助大家减少Linux编程学习的障碍。方案一:云服务器+Xshell这种方案就是将我们的Linux操作机部署在云服... 查看详情
手把手教你搭建vue环境(代码片段)
第一步node环境安装1.1如果本机没有安装node运行环境,请下载node安装包进行安装1.2如果本机已经安装node的运行换,请更新至最新的node版本下载地址:https://nodejs.org/en/ 或者 http://nodejs.cn/第二步node环境检测为了快乐的使用... 查看详情
手把手教你:基于深度残差网络(resnet)的水果分类识别系统(代码片段)
系列文章手把手教你:图像识别的垃圾分类系统手把手教你:人脸识别考勤系统手把手教你:基于粒子群优化算法(PSO)优化卷积神经网络(CNN)的文本分类目录系列文章一、项目简介二、水果分类结... 查看详情
☀️手把手教你camel环境搭建☀️《❤️记得收藏❤️》(代码片段)
☀️手把手教你Camel环境搭建☀️《❤️记得收藏❤️》目录😊开讲啦!!!!🏳️🌈:person_fencing:1、Vagrant环境😀1.1、Vagrant是什么😃1.2、Vagrant能做什么😄1.3、Vagrant相关软件下载Ƕ 查看详情
手把手教你搭建深度学习平台——避坑安装theano+cuda
python有多混乱我就不多说了。这个混论不仅是指整个python市场混乱,更混乱的还有python的各种附加依赖包。为了一劳永逸解决python的各种依赖包对深度学习造成的影响,本文中采用python的发行版Anaconda。Step1安装Anaconda这里不建议... 查看详情
手把手教你搭建selenuim自动化环境(代码片段)
看完这篇文章,你将学到如何在Windows上搭建Python+Selenium自动化环境。1.本次使用的系统环境是最新的Windows1017134系统;2.本次使用的Python版本为3.4.4,使用这个版本的原因是3.5以后就不支持XP系统了,但是我有需... 查看详情
手把手教你搭建yolov5+strongsortwithosnet环境(代码片段)
项目介绍YOLOv5+StrongSORTwithOSNet模型由YOLOv5检测器、StrongSORT跟踪算法、OSNet行人重识别模型组成项目地址:https://github.com/mikel-brostrom/Yolov5_StrongSORT_OSNet由于现在的代码中没有yolov5和reid代码,所以需要下载源码加入到YOLOv5&... 查看详情
手把手教你vscode搭建stm32开发环境(代码片段)
摘要:作为一个51单片机或STM32单片机的使用者,keil一直是我们的必备的一款工具之一。但keil的一些问题也一直存在,当然也有人用其他的比如STM32CubeIDE。但是今天推荐的是VScode+KeilAssistant插件,不需要很复杂... 查看详情
手把手教你内网环境搭建百度地图(代码片段)
百度地图内网访问方案现在有一个项目,需要实现内网访问百度地图。上网查阅资料发现有以下两种思路:1、离线百度地图api以及一些资源(控件、logo)2、离线百度地图api以及一些资源(控件、logo、瓦片图&... 查看详情
《嵌入式-stm32开发指南》手把手教你搭建stm32开发环境[linux版-3](代码片段)
《嵌入式-STM32开发指南》手把手教你搭建STM32开发环境[Linux版-1]《嵌入式-STM32开发指南》手把手教你搭建STM32开发环境[Linux版-2]7OpenOCDOpenOCD是用于对STM32进行下载仿真的工具,是一个开源软件包。OpenOCD官网OpenOCD下载地址7.1OpenO... 查看详情
《嵌入式-stm32开发指南》手把手教你搭建stm32开发环境[linux版-3](代码片段)
《嵌入式-STM32开发指南》手把手教你搭建STM32开发环境[Linux版-1]《嵌入式-STM32开发指南》手把手教你搭建STM32开发环境[Linux版-2]7OpenOCDOpenOCD是用于对STM32进行下载仿真的工具,是一个开源软件包。OpenOCD官网OpenOCD下载地址7.1OpenO... 查看详情
手把手教你搭建facebook区块链libra的开发环境(代码片段)
脸书在发布了区块链新应用Libra之后,又发布了Libra的编程语言Move,可能是刚刚发布笔者尝试在ubantu系统下安装Move语言的开发环境,可能是发布时间太短,笔者还是遇到了很多坑的。这里用博客记录一下相... 查看详情
java学习第一步:jdk环境搭建(手把手教你)
众所周知,当你学习一门新语言的时候,总是免不了环境搭建这一步:软件、插件、各种包......尤其是Java,我周围就有很多同学都是因为不会搭建JDK环境而放弃后续的学习——其实大部分都是因为怕麻烦、粗心或者手残而失败... 查看详情
《嵌入式-stm32开发指南》手把手教你搭建stm32开发环境[windows版-3](代码片段)
《嵌入式-STM32开发指南》手把手教你搭建STM32开发环境[Windows版-1]《嵌入式-STM32开发指南》手把手教你搭建STM32开发环境[Windows版-2]前面的章节讲解了STM32的新建工程到编译下载,接下来将讲解STM32的调试。6OpenOCDOpenOCD是用于对S... 查看详情
《嵌入式-stm32开发指南》手把手教你搭建stm32开发环境[windows版-3](代码片段)
《嵌入式-STM32开发指南》手把手教你搭建STM32开发环境[Windows版-1]《嵌入式-STM32开发指南》手把手教你搭建STM32开发环境[Windows版-2]前面的章节讲解了STM32的新建工程到编译下载,接下来将讲解STM32的调试。6OpenOCDOpenOCD是用于对S... 查看详情
手把手教你搭建国产嵌入式模拟器skyeye开发环境(代码片段)
SkyEye介绍SkyEye是一个开源软件(OpenSourceSoftware)项目,中文名字是"天目"。SkyEye的目标是在通用的Linux和Windows平台上实现一个纯软件集成开发环境,模拟常见的嵌入式计算机系统(这里假定"仿真"和"... 查看详情
手把手教你在fpga上搭建一个cortex-m3软核(代码片段)
...号,不错过精彩内容转自| 电子电路开发学习本文将手把手教你如何基于ARMDesignStart计划,在FPGA上搭建一个Cortex-M3软核处理器。以XilinxArtix-7™系列FPGA为例,介绍如何定制一颗ARMCortex-M3SoC软核,并添加GPIO和UART外设... 查看详情
手把手教你在fpga上搭建一个cortex-m3软核(代码片段)
...号,不错过精彩内容转自| 电子电路开发学习本文将手把手教你如何基于ARMDesignStart计划,在FPGA上搭建一个Cortex-M3软核处理器。以XilinxArtix-7™系列FPGA为例,介绍如何定制一颗ARMCortex-M3SoC软核,并添加GPIO和UART外设... 查看详情