win10,ubuntu双系统安装及后续配置
一、双系统安装
安装过程完全参考文章:Windows10安装ubuntu18.04双系统教程
安装后出现了文章末尾提到的启动黑屏的问题,按照文章末尾提供的方法尝试了一下,问题得到了解决。
二、Ubuntu系统配置
1. 更换apt-get源
需要把apt-get更换为国内源,不然会慢慢慢慢死。更换的教程很多,这里记录一下。
将apt-get更换为阿里源的步骤如下:
-
首先打开终端,输入
sudo cp /etc/apt/sources.list /etc/apt/sources.list_default
,备份默认源。 -
在终端输入
sudo gedit /etc/apt/sources.list
,打开apt-get的源列表。 -
将文件中的内容替换为以下内容:
# 阿里镜像源 deb http://mirrors.aliyun.com/ubuntu/ bionic main restricted universe multiverse deb-src http://mirrors.aliyun.com/ubuntu/ bionic main restricted universe multiverse deb http://mirrors.aliyun.com/ubuntu/ bionic-security main restricted universe multiverse deb-src http://mirrors.aliyun.com/ubuntu/ bionic-security main restricted universe multiverse deb http://mirrors.aliyun.com/ubuntu/ bionic-updates main restricted universe multiverse deb-src http://mirrors.aliyun.com/ubuntu/ bionic-updates main restricted universe multiverse deb http://mirrors.aliyun.com/ubuntu/ bionic-proposed main restricted universe multiverse deb-src http://mirrors.aliyun.com/ubuntu/ bionic-proposed main restricted universe multiverse deb http://mirrors.aliyun.com/ubuntu/ bionic-backports main restricted universe multiverse deb-src http://mirrors.aliyun.com/ubuntu/ bionic-backports main restricted universe multiverse
关闭文件并保存。
4. 在终端输入sudo apt-get update
更新源,会发现速度很快。
2. 安装英伟达显卡驱动
2.1 下载驱动包
下载要安装的驱动到本地,文件以.run结尾
2.2 安装所需的包
- 安装gcc:
sudo apt-get install gcc
- 安装make:
sudo apt-get install make
如果缺少这两个包,后面安装过程可能会报错。
2.3 禁用自带的显卡驱动nouveau
# 创建文件:
sudo gedit /etc/modprobe.d/blacklist-nouveau.conf
# 输入以下内容:
blacklist nouveau
options nouveau modeset=0
# 保存并关闭文件后在终端执行:
sudo update-initramfs -u
# 重启:
sudo reboot
# 查看是否禁用成功:
lsmod | grep nouveau
# 若无输出证明成功
2.4 禁用图形界面
安装显卡驱动前要最好先禁用显示管理器,不然据说会有问题(……)。
- 下载lightdm图形处理器:
sudo apt-get install lightdm
。在弹出的界面选择使用lightdm,PS:另一个选项是gdm3。 - 忍痛把刚刚安装上的lightdm暂且禁用掉:
sudo service lightdm stop
。禁用后电脑屏幕全黑,不过不要怕!按CTRL+ALT+F3
(也可能是其他快捷方式)切换进字符界面,输入密码登录。
2.5 卸载现有驱动
sudo apt-get --purge remove nvidia-*
sudo apt-get autoremove
sudo nvidia-uninstall
2.6 安装新驱动
- 进入驱动的run文件所在文件夹,打开终端,输入
sudo chmod a+x xxx.run
赋予其可执行权限。 - 安装驱动:
sudo ./xxx.run -no-x-check -no-nouveau-check -no-opengl-files
。注意如果不加最后一项很可能会出错。安装过程中的弹窗,依次选择“Continue Installation”、“Ignore CC version check”、“No”(针对问题Would you like to run the nvidia-xconfig utility to automatically update your x configuration file……这个问题问是否打开图形管理器,选择否,待安装完成后手动打开)
2.7 重启lightdm
sudo service lightdm restart
至此,安装驱动完成。要查看驱动信息,可以使用语句nvidia-smi
进校园查看。
后面一顿操作后,可能回过头发现驱动掉了,需要重新安装。如我在运行程序时提示错误:
No CUDA runtime is found, using CUDA_HOME='/usr'
经检查,我的cuda安装无误,且环境变量也并非是'/usr'
,后来发现是因为驱动掉了,重装后不再报错。
3. 禁止内核自动更新
设置过程参考文章https://blog.csdn.net/davidhzq/article/details/102651588
4. 安装Anaconda并更换conda源
和前面的更换apt-get源一样,如果使用默认的源,会导致慢慢慢慢慢,所以conda源也要更换成国内的源。参考网络上的教程,暂且更换为清华源,更换过程如下:
-
下载anaconda安装包,在其所在位置打开终端并输入
bash XXX.sh
,选择默认位置就行。 -
如果前面安装过程中没有加入环境变量,后续可以选择手动加入。在终端输入
sudo gedit ~/.bashrc
,在打开的文件中输入:# added by Anaconda3 installer export PATH="/home/XXX/anaconda3/bin:$PATH"
保存并关闭文件,在终端输入
source ~/.bashrc
更新环境变量。 -
为了更换conda源, 在终端中输入
sudo gedit ~/.condarc
,打开conda配置文件 -
在打开的文件中输入:
channels: - defaults show_channel_urls: true channel_alias: https://mirrors.tuna.tsinghua.edu.cn/anaconda default_channels: - https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main - https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free - https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/r - https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/pro - https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/msys2 custom_channels: conda-forge: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud msys2: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud bioconda: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud menpo: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud pytorch: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud simpleitk: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
更换conda源为清华源,保存并关闭文件,在终端输入
source ~/.condarc
更新环境变量。
5. 更换pip源
这部分参考Ubuntu16.04下配置pip国内镜像源加速安装
-
创建.pip/文件夹
在终端运行cd ~/.pip
,检查是否已有文件存在,若没有,使用mkdir ~/.pip
创建.pip/文件夹。 -
在该文件夹下创建config文件并打开
sudo gedit ~/.pip/pip.conf
-
在打开的文件中输入以下内容:
[global] index-url = http://mirrors.aliyun.com/pypi/simple/ trusted-host = mirrors.aliyun.com
保存并退出,替换为阿里源。
6. 安装cuda和cudnn
6.1 安装cuda
安装步骤可以参考https://cloud.tencent.com/developer/article/1623816
根据单位要求,下载并安装cuda10.0,在下载好的文件夹下,打开终端,运行如下语句:
sudo sh cuda_v10.0.130.run
接下来会让阅读一个长长长长的文档,按CTRL+C
跳过就行。接下来按图中进行选择。
Do you accept the previously read EULA?
accept/decline/quit: accept
# 注意这个选项要选no
Install NVIDIA Accelerated Graphics Driver for Linux-x86_64 410.48?
(y)es/(n)o/(q)uit: n
Install the CUDA 10.0 Toolkit?
(y)es/(n)o/(q)uit: y
Enter Toolkit Location
[ default is /usr/local/cuda-10.0 ]:
Do you want to install a symbolic link at /usr/local/cuda?
(y)es/(n)o/(q)uit: y
Install the CUDA 10.0 Samples?
(y)es/(n)o/(q)uit: y
Enter CUDA Samples Location
[ default is /home/XXX ]:
Installing the CUDA Toolkit in /usr/local/cuda-10.0 ...
注意这里有个坑,第一个选择问你是否要安装 NVIDIA Accelerated Graphics Driver,记得要选择no,不然后面会报错:
It appears that an X server is running. Please exit X before installation.
If you're sure that X is not running, but are getting this error, please delete any X lock files in /tmp.
其他选项都选择yes、安装路径使用默认即可。
安装成功后会出现提示:
Please make sure that
- PATH includes /usr/local/cuda-10.0/bin
- LD_LIBRARY_PATH includes /usr/local/cuda-10.0/lib64, or, add /usr/local/cuda-10.0/lib64 to /etc/ld.so.conf and run ldconfig as root
To uninstall the CUDA Toolkit, run the uninstall script in /usr/local/cuda-10.0/bin
根据提示内容和网络上的教程,修改.bashrc文件。
首先打开文件:
sudo gedit ~/.bashrc
其次在打开的文件中添加如下语句:
# for CUDA-10.0
export CUDA_HOME=/usr/local/cuda-10.0
export LD_LIBRARY_PATH=/usr/local/cuda-10.0/lib64
export PATH="$PATH:$LD_LIBRARY_PATH:$CUDA_HOME"
注意export PATH=$PATH:/usr/local/cuda-10.0
这一句最后不要加/bin
,不然在使用mmdetection的时候会出问题。
最后在命令行运行如下语句使bashrc的修改生效:
source ~/.bashrc
完成后,运行nvcc-V
,检查cuda是否成功安装,若成功安装,应当显示版本号。也可使用cat /usr/local/cuda/version.txt
进行查询。
6.2 安装cudnn
安装cudnn的方法类似,下载cudnn,解压并打开cudnn_v7.4.2.24_for_CUDA_v10.0文件夹,打开终端并运行:
sudo cp ./cuda/include/cudnn.h /usr/local/cuda/include/cudnn.h
sudo cp ./cuda/lib64/libcudnn* /usr/local/cuda/lib64
将cudnn里的文件复制进安装好的cuda中。再更改文件权限:
sudo chmod 777 /usr/local/cuda/include/cudnn.h
sudo chmod 777 /usr/local/cuda/lib64/libcudnn*
如果日后想要查看cudnn版本,可以使用语句:
cat /usr/local/cuda/include/cudnn.h | grep CUDNN_MAJOR -A 2
6.3 删除cuda
后续遇到一些情况,可能需要删除这一cuda版本,则可以根据前面的提示,使用如下语句进行卸载:
sudo /usr/local/cuda-10.0/bin/uninstall_cuda_10.0.pl
卸载后再清理残留文件夹:
sudo rm -rf /usr/local/cuda-10.0/
即可完成卸载。
结束
至此,大体完成了重装双系统后的系统配置工作。