CentOS 8 桌面系统配置小记

背景

家里之前配了一个台式机,ms04 那样,amd 平台,CentOS 8。
在配置学习开发环境的过程中遇到了几个问题,记录一下。

桌面安装

安装 CentOS 8 自带的 gnome 桌面
sudo yum group install "Server with GUI"
修改桌面配置
vim /etc/gdm/custom.conf
日志位置
/var/lib/gdm/.local/share/xorg/Xorg.0.log

这里放一个整个桌面的架构图,对技术细节和历史感兴趣的同学可以看这本开源世界旅行手册
image.png

桌面崩溃

由于个人也是第一次接触,所以只有三板斧,幸好解决了问题。
1。 彻底打不开
删除桌面后重新安装
sudo yum group remove "Server with GUI"
2。 重新安装后分辨率无法调整
xrandr 可以返回显示器支持的分辨率,如果报错,应该就是驱动出问题了。
这里就可以看出 amd 不够 yes 的点了,通用驱动页面没有 linux 的支持信息,最好在谷歌找准关键词搜。https://www.amd.com/zh-hans/support/kb/release-notes/rn-amdgpu-unified-linux-20-20 可以在这里下载到。

CentOS/Win10 共用磁盘格式化

为了提供一定的娱乐功能,我是装了双系统的。磁盘也计划用 NTFS 文件系统。

fdisk -l 列出所有硬盘
mkfs.ntfs -f -L data2 -v /dev/sdb1 将 /dev/sdb1 分区快速格式化为 NTFS 格式,打上 data2 标签
parted /dev/sdb mklabel gpt 将磁盘 /dev/sdb 以 GPT 格式建立分区表
parted /dev/sdb mkpart primary ntfs 4096s 100% 将磁盘 /dev/sdb 从第 4096 个 sector 开始到 100% 的空间划做一个分区
vim /etc/fstab 编辑自动 mount 设置

重要

  1. 直接使用 mkfs.ntfs 对整个设备操作导致 Win10 不认盘,并且最大只有 1.7TB。
  2. 直接使用 parted 建立分区表后不进行格式化会导致开机直接进入 rescue 模式。
  3. 正确的方式是先 parted mklabel 建立分区表,然后 parted mkpart 进行分区,最后 mkfs.ntfs 进行格式化。这样就得到了一个可以 mount 的文件设备。

快捷键修改

不得不说 MacOS 的快捷键真的很舒服,常用的快捷键在各个软件里都是有实现并且基本统一的,而 gnome 里就各行其是,我常用的 terminal 和 chrome 就不一致。

理论基础 B 站 https://www.bilibili.com/read/cv5124452/ 这里讲的不错。
我这边不考虑 TTY,仅考虑 X11。

X11 层面

这个层面修改 keycode –> keysymbol,也就是说我把 Win 和 Alt 键互换的话,在桌面的所有应用里这两个键都算是换掉了。

安装 gnome-tweaks 可以很轻松完成这步修改。
重要: gnome-tweaks 必须在当前 X11 登陆用户下启动,否则会找不到 DBus。以下两个指令应该能够正常返回,否则说明启动用户不对。
gdbus introspect --session --dest org.gnome.SessionManager --object-path /org/gnome/SessionManager
gdbus introspect --session --dest org.gnome.Shell --object-path /org/gnome/Shell

组合键解释层面

我们得到了一组按键组合,这个组合具体含义是由各个应用进行解释的,很可惜这里改不了,我能做的只有以下两点。
1 在系统配置里将常用的快捷键删掉,避免和个人习惯冲突。
2 安装 autokey,写脚本配置每一个按键组合在每个应用映射到不同的组合里

以上操作可以达成不同应用使用同一个快捷键进行同一个操作,我最需要的就是在 terminal 和 chrome 里使用 MacOS 的复制和粘贴快捷键,这样就可以实现了。
重要: autokey 尽量使用系统包管理工具安装,如果官方包管理工具不支持,也要尽量使用系统的 python。部分 sitepackage 只有系统 python 解释器能够直接找到。

坚持原创技术分享,您的支持将鼓励我继续创作!