Ubuntu 2004 鼠标可以移动但是点击无响应 排查流程

今天工作机遇到了这个问题,就记录一下。

解决方案看这里

sudo apt install metacity
metacity --replace&

排查过程

一开始查到鼠标是由xserver-xorg-input-all这个包控制的,但是我的机器上有这个包,因此尝试了重装,没能解决问题。

sudo apt reinstall xserver-xorg-input-all

然后查到别人说用 unity --replace &和metacity --replace& 解决,但是这两个命令我的机器上都没有,就尝试装了一下,最终执行了metacity --replace& ,问题解决。

sudo apt install metacity
metacity --replace&

原因分析

我们先来看一下Metacity是什么,man手册里面是这样写的

NAME
       METACITY - minimal GTK3 Window Manager
       METACITY - 小型的GTK3窗口管理器


DESCRIPTION
       This manual page documents briefly metacity.
       本手册页简要介绍了Metacity。

       metacity  is a minimal X window manager aimed at nontechnical users and
       is designed to integrate well with the GNOME desktop.   metacity  lacks
       some features that may be expected by traditional UNIX or other techni‐
       cal users; these users may want to investigate other  available  window
       managers for use with GNOME or standalone.
       Metacity是一个面向非技术用户的最小X窗口管理器,
       旨在与GNOME桌面很好地集成。
       Metacity缺少一些传统的Unix或其他技术用户所期望的特性;
       这些用户可能希望研究其他可用于GNOME或独立的窗口管理器。

手册里写到的“缺少一些传统的Unix或其他技术用户所期望的特性”是指Metacity不像GNOME以前的窗口管理器,它没有多少可配置的选项,它是为非技术用户设计的。

OPTIONS
       --replace
              a  window  manager  which  is  running  is replaced by metacity.
              Users are encouraged to change the GNOME window manager by  run‐
              ning  the new WM with the --replace or -replace option, and sub‐
              sequently saving the session.
              当前正在运行的窗口管理器会被metacity替换。
              用户被鼓励用--replace选项替换当前正在运行的GNOME窗口管理器。
              替换后当前会话会被保存。

所以metacity --replace&是通过替换当前窗口管理器的方式解决了鼠标问题。

一些小插曲

其实我一开始执行的是这条语句…

### 解决方案里是metacity --replace&
metacity --replace

当时也解决了这个问题,但是我后面出于好奇把这个进程杀掉了,我的窗口就彻底不能动了,鼠标和键盘都无法输入,只有当前的会话还保留着。鼠标还可以打开开始菜单。

被迫重启。

重启之后查资料找到了问题的答案
https://askubuntu.com/questions/12682/why-does-metacity-replace-hang-my-system-but-metacity-replace-is-fine

运行metacity --replace不会使它作为守护进程运行。如果您按 Ctrl-C 或以其他方式停止该 metacity进程的运行(关闭终端也会这样做),您将没有窗口管理器。这就是你失去窗户装饰的原因。我不确定为什么键盘会停止工作(我的猜测是,一旦关闭窗口管理器,窗口的新更新,比如打字,就不会被绘制到屏幕上),但我已经对此进行了测试,如果你按下Ctrl +Alt+F1你仍然可以拖放到帧缓冲区。很明显,键盘并没有完全停止工作,事实上,如果你点击一个菜单项,gnome-terminal你可以使用向上和向下箭头来导航它。

您应该在包装器中运行 metacity,例如screen,当您需要从终端启动它然后关闭您使用的终端窗口时。只需运行screen metacity --replace并按 Ctrl+A+D 即可从screen进程中分离。

是因为我杀掉metacity之后当前就没有窗口管理器了。

感悟

我经常遇到鼠标失灵的问题,之前都是重启lightdm解决,今天有心情仔细查了一下原因,感觉学到了很多。

这种生活中经常遇到的问题里面其实也包含了很多知识,不放过工作中遇到的小问题才能学到更多呀。

有些人工作十年是有了十年的经验,有些人工作十年只是把前两年的经验翻来覆去用而已,像我之前重启lightdm的做法就是后者吧,我要保持警惕啊。

  • 4
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 3
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值