注:本教程写于2018.5.1,现在可能过时了。

登录后死机,关机时死机的解决方法

更新内核并安装 Nvidia 显卡驱动可解决。

在内核更新为 4.15.18,Nvidia 显卡驱动为 390 时,问题解决。

使用 LiveCD 启动,然后 mount 安装的系统的根分区,可以在文件管理器中挂载,也可以用如mount /dev/sda1 rootdir的命令挂载,然后 chroot 到该分区,如chroot rootdir
然后

1
sudo systemctl set-default multi-user.target

使系统重启后默认进入字符界面,从而避免登录后进入图形界面时死机。

重启
进入字符界面登录后按照以下方式更新内核并安装 Nvidia 显卡驱动。

更新内核

内核下载地址

1
2
3
4
5
6
uname -sr    #查看当前内核版本
wget http://kernel.ubuntu.com/~kernel-ppa/mainline/v4.15.18/linux-headers-4.15.18-041518_4.15.18-041518.201804190330_all.deb
wget http://kernel.ubuntu.com/~kernel-ppa/mainline/v4.15.18/linux-headers-4.15.18-041518-generic_4.15.18-041518.201804190330_amd64.deb
wget http://kernel.ubuntu.com/~kernel-ppa/mainline/v4.15.18/linux-image-4.15.18-041518-generic_4.15.18-041518.201804190330_amd64.deb
sudo dpkg -i *.deb
sudo reboot

安装 Nvidia 显卡驱动

1
2
3
sudo add-apt-repository ppa:graphics-drivers/ppa
sudo apt-cache search nvidia | less #查看并寻找合适的显卡驱动版本
sudo apt install nvidia-384 nvidia-prime
1
2
sudo systemctl set-default graphical.target
sudo reboot

更改回默认图形界面登录,重启看是否解决了登录及关机时死机的问题。重启时可能需要禁用secure boot。


安装 CUDA,cuDNN,Tensorflow 等

CUDA9.0 + cuDNN7.0 + tensorflow-gpu 1.8.0

参考

安装 CUDA

1
2
sudo systemctl set-default multi-user.target #安装 CUDA 时必须确保没有 Nouveau 驱动或 Nvidia 驱动运行,故需停用图形界面。
sudo reboot

降低 gcc,g++ 版本为 gcc-5,g++-5

1
2
3
4
5
sudo apt install gcc-5 g++-5
sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-5 50
gcc --version
sudo update-alternatives --install /usr/bin/g++ g++ /usr/bin/g++-5 50
g++ --version
1
2
3
./cuda_9.0.176_384.81_linux.run
sudo ./cuda_9.0.176.1_linux.run
sudo ./cuda_9.0.176.2_linux.run

安装时会询问安装选项。因为我是双显卡,所以不安装 OpenGL,显卡驱动已安装过,也不再安装。

安装完成后,记得添加到 PATH。

1
sudo apt-get install freeglut3-dev build-essential libx11-dev libxmu-dev libxi-dev libgl1-mesa-glx libglu1-mesa libglu1-mesa-dev

安装 cuDNN

1
2
3
4
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
sudo chmod a+r /usr/local/cuda/lib64/libcudnn*
1
sudo apt-get install libfreeimage3 libfreeimage-dev

安装 Anaconda

1
2
chmod +x Anaconda3-5.1.0-Linux-x86_64.sh 
./Anaconda3-5.1.0-Linux-x86_64.sh

安装 Tensorflow

1
pip install tensorflow-gpu

一些可能用到的命令

1
2
3
nvidia-smi
lsmod | grep nouveau
sudo restore -i -f homexuewei.bak .

一些网址

CUDA下载地址
CUDA Installation Guide
cuDNN 下载地址
cuDNN Installation Guide
tensorflow


后记

  • 感觉 Gnome 桌面不够快,有时还会卡,不知道什么原因。总之又安装了熟悉的 Xfce,虽然丑一点,不过流畅多了。

  • Ubuntu 18.04 在使用Java的SSL时可能会出现异常,导致登录失败、连接失败等。
    解决方法见Error - trustAnchors parameter must be non-empty

END

2018.5.1