当我将联想平板电脑从睡眠模式唤醒后(关闭和打开亮起),平板电脑功能停止工作。错误消息是“平板电脑串行 Wacom 平板电脑(联想 X201)已移除”(屏幕截图:http://dl.dropbox.com/u/2471034/MOS-ASH1.jpeg)。在系统设置中的输入设备下,显示“未检测到平板电脑设备”。只有重新启动才能解决问题,触摸屏才能再次工作。
此错误仅在从 Kubuntu 12.04 升级到 14.04 后出现。在 12.04 中,从睡眠模式唤醒后出现相同的错误消息,但随后又出现另一条错误消息,即平板电脑再次激活后工作正常。有什么想法可以解决这个问题吗?
答案1
最后,我找到了一个方便的解决方案!这确实是 (K)ubuntu 14.04 中的一些错误,影响了许多平板电脑用户。该错误已归档为Launchpad 错误 #1275416。
这里提出了一些解决方法。提供的解决方案在 Rmano 的这个回答中距离不是很远,但建议的脚本对我来说不起作用。(我使用的是联想 ThinkPad X201 平板电脑。)
剧本来自21号岗位错误报告,加上来自的命令岗位编号:22但是,可以这样:
/etc/pm/sleep.d/20_x200-wacom-workaround
创建一个包含以下内容的文件:#!/bin/sh reenable_touch() { for idfile in /sys/class/tty/ttyS*/device/id; do if test -f $idfile; then if grep -q '^WACf00c$' $idfile; then devicefile=`echo "$idfile" | \ sed -n \ 's/^\/sys\/class\/tty\/ttyS\([0-9]\+\)\/.*$/\/dev\/ttyS\1/p'` if test -n $devicefile; then inputattach --daemon -w8001 $devicefile break fi fi fi done } case $1 in resume|thaw) reenable_touch ;; esac
使该文件可执行以确保它可以在恢复时运行:
sudo chmod +x /etc/pm/sleep.d/20_x200-wacom-workaround
从睡眠模式唤醒后,Wacom 手写板被移除的通知会紧接着另一条通知,提示 Wacom 手写板已重新激活……与 (K)ubuntu 12.04 中的情况完全一样。问题解决了。
答案2
在挂起和恢复阶段,Ubuntu(实际上是每个使用 pm-utils 的 Linux 系统)会执行位于目录中的一系列脚本/etc/pm/sleep.d/
;它们按字母顺序执行 --- 在挂起期间从 0..9A..Z 开始,在恢复期间则反过来。通常,所有脚本都以数字开头(00、01、02...),并且编号也有常规含义。有关更多信息,请访问 Arch Linux 文档网站上制作精良的页面。脚本使用可以是“暂停”、“恢复”、“休眠”、“解冻”的参数来调用,这样它们就可以知道为什么被调用。
因此,如果您想分别在暂停和恢复时卸载和重新加载 wacom 模块,您可以添加一个脚本 --- 例如,/etc/pm/sleep.d/04_myscript
内容如下:
#!/bin/sh
case "$1" in
resume|thaw)
modprobe wacom
;;
suspend|hibernate)
rmmod wacom
;;
esac
exit 0
记得让脚本可由 root 执行和读取,方法是:
chmod 755 /etc/pm/sleep.d/04_myscript
注意事项:
以上所有操作都必须以 root 身份完成;因此要编辑脚本并更改其权限,您必须添加适当的
sudo
。这确实是一种 hack --- 卸载并重新加载模块可能会使应用程序混乱。例如,
xournal
除非重新启动它,否则在 tat 之后将无法看到触摸屏,这肯定会造成混乱。