Install Ubuntu 18.04 with NVIDIA GPU
前言
从2018年7月起开始尝试安装Ubuntu, 无奈网上教程大多含混不清, 再加上时间紧张, 屡次尝试都没有得到满意的结果. 2019年1月的第一次尝试, 收获了好运, 结合n + e 的博客, 终于完成了大体的安装和配置. 故写下这篇文章进行纪念和备忘, 也作为分享.
准备与安装
-
需要的物品:
- 电脑, 以神舟战神Z7 - KP7S1(Intel i7 - 7700HQ, Nvidia GTX 1060 - 6G, 8G RAM, 256G SSD, 1T HDD) 为例.
- Ubuntu 18.04.1 LTS amd64 系统镜像.
- 4G以上的U盘一个, USB3.0以上体验更好.
- Rufus工具, 用于制作启动盘.
-
制作启动盘
下载好了上述内容后, 我们向U盘中写入镜像.
如果Rufus提示缺失了文件, 按照提示下载即可.
写入选择ISO模式.
-
安装
按电脑的某些键进入启动项选择, 选U盘, 然后选Install Ubuntu.
听说语言选英文比较好, 后期可以改, 但是目录是英文的对程序比较友好.
然后就选正常安装, 不联网, 不安装第三方程序, 设置时区, 以及其他的信息, 安装流程很快.
期间(设置账户及之前)是有死机的可能的, 表现为鼠标能动, 键盘没反应, 不相应任何指令. 这是真的死机了, 救不了, 强制关机重新试吧.
然后就装上了.
正式使用之前的配置
-
NVIDIA驱动
驱动是N卡电脑必须要过的一关. 之前抄了些csdn的博客也没能完全解决. 这次大概综合了一些博客, 目前还没有出现问题, 唯一的问题是, 如果扣盖睡眠(Ubuntu似乎称之为挂起), 再次开启时就会花屏 + 上述的死机. 然后改成了扣盖熄屏不睡眠, 在某种意义上回避了问题, 目前还没有自动挂起过, 有待观察.
下面说操作.
-
换源
软件与更新 中应该也有换源的选项, 不过本着不惊动显卡的原则, 选用了命令行.
gedit /etc/apt/sources.list
若论使用命令行, 装机自带的vim才是最优搭配, 毕竟gedit还是有GUI, 开机又没有emacs, 但是我不会vim的快捷键, 只好作罢. 将文件修改为
# 默认注释了源码镜像以提高 apt update 速度,如有需要可自行取消注释 deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic main restricted universe multiverse # deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic main restricted universe multiverse deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic-updates main restricted universe multiverse # deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic-updates main restricted universe multiverse deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic-backports main restricted universe multiverse # deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic-backports main restricted universe multiverse deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic-security main restricted universe multiverse # deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic-security main restricted universe multiverse # 预发布软件源,不建议启用 # deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic-proposed main restricted universe multiverse # deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic-proposed main restricted universe multiverse
这样后续下载就快一些, 避免拖太久又死机. 其实对于我这种打字慢的人来说也争取不到多少时间. 幸运的是在装驱动之前都没有死机.
记得保存.
-
安装
sudo apt remove libreoffice* && sudo apt update && sudo apt upgrade && sudo apt autoremove
在升级之前先把大块头office卸载, 然后自动卸载其他的, 可以说很妙了.
不过也可以*安排指令的顺序.
sudo ubuntu-drivers autoinstall
这一步是安装驱动.
在安装这些软件期间很有可能死机. 我的策略是看进度估算一下, 让其先运行一会, 以免损坏正在读写的文件, 不过因为没有对照组, 所以并不知道有没有效果, 不过最后算是装上了.
这个时候系统已经可以识别出独显了.
然后装一个
感觉没有什么乱用的显卡切换, 不过反正也不能用Prime Profile(也有可能是我搞不定), 就照着博主也装了一个.sudo add-apt-repository ppa:nilarimogard/webupd8 sudo apt install prime-indicator
然后记得重启! 我一开始甚至以为凉凉了(百度了好一会).
然后在查的过程中发现不太放心, 又搞了个禁用开源驱动.
这里也贴个链接.
里面的内容比较古老了, 我只照做了禁用nouveau.
sudo gedit /etc/modprobe.d/blacklist
添加一句
blacklist nouveau
重启就会发现顶栏右上角有个NVIDIA的标志了, 点开有切换显卡和打开设置, 需要注销生效. 不过我切了一次以后发现还是 using GTX 1060, 感觉没有用, 就又切了回来.
这时候还是不敢放心, 测试了显卡的另一个雷区: 休眠恢复. 果然出锅了. 死机.
于是退了一步, 看看能不能熄屏. 于是又去查关闭笔记本盖子怎么不睡眠. 指令如下:
sudo sed -i 's/#HandleLidSwitch=suspend/HandleLidSwitch=ignore/g' /etc/systemd/logind.conf
这是正则表达式做的, 当然也可以用文本编辑器去改, 把那个文件里的
#HandleLidSwitch=suspend
改为
HandleLidSwitch=ignore
即可.
然后重启系统服务.
systemctl restart systemd-logind
-
配置其他环境
n + e开出了一串软件, 我就挑了我需要的装了.
sudo apt install git htop zsh vim tmux cmake curl axel texlive-full gummi proxychains python-pip python3-pip libopencv-dev libboost-dev gnome-tweak-tool openvpn openssl mpv wine64 xclip enca apache2 php7.2 unrar ruby gnome-shell-extensions dos2unix xserver-xorg-input-synaptics libinput-tools xdotool icdiff g++-5 gcc-5 openjdk-11-jdk net-tools libglew-dev libcanberra-gtk-module libcanberra-gtk3-module tlp freeglut3 freeglut3-dev pandoc
然后还有一个多点触控的软件, 需要Ruby前置.
sudo gem install fusuma
据说tmux + zsh是shell模拟+复现的利器, 但是目前还用不到. 如果有兴趣可以去看原博客. 不过也把安装步骤贴过来, 毕竟上面已经install了.
# 如果是第一次 sh -c "$(curl -fsSL https://raw.github.com/robbyrussell/oh-my-zsh/master/tools/install.sh)" cd git clone https://github.com/gpakosz/.tmux.git ln -s -f .tmux/.tmux.conf cp .tmux/.tmux.conf.local . # 如果装过了 chsh -s /usr/bin/zsh
还有一个重要配置就是科学了.
我用**R比较多, 所以这里去搞了一个electron-**R, 感觉还能用.
注意到上面的列表里也开出了proxychains, 只要设置一下就可以让终端也一起科学了. 下外面的软件贼快.
学习自这个链接.(虽然感觉这个像盗版, 但我也没有找到原版)
修改
/etc/proxychains.conf
在
[ProxyList]
一行下面加入
socks5 127.0.0.1 1080
如果有sock4或者别的, 注释掉.
运行指令时在前面加上proxychains, 就可以科学了.
常用软件
像chrome, wps office, 网易云, typora, 输入法之类的软件直接查一查就可以装了.
emacs之前源码安装有阴影, 所以用ubuntu自带的商店装了一个, 不是最新, 不过也能用. 这里贴一个配置.
(custom-set-variables ;; custom-set-variables was added by Custom. ;; If you edit it by hand, you could mess it up, so be careful. ;; Your init file should contain only one such instance. ;; If there is more than one, they won't work right. '(custom-enabled-themes (quote (tango-dark)))) (custom-set-faces ;; custom-set-faces was added by Custom. ;; If you edit it by hand, you could mess it up, so be careful. ;; Your init file should contain only one such instance. ;; If there is more than one, they won't work right. ) ;;set transparent effect (global-set-key [(f11)] 'loop-alpha) (setq alpha-list '((100 100) (95 65) (85 55) (75 45) (65 35))) (defun loop-alpha () (interactive) (let ((h (car alpha-list))) ;; head value will set to ((lambda (a ab) (set-frame-parameter (selected-frame) 'alpha (list a ab)) (add-to-list 'default-frame-alist (cons 'alpha (list a ab))) ) (car h) (car (cdr h))) (setq alpha-list (cdr (append alpha-list (list h)))) ) ) (tool-bar-mode 0) (menu-bar-mode 0) (scroll-bar-mode 0) (setq inhibit-startup-message t) (setq-default cursor-type 'bar) (global-linum-mode 1)
-
美化
上面的一堆软件里是有gnome-tweak-tool的, 这里也提一句, 网上的教程也有不少.
贴几个备忘的链接吧.
下载扩展: Gnome Shell Extension
下载主题/图标/字体和其他好看的东西: Gnome-look
后话
贴几张截图吧.
浪费了很多时间, 不过也算是装上了.
就这样.