Debian的安装配置和优化

启动安装盘时报错

  1. NVIDIA显卡需要在grub中使用 nouveau.modeset=0 来禁用nouveau驱动,否则很容易造成界面卡死,安装完系统进入桌面后安装闭源驱动可解决此问题

  2. ASPM错误和显卡问题在GRUB选择启动项时按E编辑启动参数可正常安装,修改为类似 linux /vmlinuz root=/dev/sda2 pcie_aspm=off nouveau.modeset=0 quiet

  3. 安装完进入桌面后编辑 /etc/default/grub ,输入以下内容: GRUB_CMDLINE_LINUX_DEFAULT="quiet nomce pci=noaer" ,保存更新grub后再重启:sudo update-grub

  4. 其他错误及解决方法如下:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
# Linux下Intel 760p的ASPM有严重错误,可以在grub中使用 pcie_aspm=off 关闭它
PCIe Bus Error: severity=Uncorrected (Non-Fatal), type=Transaction Layer, (Requester ID)
device [8086:a118] error status/mask=00100000/00010000

# 内核启动时MCE报错可以在grub中使用 nomce 来关闭错误检测
mce: [Hardware Error]: CPU 0: Machine Check: 0 Bank 10: ee0000000040110a
mce: [Hardware Error]: TSC 0 ADDR fef1cbc0 MISC 3880000001000086
mce: [Hardware Error]: PROCESSOR 0:906ea TIME 1592339793 SOCKET 0 APIC 0 microcode ae

# 出现如下错误是因为双显卡而导致的,在GRUB的内核参数中添加 acpi=off 可正常使用
# 也可在启动时使用 nouveau.modeset=0 关闭独立显卡,进入后安装NVIDIA闭源驱动。
ACPI Error:Method parse/execution failed \_SB.PCI0.PGON,AE_AML_LOOP_TIMEOUT (20180313/psparse-516)
ACPI Error:Method parse/execution failed \_SB.PCI0.PEG0.PG00._ON,AE_AML_LOOP_TIMEOUT (20180313/psparse-516)

# 关机时卡在下面行,在GRUB的内核参数中添加 nowatchdog 来关闭它
watchdog: watchdog0: watchdog did not stop!

使用国内源

1
2
3
4
5
6
7
8
# 使用root用户为其他用户添加免输密码的SUDO权限
echo "YouName ALL=(ALL) NOPASSWD: ALL" >> /etc/sudoers

# sudo vi /etc/apt/sources.list 修改为如下
deb http://mirrors.aliyun.com/debian/ buster main contrib non-free
deb http://mirrors.aliyun.com/debian/ buster-updates main contrib non-free
deb http://mirrors.aliyun.com/debian/ buster-backports main contrib non-free
deb http://mirrors.aliyun.com//debian-security buster/updates main contrib non-free

驱动DW1560无线网卡

1
2
3
sudo apt install firmware-brcm80211 broadcom-sta-dkms firmware-realtek
wget https://raw.githubusercontent.com/winterheart/broadcom-bt-firmware/master/brcm/BCM20702A1-0a5c-216f.hcd
sudo mv BCM20702A1-0a5c-216f.hcd /lib/firmware/brcm/

安装桌面环境

  1. 通过软件集合界面来选择安装桌面环境
1
2
3
4
5
6
7
sudo apt install tasksel
sudo tasksel install desktop gnome-desktop

# 其他用法
tasksel remove lamp-server # 卸载LAMP套件
tasksel --list-tasks # 列出可选任务
apt show task-gnome-desktop # 任务所包含包
  1. 卸载不需要的软件
1
2
3
4
sudo apt remove libreoffice* totem transmission-gtk firefox-esr \
gimp synaptic mythes-en-us evolution evince rhythmbox gnome-todo \
gnome-games gnome-maps gnome-music gnome-contacts gnome-weather \
gnome-documents
  1. 设置桌面为中文
1
2
3
4
5
# 添加 zh_CN.UTF-8 后区域设置为 None
sudo dpkg-reconfigure locales

# 在locales中系统默认的区域设置别选 zh_CN.UTF-8,它会导致字符界面出现乱码
# 重启界面后在Gnome的设置里 -> Region & Language -> Language -> 汉语,重启生效
  1. 针对平板电脑的优化
1
2
3
4
5
6
7
8
9
10
11
12
13
# 一个适用于触摸屏极简的gnome3桌面环境
sudo apt install budgie-desktop libglib2.0-bin lightdm xinit onboard \
lxterminal pcmanfm locales fonts-wqy-zenhei

# 启动lightdm点击右上角更换session为budgie-desktop
# 并在budgie-desktop Setting中autostart添加onboard

# 设置虚拟键盘
onboard Setting --> 常规 --> 编辑文字时自动显示 --> 解锁屏幕时显示
--> 窗口 --> 固定到屏幕边缘 --> Setting --> 底部
--> 布局 --> 中等尺寸
--> 主题 --> Model M
--> Auto --> 编辑文字时显示 --> only move when necessary

安装搜狗拼音输入法

1
2
3
4
5
6
7
8
9
wget http://cdn2.ime.sogou.com/dl/index/1571302197/sogoupinyin_2.3.1.0112_amd64.deb
sudo dpkg -i sogoupinyin_2.3.1.0112_amd64.deb
sudo apt install -f

# fcitx-configtool -> 输入法中点+ -> 去掉勾选仅显示当前语言 -> sogoupinyin
# apperance(外观)选项卡中 -> 字体大小12 -> 使用系统托盘 -> 状态栏隐藏模式 -> 当托盘图标可用时隐藏

