转到Linux下做一些项目,在笔记本上安装了国产的Deepin linux系统。该系统很漂亮,但是使用过程中发现触摸板工作不正常,经常失灵不工作。查找了一些解决方案,目前算是解决了。
根据深度wiki的描述,一般是因为老版本内核没有最新硬件的驱动,所以需要更换一下最新的内核就可以。不同的Linux发行版使用的内核没什么大区别,因此Deepin Ubuntu Debian可以使用一样的内核。我们从(Ubuntu的内核库)[https://kernel.ubuntu.com/~kernel-ppa/mainline/]下载编译好的最新的内核,安装即可。
下载的时候注意区分不同的处理器架构,一般电脑都是64位系统了,所以要下载z这四个包
1 | Build for amd64 succeeded (see BUILD.LOG.amd64): |
安装方式:
- 可以直接双击deb包,调用gui的软件包管理器安装
- 用 sudo dpkg -i xxxx.deb 安装
如果安装有依赖问题,就先安装其他的包。
再启动的时候选择最新的内核就可以了。新内核没有问题就可以卸载老内核了。
卸载方式:依次卸载相应的四个包
使用命令 sudo apt remove linux-xxxxxxx
Tips
在内核仓库中可以看到有两种内核,一种generic,一种lowlatency。
根据深度wiki的描述,lowlatency会降低性能。但是这个解释不够具体。
根据Ubuntu的解释:
If you do not require low latency for your system then please use the -generic kernel.
If you need a low latency system (e.g. for recording audio) then please use the -preempt kernel as a fist choice. This reduces latency but doesn’t sacrifice power saving features. It is available only for 64 bit systems (also called amd64).
If the -preempt kernel does not provide enough low latency for your needs (or you have an 32 bit system) then you should try the -lowlatency kernel.
If the -lowlatency kernel isn’t enough then you should try the -rt kernel
If the -rt kernel isn’t enough stable for you then you should try the -realtime kernel
大致就是说,lowlatency是一种类似软实时系统,在进程间切换的速度是实时的,低延时的。实时操作系统的缺点就是系统吞吐量减小,适合特定的应用场合。
对于普通用户的桌面操作系统来说,generic是最好的。
更新
我的神舟似乎用了新内核还是不能正常驱动触摸板,可能Elantech的板子比较独特吧。
用xinput查看(安装方法 apt install xinput)
1 | ⎡ Virtual core pointer id=2 [master pointer (3)] |
根本就没有发现触摸板硬件。难怪不能用呢。
不过,目前有一种解决方案,就是 先进入Windows系统,然后重启进入Linux系统,这样触摸板就能用了,而且功能和Windows下一样哟。
再用xinput查看
1 | ⎡ Virtual core pointer id=2 [master pointer (3)] |
Elantech Touchpad有了。
我判断是Elantech的触摸板配置信息直接写入了硬件里面,所以才会在Windows下和Linux下有一样的功能。
好软件推荐
跨平台局域网文件互传神器 Dukto
有windows、Linux、Mac、Android版本,只要在一个局域网,就可以任意互传。
作者网站
https://www.msec.it/blog/dukto/