Linux桌面版安装问题总结

Linux桌面版安装踩坑集锦

Posted by John Mactavish on September 8, 2019

共同的问题

首先要说的是两个坑:一个是刻录镜像是要用dd模式而不是iso模式,另一个是安装介质 U盘需要尽量通过USB 2.0插入(里面为蓝色的母口起码是USB 3.0)。

另外,双显卡的电脑(尤其是I卡和N卡)安装完成第一次进入系统一般都会失败。 这是因为Linux对独显的支持一般都不好。发行版一般使用的是开源独显驱动,启动时检测到 独显就会使用开源独显驱动,导致错误。所以第一次启动时需要禁用独显,网上大多数方法虽然 略有区别,但都是解决这个问题的。

Deepin 15.11

这是我一开始的选择,体验非常好,但是有一个很严重的问题,关机会卡在Logo处。 应该是显卡驱动的问题,使用Deepin自带的显卡驱动管理器可以切换驱动。集显和N卡的 开源驱动都不好,需要安装N卡官方的闭源驱动。但是自带的显卡驱动管理器切换总是不成功;

sudo apt install nvidia-driver

安装的似乎是开源驱动; N卡官网上下载的NVIDIA-Linux-x86_64-430.40.run文件安装也失败了,而且带来了安装残留, 会影响包管理工具安装显卡驱动;大黄蜂是一个显卡驱动切换工具,不能够解决驱动问题。

最后我没有办法,只能够放弃Deepin了,毕竟不可以每次都强制关机。


更新:重装了一次Deepin,现在解决了几个问题。

首先,grub添加acpi_osi=linux或者acpi_osi=”Windows 2009”才可以进入系统。 不加nomodeset禁用独显的话进入桌面会只有壁纸,任务栏、桌面快捷方式等都看不到; Ctrl+Alt+T还可以打开终端,终端输入dde-dock打开任务栏会报错。以前无法解决这个问题, 现在在Deepin中文论坛上找到了解决问题的方法。原来是因为我使用外接屏幕,Deepin 默认在两个屏幕上延展(expand)显示。所以任务栏等绘制在了笔记本屏幕上。输入

xrandr

查看屏幕情况,然后强迫笔记本屏幕的信号同时显示在外接屏幕上:

xrandr --output DP-1 --same-as eDP-1

“DP-1”和“eDP-1”要根据实际情况决定。这样就可以看到“不见的”图形界面了。 如果显示还有问题,比如在2k外接屏幕上局部显示1080p界面,打开“设置”=》“显示” 可以修改为仅使用外接屏幕,就得到2k分辨率了。但是,使用独显关机卡住依然如故。

然而,grub加上nomodeset关机正常,只是屏幕分辨率只能够达到1080p。

注意:

  1. 不要升级系统(sudo apt-get upgrade),Deepin软件源做的有点问题, 盲目升级可能会导致兼容问题。
  2. 不要sudo apt install nvidia-driver,会导致所有图形应用带上黑框,即使之后卸载 driver也没有用,只能够重装。目前不清楚原因。

更新,已经过去好长时间了,现在我又放弃了 Ubuntu,重新投入了 deepin 的怀抱。 我听说 deepin 15.9.2 最为稳定,所以下载安装了 15.9.2 beta 版(貌似只有 beta 版)。 15.9.2 关机不会卡死。结果升级了一下,又变成了 15.11 。。。(嗯,9.2 好像是小版本号来着, 升级确实会这样来着) 。不过好在关机还是没有问题了,N 卡驱动问题依然,显示器不在身边, 所以分辨率问题不知道还会不会有。一番折腾后 grub 什么都不加好像开机也没有问题了。

现在驱动管理器显示使用 Intel 默认驱动。一开始快速移动一个界面可以看到画面撕裂,明显是垂直同步的问题。 在 /etc/X11/xorg.conf.d/ 下创建 20-intel.conf 文件,在里面写上

Section     "Device"
Identifier  "Intel Graphics"
Driver      "intel"
Option      "AccelMethod" "glamor"
Option      "TearFree" "true"
EndSection

保存重启,问题应该就解决了。

现在主要就是等着 deepin V20,看看能不能彻底解决显卡驱动的问题。

Ubuntu 18.04 with dde

我决定使用很稳定的Ubuntu的最新的LTS版本18.04.3,但是想要继续使用Deepin桌面。 dde也就是Deepin桌面,它和Deepin发行版是分开的。安装很简单:

sudo add-apt-repository ppa:leaeasy/dde
sudo apt-get update
sudo apt-get install dde

一开始安装失败了,后来发现只要不升级系统就可以安装。

但是安装之后登录进入是一片空白,只有Deepin的桌面壁纸,其他的都没有, 按电源键可以显示关机选项。在选择启动系统的grub界面在Deepin选项上按E, 在”quiet sqlash”后面加上”nomodeset acpi=off”表示使用集显进入。
这样就可以进入桌面了,但是没有独显硬件加速,分辨率很低,鼠标移动都很卡, 肯定不能用。

