4月26日,Ubuntu 18.04 LTS 长期支持版终于发布,随之发布的也包含官方支持的多种flavors,包含 Ubuntu Mate, Ubuntu Budgie, Kubuntu, Lubuntu, XUbuntu。之前尝试过多种Linux版本,但个人喜欢Budgie,所以将记录在Budgie上的配置过程,估计也可直接用于其他18.04版本的Ubuntu分支。
由于Ubuntu 18.04 刚发布,很多需要的软件无法在第一时间获得更新,比如搜狗输入法和ss-qt5,以及CUDA等官方还未提供正式版本,但又是平常需要的软件和环境,所以今天就记录一下如何安装必备上网/输入法/以及深度学习环境的过程,这也是我从刚安装好系统到可实现正常研究需要的完成流程。
安装配置的内容如下:
所有文件都在rjsupplicant文件夹下,先使用sudo apt install net-tools
安装查看网卡的命令,然后用 ifconfig
查看有线网卡。
sudo chmod a+x rjsupplicant/
sudo ./rjsupplicant/rjsupplicant.sh -a 1 -d 0 -n 网卡端口 -u 学号 -p 密码
使用alias
创建新命令,在terminal输入sudo gedit ./.bashrc
,然后把下面的代码放到文件里:
alias ruijie='sudo /home/username/rjsupplicant/rjsupplicant.sh -a 1 -d 0 -n 网卡端口 -u 学号 -p 密码
保存后source ./.bashrc
生效,以后就直接输入ruijie就可以上网。
配置了自己的服务器,上谷歌学术和youtube 都需要ss-qt5,可能Ubuntu 16.04 和其他版本都有很多直接的安装方法,但是Ubuntu 18.04暂时还没有,所以使用官方提供的通用ApppImage文件来使用。在Github上下载Shadowsocks-Qt5-3.0.0-x86_64.AppImage
文件,然后通过下面的命令就可运行出ss-qt5的界面。
sudo chmod a+x ./Shadowsocks-Qt5-3.0.0-x86_64.AppImage
./Shadowsocks-Qt5-3.0.0-x86_64.AppImage
为了以后的方便,将这串代码写入.bashrc文件里写成命令:
alias ss-qt5='sudo /home/cheng/Downloads/Shadowsocks-Qt5-3.0.0-x86_64.AppImage'
source ./.bashrc
以后就可以直接在命令行输入ss-qt5
开启界面,输入自己的参数信息连接。
error:sign_and_send_pubkey: signing failed: agent refused operation
解决方法:
eval "$(ssh-agent -s)"
ssh-add
但是接着会处出现一个问题:
Permissions 0777 for '/home/cheng/.ssh/id_rsa' are too open.
解决方法:
chmod 400 ~/.ssh/id_rsa
完整设置参考该博客:
setting SwitchyOmega—Autoproxy:
https://raw.githubusercontent.com/gfwlist/gfwlist/master/gfwlist.txt
由于Ubuntu 18.04 上安装搜狗输入法一直没有成功,所以尝试安装其他的输入法,虽然谷歌拼音输入法不够智能,但偶尔使用还是可以的,且安装过程简单。
进入Budgie Welcome —> Getting Started —> Language & Input,点击Install & Configure Fcitx
即可自动安装配置好Fcitx。这部分可能是Budgie比较方便的部分,其他分支可查看其他方法安装fctix。
使用命令sudo apt install fcitx-googlepinyin
,完成安装后logout登出再登录。
搜索fcitx configuration,选中弹出设置界面。
点击左下角+(“添加”),在弹出的界面取消选择“only show current language”
选项,并将进度条拉到最底部就可以看到Google Pinyin选项。
选中并点击OK即可添加。默认使用ctrl+空格
切换中英文输入法。
首先在Nvidia官网下载好相应的驱动文件。
Ubuntu Budgie 18.04 默认没有安装gcc和make,但编译驱动缺少这两个程序会有错误,所以使用如下命令安装。
sudo apt install gcc
sudo apt install make
(1)sudo gedit /etc/modprobe.d/blacklist.conf
(2)将 " blacklist nouveau " 写入文件的末尾并保存
(3)sudo update-initramfs -u
(4)sudo reboot
(1) (ctrl+alt+f1)进入文字界面
(2)检查nouveau是否禁用: `lsmod | grep nouveau`, 没有返回结果则禁用。
(3)sudo service lightdm stop
cd Downloads
sudo chmod a+x ./Nvidia.....
sudo ./Nvidia... -no-nouveau-check -no-x-check -no-opengl-files # 可避免循环等问题
sudo reboot
安装完成后nvidia-smi
查看显卡信息。
由于Nvidia官网还未提供Ubuntu 18.04 的CUDA安装包,因次将换种简单方法进行安装。
sudo apt install nvidia-cuda-toolkit
这句命令就可以在Ubuntu 18.04 简单完成CUDA 9.1的安装。来源参考博客How to install MXNet on Ubuntu 18.04
这个包比较大,下载过程时间比较长,请耐心等待。安装成功后使用nvcc --version
检测所安装的CUDA为9.1版本。
从Nvidia官网下载cuDNN7.1.3 for CUDA 9.1
然后解压并移动到指定路径下。
tar -zxvf cudnn-9.1-linux-x64-v7.1.tgz
mv cuda ~/cuda
将下面一行添加到 ~/.bashrc 或 ~/.zshrc 文件中:
export LD_LIBRARY_PATH=$HOME/cuda/lib64:$LD_LIBRARY_PATH
并source ~/.bashrc
使其生效。
Ubuntu18.04自带python2.7 和 python 3.6 两个版本,将同时对这两个版本的python 进行配置。
安装pip:
sudo apt-get install python-pip
sudo apt-get install python3-pip
查看pip 版本:
pip --version
pip3 --version
pip升级:
sudo pip install -i https://pypi.tuna.tsinghua.edu.cn/simple pip --upgrade # 使用清华源安装
sudo pip3 install -i https://pypi.tuna.tsinghua.edu.cn/simple pip --upgrade
python2 和python3分别安装 numpy/matplotlib/opencv:
sudo pip2 install -i https://pypi.tuna.tsinghua.edu.cn/simple numpy
sudo pip3 install -i https://pypi.tuna.tsinghua.edu.cn/simple numpy
sudo pip install -i https://pypi.tuna.tsinghua.edu.cn/simple matplotlib
sudo pip3 install -i https://pypi.tuna.tsinghua.edu.cn/simple matplotlib
sudo pip2 install -i https://pypi.tuna.tsinghua.edu.cn/simple opencv-python
sudo pip3 install -i https://pypi.tuna.tsinghua.edu.cn/simple opencv-python
# python2 install pyotrch
sudo pip2 install torch-0.4.0-cp27-cp27mu-linux_x86_64.whl # 我使用的提前下载好的安装文件,可使用官网提供的网址直接下载安装
sudo pip2 install -i https://pypi.tuna.tsinghua.edu.cn/simple torchvision
# python3 install pytorch
sudo pip3 install torch-0.4.0-cp36-cp36m-linux_x86_64.whl
sudo pip3 install -i https://pypi.tuna.tsinghua.edu.cn/simple torchvision
# CUDA TEST
import torch
x = torch.Tensor([1.0])
xx = x.cuda()
print(xx)
# CUDNN TEST
from torch.backends import cudnn
print(cudnn.is_acceptable(xx))
若成功则CUDA测试结果会返回tensor,cuDNN会返回True。
使用Ubuntu Budgie 18.04 出现的其他问题
问题:桌面卡死无法进行任何操作:
解决方法:进入文字界面[ctrl+alt+f1],查询进程[ ps -e | grep tty7 ], 杀死该进程[ sudo kill (pid number) ],即可重载桌面。