从零开始配一个深度学习服务器:固态+机械双硬盘ubuntu系统的安装、分区、配置超详细教程 |
您所在的位置:网站首页 › ubuntu自动分区合理吗 › 从零开始配一个深度学习服务器:固态+机械双硬盘ubuntu系统的安装、分区、配置超详细教程 |
现有一个服务器,打算用于深度学习,于是只安装ubuntu系统即可。先列一下我电脑的配置信息: 类型版本/大小显卡nvidia 3080Ti内存32GSSD512G固态硬盘4T 我这里安装的是ubuntu20.04.2.0,下面是系统的安装配置教程。 1 系统安装系统安装首先需要准备一个U盘,将ubuntu系统下载解压进去,然后进入电脑的BIOS界面设置security boot并设置从该U盘启动。详细教程百度即可。设置好之后重启电脑,会进入系统安装界面。在选择安装类型的时候,选择其他选项,可以自己定义磁盘的分配方式(而实际上也必须这么做,因为如果选择清除整个磁盘并安装的话,那系统只能安装在一个硬盘上,但是我们有双硬盘)。在安装类型界面,如果该服务器之前已经使用过了,比如它原本已经安装了windows系统或者是安装了双系统了,那么磁盘会显示一些使用的情况,我们这里需要清空所有内容然后只装ubuntu系统,所以直接把所有非空闲状态的磁盘都删除掉就行,这样磁盘就都变成空闲了。如下图所示,其中名为nvme0n1的磁盘是固态硬盘,大小为512G,名为sda的磁盘为机械硬盘,大小为4T。这里,我们只需要给ubuntu系统分四个区就行,分区方案如下表所示: 分区大小挂载点类型硬盘位置efi系统分区500M无主分区SSD空间起始位置swap分区与电脑内存一样大(比如我这里32G)交换空间逻辑分区SSD空间起始位置Ext4分区SSD剩余所有空间/主分区SSD空间起始位置Ext4分区机械硬盘所有空间/home主分区机械硬盘空间起始位置 其中efi系统分区是启动引导相关的,swap分区是交换分区,一般设置为与电脑内存一样大就行,/是系统根目录,将SSD的剩余所有空间都给它,/home用于存放用户数据等,整个机械硬盘都分给它(当然,我这里留了200G空闲内存,算是以备不时之需吧,毕竟总共有4T的机械硬盘,不差那200G)。分区后的情况如下图:![]() 下面介绍一些安装完系统后的初始化配置方法。 2.1 设置root用户密码在安装好系统后,如果直接打开一个终端执行su的话,会得到报错su: 认证失败。因为root用户默认是锁定状态,不允许登录,因此需要进行配置。终端执行: sudo passwd root会先要求你输入用户密码,然后会要你输入新的密码以及确认,这里新的密码就是root的密码,可以设置的和用户密码不一样,也可以一样。设置后,再次执行: su输入刚刚设置的root密码后,就可以进入root了。 2.2 更新系统软件依次执行如下两行代码即可: sudo apt update sudo apt upgrade2.3 禁止内核更新(非常重要!) 这是必要的一步,不然后边很容易出现驱动版本错误等各种问题,导致系统崩溃。执行: dpkg --get-selections |grep linux 可以查看电脑已安装的内核版本,比如我这里的输出如下: 可以查看当前正在使用的内核版本。比如我这里的输出是: 禁止后,可以再次执行dpkg --get-selections |grep linux查看版本情况,输出如下: 删除旧驱动: sudo apt-get purge nvidia*禁止自带的nouveau nvidia驱动: sudo gedit /etc/modprobe.d/blacklist-nouveau.conf在打开的空白文件内,填入如下两行内容,然后保存关闭。 blacklist nouveau options nouveau modeset=0更新配置文件: sudo update-initramfs -u接下来执行如下命令,重启系统: sudo reboot重启之后,因为禁止了显卡的驱动,所以重启后显示的效果不是很好,通过这个可以看出,是否完成这一步操作。(在我这里表现很明显的就是,我本来是双屏的,但是重启后就只剩一个屏了) 添加Graphic Drivers PPA: sudo add-apt-repository ppa:graphics-drivers/ppa更新: sudo apt-get update查看合适的驱动版本: ubuntu-drivers devices 输出如下: 安装完成后,重启系统: sudo reboot(嗯,上面不是说我卸掉默认驱动后,重启双屏变单屏了吗。然后这回重启后,双屏它又自动回来了) 执行如下命令,可以判断是否成功安装驱动: sudo nvidia-smi 如果输出类似如下,则表明显卡驱动安装成功: 如果执行之后,有弹出一个NVIDIA X Server Settings窗口,则表明安装成功。 cuda的安装主要包括cuda toolkit的安装以及cudnn的配置两步。 3.2.1 安装cuda toolkit 首先从官网下载自己需要的cuda版本,下载链接。我这里选择cuda11.0(下面涉及到版本号的记得替换成自己的版本),配置选项如下所示: 在下载的过程中,可以先安装一下依赖库(不安装的话安装cuda的过程会报错),执行如下命令: sudo apt-get install freeglut3-dev build-essential libx11-dev libxmu-dev libxi-dev libgl1-mesa-glx libglu1-mesa libglu1-mesa-dev然后,执行安装命令: sudo sh cuda_11.0.2_450.51.05_linux.run下面是安装的选项: Existing package manager installation of the driver found. It is strongly │ │ recommended that you remove this before continuing. # 选continue Do you accept the above EULA? (accept/decline/quit): #accept 接下来会选择是否安装驱动等,这一步比较重要。驱动的话我们在前面已经安装好了,这里需要把它的选项给去掉。界面操作的方式在底部有说明,设置好的选项如下图所示,然后选择install。 如果输出中有cuda-11.0的话,那么再进入该目录下: cd cuda-11.0 ls 如果输出如下,则表明安装成功了: 安装好cuda后,需要下载cudnn对相应文件进行替换。cudnn的下载链接。我这里选择用于cuda11.0的8.0.5版本,选择第一个选项cuDNN Library for Linux (x86_64)即可,如下图所示: 配置好后即可。 3.3 设置环境变量这里的配置和其他教程有所不同,我是直接不带版本号添加cuda的,这样便于后续进行多版本的cuda安装和管理,多版本cuda安装管理教程可参考这里。在任一终端中,执行: sudo gedit ~/.bashrc在打开文件的末尾,添加如下两行代码: export PATH=/usr/local/cuda/bin${PATH:+:${PATH}} export LD_LIBRARY_PATH=/usr/local/cuda/lib64${LD_LIBRARY_PATH:+:${LD_LIBRARY_PATH}}保存关闭,然后在终端执行: source ~/.bashrc使修改立即生效。接下来,给cuda创建软链接: sudo ln -s /usr/local/cuda-11.0 /usr/local/cuda然后输入如下命令进行验证: nvcc --version 我这里的输出如下: 执行make命令: sudo make然后: ./deviceQuery如果有输出GPU信息,则表明安装成功! 4 安装AnacondaAnaconda是一个使用非常广泛的深度学习虚拟环境管理软件,它可以用于隔离多个环境,操作简便。使用Anaconda管理多个虚拟环境的教程可以参考这里。个人版Anaconda3可以从官网直接下载(历史版本在这里),我这里下载的是当下最新的版本Anaconda3-2021.11-Linux-x86_64.sh。下载完成后,执行如下命令进行安装: bash Anaconda3-2021.11-Linux-x86_64.sh 遇到的所有中断都直接yes即可。安装完成后,会输出如下信息: 下面是一些常用开发工具的安装教程,可以按需进行选择。 5.1 vscodevscode是一个使用非常广泛的轻量级跨平台编程IDE。虽然vscode可以简单地使用命令行进行安装。但是,这样安装好的vscode是不能输入中文的,所以需要手动从官网下载vscode的deb安装包来安装。我这里下载的文件名为code_1.62.3-1637137107_amd64.deb,然后,在该目录下打开一个终端,执行如下命令进行安装: sudo dpkg -i code_1.62.3-1637137107_amd64.deb 安装过程很快。完成后即可在全部应用里面看到vscode的应用图标了。 打开vscode,进入extension,可以安装一些自己需要的扩展,这些扩展可以方便我们的开发过程,如下图所示: 向日葵是一个常用的免费远程控制软件,可以点击这里下载。我这里下载的文件名为sunloginclient-11.0.0.36662-amd64.deb。与vscode的安装一样,在该目录下打开一个终端,执行如下命令: sudo dpkg -i sunloginclient-11.0.0.36662-amd64.deb安装完成后即可在全部应用中看到向日葵的应用图标,登陆账号即可使用。但是,在使用另一台电脑远程控制这个电脑的时候,有可能会遇到还没进入控制界面就出现连接已断开的问题。这是因为我们的系统中还没有安装配置lightdm,而这是向日葵所需要的依赖。解决方法可以参考这里。 5.3 gitgit是远程代码托管平台,可以直接执行如下命令进行安装: sudo apt-get install git安装完成后,依次执行如下两行命令进行用户名和邮箱的配置(这里用户名可以随意设置,简单好输入就行,因为后面使用的时候经常会要你输入用户名。但是邮箱需要和你注册github或者gitee的一致): git config --global user.name "xxx" git config --global user.email "[email protected]"然后需要配置ssh。首先执行如下命令生成.ssh目录(使用上面设置的邮箱): ssh-keygen -t rsa -C "[email protected]" 执行后会有三个要你确认的东西,全部直接按回车键默认选项即可。完成后,打开用户文件夹,打开主目录的显示隐藏文件的选项,如下图所示: sublime是一个轻量级文本编辑软件,对各种语言的代码都有较高的支持度,使用方便。其完全配置教程可以直接参考这里。 参考链接: Ubuntu系统安装与深度学习环境配置 Ubuntu18.04深度学习GPU环境配置 ubuntu下安装多版本cuda及版本切换教程 |
今日新闻 |
推荐新闻 |
CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3 |