于是放弃重度的桌面(其他的kde、xfce什么也不想尝试了),程序太多,依赖太多, 很容易玩出问题。还是在默认的gnome上面装主题,做一些轻度的修改吧。

PS :本来还打算安装manjaro-deepin,直接集成好了Deepin桌面,不用自己动手, manjaro也还算稳定。但是manjaro是arch系的,有些东西和debian不一样,而且是 滚动更新的,我担心维护麻烦,暂时没有尝试。

Ubuntu 18.04

安装

安装选择固态,高级选项,勾选格式化磁盘,挂载根目录。安装完成提示启动系统, 点击按钮会卡住,拔掉U盘,强制重启。直接进去会失败,需要在grub界面在Ubuntu选项上按E, 在”quiet sqlash”后面加上”nomodeset acpi=off”表示使用集显进入。 进入图形界面后第一件事是更换为阿里云的镜像,否则下载会很慢,应该会自动更新软件信息, 或者手动(不更新的话会影响搜索驱动)

sudo apt-get update

然后在软件=》额外驱动中选择Nvidia闭源驱动,然后修改

sudo nano /etc/default/grub

在”GRUB_CMDLINE_LINUX_DEFAULT”里面加上”acpi_osi=linux”指明使用Linux的acpi电源管理。 接着

sudo update-grub

更新配置文件。 否则开机后登录界面后就会黑屏。

后期配置

画面撕裂

安装N卡闭源驱动后会出现画面撕裂的问题,解决方法是

sudo nano /etc/modprobe.d/nvidia-graphics-drivers.conf

没有这个文件也没有关系,新建一个即可。

sudo touch /etc/modprobe.d/nvidia-graphics-drivers.conf

打开,加上一行

options nvidia_drm modeset=1

保存退出,然后

sudo update-initramfs -u

更新内核,重启即可。

主题美化

安装gnome-tweak,

sudo apt install gnome-tweak-tool
sudo apt install gnome-shell-extensions

gnome-tweak-tool在软件库里叫做“优化”,搜索”tweak”也可以找到; gnome-shell-extensions安装后需要重启,然后勾选gnome-tweak-tool=》扩展=》User Themes 再重启生效,生效标志是gnome-tweak-tool=》外观=》shell不再是感叹号,而是可以编辑的。

然后安装一个主题,比如

sudo apt install arc-theme

安装图标包,比如扁平卡通化的papirus

sudo add-apt-repository ppa:papirus/papirus
sudo apt-get update
sudo apt install papirus-icon-theme

输入法

首先要知道,输入法软件是基于输入法框架的,自带的框架是iBus, 我们需要安装并且选择默认框架为fcitx框架。

sudo apt install fcitx
im-config

然后搜索“搜狗输入法 for Linux”安装或者选择安装谷歌输入法(它已经停止维护很长时间了)

sudo apt install fcitx-googlepinyin

接下来重启。然后

fcitx-config-gtk3

添加输入法。

浏览器

默认带的是FireFox,我不是很喜欢。尝试了一下Opera,没有很吸引我,于是作罢。 最后还是用Chrome,当然需要安装扩展程序了(比如OneTab,CrxMouse)。在扩展程序 界面上打开开发者选项,就可以直接拖拽crx文件安装了。如果显示程序包损坏,把文件后缀名 由crx改为zip再拖拽。

zsh命令行工具

zsh是一个代替bash的shell选择。

sudo apt-get install -y zsh

oh-my-zsh 帮我们整理了一些常用的 Zsh 扩展功能和主题:https://github.com/robbyrussell/oh-my-zsh 我们无需自己去捣搞 Zsh,直接用 oh-my-zsh 就足够了。
安装 oh-my-zsh(这个过程可能会有点慢,或者需要重试几次):

wget https://raw.github.com/robbyrussell/oh-my-zsh/master/tools/install.sh -O - | sh

zsh的配置文件是$HOME/.zsshrc ,在里面找到ZSH_THEME,这是指定主题的地方,我个人比较喜欢把它 设置为”ys”
还可以设置zsh为默认的shell:

chsh -s /bin/zsh

Go语言

github的release上面只有source code,但是可以在Go语言中文网上面下载二进制包。

CUDA 安装

sudo apt install nvidia-cuda-toolkit

版本不是最新的,但是相对于从官网下载,直接安装环境变量之类的都已经配置好了。

安装VS Code 之后安装C/C++插件,配置插件的includePath来包括cuda_runtime.h等cuda头文件所在的目录, 默认是”/usr/include”。现在写C 文件时就可以使用到cuda的snippet了,写完把后缀名改成”.cu”就可以编译了。