记一次Linuxx下驱动安装排错经历

昨天在狗东上买了个雷柏v500合金版黑轴机械键盘,今天到货之后满怀兴奋地装上到了我从公司带回来的thinkpad上,结果发现alt键和ctrl键是失灵的。


进一步测试发现,这两个键并没有失灵,它们特喵的被映射到了shift键上……


面对这种情况,我虽然感到很失望,但一点也不意外,毕竟Linux这个系统的风格就是这样的。自己动手,丰衣足食,驱动不合适,自己写一个啊!


否则我也不会到现在为止在Linux下连一个好用的qq版本都找不到了。


在网上搜索了一番之后,找到了这个:https://github.com/kinglongmee/rapoo-keyboard-driver


git clone下来,照着README.md,sudo make; sudo make install; ./installdriver.sh,咦,为什么报错:

rmmod: ERROR: Module hid_rapoo is not currently loaded

rmmod: ERROR: Module hid_generic is not currently loaded

重试指令,不行;

重启机器了,还是不行;

究竟是什么原因呢?

难道是linux head 4.4.10的版本太新了?不至于吧,这个git repo可是5个月之前才更新的。

所以这个报错信息是什么意思呢?

先查了一下rmmod这个命令,man rmmod,哦,是remove module的意思。

那么报is not currently loaded,就能明白是怎么回事了:如果说一个模块目前没有被加载,那么它确实是没办法被移除的。

好了,所以,这两个模块是什么呢?为什么要移除这两个模块呢?

首先分析了一下installdriver.sh:

#!/bin/bash


#install rapoo v500 driver


rmmod hid-rapoo hid-generic
modprobe hid-rapoo
modprobe hid-generic


如果第一行代码是移除模块,那么后两行代码可能是加载模块的意思。


所以一个可能就是,我编译了这个git repo;我改了这两个模块;我把这两个模块卸下来再装上,于是它们会带着我自定义的配置;似乎还蛮合理呢。

上网百度了一下,这两个模块似乎是跟USB接口,各种人机交互接口有关系的,(百度百科http://baike.baidu.com/item/USB-HID)

也就是说我电脑的USB接口的模块没有挂载是吗?

这怎么可能?那么我电脑的USB接口岂不是不能用了吗?怎么会有如此愚蠢的操作系统,启动之后不加载USB接口的?

咦,不过还真有可能……

我猛然回忆起两个月之前我为了给笔记本电脑省电,装了ubuntu下的tlp,其中还在battery mode中设置了usb口禁用。

哦?好吧,我插上电试试,这样应该就会启动ac mode了吧。

不行啊还是会报错。

好吧,那我删掉tlp试试:

sudo apt-get remove tlp && restart

重新开机,进入目录,执行命令sudo make; sudo make install; ./installdriver.sh

静默,一片静默。

程序安静地走完了它的进程。

那么按照unix系统的编程风格呢,没有消息就是好消息,是不是我的键盘可以用了呢?

我插上键盘,按下atl+tab键。

窗口切换了。

Good.问题解决了。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
要在Linux安装FTP服务器并进行排错,您可以按照以下步骤进行操作: 1. 安装FTP服务器软件: 常用的FTP服务器软件包括vsftpd、ProFTPD和Pure-FTPd。根据您的需求选择其中一个并进行安装。 例如,在Ubuntu上安装vsftpd,可以使用以下命令: ``` sudo apt-get update sudo apt-get install vsftpd ``` 2. 配置FTP服务器: 配置文件通常位于`/etc/vsftpd.conf`,您可以使用任何文本编辑器打开并按需进行相应的配置。 一些常见的配置项包括: - `anonymous_enable`:启用匿名访问。 - `local_enable`:启用本地用户访问。 - `write_enable`:允许用户写入内容。 - `chroot_local_user`:限制用户在其主目录下操作。 - `pasv_enable`:启用被动模式。 在进行任何更改后,保存配置文件并重新启动FTP服务器以使更改生效。 3. 设置防火墙规则: 如果您的系统上运行着防火墙,确保允许FTP流量通过。根据您使用的防火墙软件,您可能需要配置适当的规则。 4. 连接到FTP服务器: 使用支持FTP协议的客户端工具(如FileZilla或命令行工具`ftp`)连接到您的FTP服务器。提供服务器地址、端口、用户名和密码进行连接。 如果您遇到连接问题,请继续下面的排除步骤。 5. 排除故障: - 检查FTP服务器是否正在运行:使用`ps`命令检查FTP服务器进程是否正在运行。 - 检查FTP服务器配置:确保配置文件中的设置正确,并且没有语法错误。 - 检查防火墙设置:确保防火墙允许FTP流量通过。 - 检查网络连接:确保您的网络连接正常,尝试通过ping服务器地址来测试连接。 - 检查端口监听:使用`netstat`命令检查FTP服务器是否正在监听正确的端口。 请注意,这只是一个基本的指南,实际安装排错过程可能因系统和软件的不同而有所差异。如果您遇到特定问题,请提供更多详细信息以便我能够帮助您解决。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值