# 解决执行sogou-qimpanel缺少libqtdeclarative.so.4
sudo apt-get install libqt4-declarative

可选中州韵输入法

1
2
3
4
5
6
sudo apt install fcitx-rime
im-config # 配置默认输入架构,选中Fcitx后重启电脑
fcitx-configtool # 输入法中点+ -> 中州韻

# 按F4选择输入方案,建议明月拼音简化字,将会保存到~/.config/fcitx/rime/user.yaml
# 九个候选字:修改/usr/share/rime-data/default.yaml中的:page_size: 9

安装配置chromium

1
2
3
4
5
6
7
sudo apt install chromium chromium-l10n

# 登录后打开chromium免输入密码
rm ~/.local/share/keyrings/*

# 删除密钥后重新打开chromium就会发现要求设置密码,什么都不要动,直接确定
# 会问你是不是设置空密码,继续选择确定,以后重启登录都不会再要求你输入密码

使用Optimus技术的Nvidia显卡

1
2
3
4
5
6
7
apt-get install bumblebee-nvidia primus mesa-utils
adduser YOU_USER_NAME bumblebee
reboot

optirun glxgears -info # 使用独显运行测试程序
optirun nvidia-settings -c :8 # 通过打开NVDIA显卡设置
vblank_mode=0 glxgears -info # 运行程序时禁用垂直同步

与Windows双系统时相差8小时

1
2
3
4
5
6
7
8
# 由于Windows把主板的硬件时间当作本地时间,即系统显示的时间跟BIOS中显示的时间一致
# 而类UNIX则把硬件时间认为是UTC标准时间,然后加减时区换算成本地时间在系统中显示

# 解决方法是将类UNIX系统的时间设置为硬件时间,并根据硬件时间来更新系统时间
sudo timedatectl set-local-rtc 1 --adjust-system-clock

# 或者让Windows把硬件时间当作UTC时间,需要以管理员权限执行
Reg add HKLM\SYSTEM\CurrentControlSet\Control\TimeZoneInformation /v RealTimeIsUniversal /d 1 /t REG_DWORD /f

开机启动项优化

1
2
3
4
5
systemd-analyze					# 查看内核和用户程序启动耗时
systemd-analyze blame # 查看每个服务的启动耗时
systemd-analyze critical-chain # 显示瀑布状的启动过程流
systemd-analyze critical-chain atd.service # 显示指定服务的启动流
systemctl disable atd.service # 关闭指定服务自启

多系统修改启动顺序

1
2
3
4
sudo efibootmgr -a -b 0000	# 启用标号为0000的启动项
sudo efibootmgr -A -b 0000 # 禁用标号为0000的启动项
sudo efibootmgr -b 0001 -B # 删除刚才添加的GRUB启动项,对应的编号为0001
sudo efibootmgr -o 0001,0000,0085,0086 # 修改boot顺序,如果要设置第一启动,把相应的编号放到命令后的最前面,如0001样

Gnome全局使用Nvidia显卡

  1. 安装Nvidia驱动和测试套件
1
sudo apt install nvidia-settings mesa-utils
  1. 获取显卡的PCI端口号,如下的0:2:0和1:0:0
1
2
3
leux@K680:~$ lspci
00:02.0 VGA compatible controller: Intel Corporation UHD Graphics 630 (Desktop)
01:00.0 3D controller: NVIDIA Corporation GP107M [GeForce GTX 1050 Ti Mobile] (rev a1)
  1. 使系统默认使用xorg而不是wayland
1
2
3
4
5
# 编辑 /etc/gdm3/daemon.conf 去掉下面行的注释
# WaylandEnable=false

# 查看目前使用的是Wayland还是Xorg
echo $XDG_SESSION_TYPE
  1. 使Gnome启动后自动调用Nvidia显卡
1
2
3
4
5
6
7
8
9
# /usr/share/gdm/greeter/autostart/optimus.desktop
# 编辑下面内容到这两个文件:/etc/xdg/autostart/optimus.desktop

[Desktop Entry]
Type=Application
Name=Optimus
Exec=sh -c "xrandr --setprovideroutputsource modesetting NVIDIA-0; xrandr --auto"
NoDisplay=true
X-GNOME-Autostart-Phase=DisplayServer
  1. 把如下内容添加到 /etc/X11/xorg.conf
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
Section "ServerLayout"
Identifier "layout"
Screen 0 "nvidia"
Inactive "intel"
EndSection

Section "Device"
Identifier "nvidia"
Driver "nvidia"
BusID "PCI:1:0:0"
Option "AllowEmptyInitialConfiguration"
EndSection

Section "Screen"
Identifier "nvidia"
Device "nvidia"
EndSection

Section "Device"
Identifier "intel"
Driver "modesetting"
BusID "PCI:0:2:0"
EndSection

Section "Screen"
Identifier "intel"
Device "intel"
EndSection
  1. 重启GDM
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
# 重启后可在设置关于中查看现在使用的显卡
sudo systemctl restart gdm3.service

# 进入NVIDIA驱动设置界面
nvida-settings

# 查看Nvidia显卡驱动信息
nvidia-smi

# 运行测试程序查看帧率
glxgears -info

# 如果出现错误导致黑屏,那么删除下面三个文件即可
rm /etc/X11/xorg.conf
rm /etc/xdg/autostart/optimus.desktop
rm /usr/share/gdm/greeter/autostart/optimus.desktop