Есть ли способ перезапустить & rdquo; драйвер тачпада?

Вы должны отделить процедуры, требующие доступа root к отдельной программе python, и запустить это с помощью gksudo.

Я задал аналогичный вопрос в Stack Overflow.

1
задан 25 September 2014 в 15:45

9 ответов

Я нашел способ сделать это:

Сначала откройте терминал и распечатайте все устройства ввода, чтобы найти идентификатор, который вам нужен для устройства ввода, которое вы хотите отключить. В терминале введите:

xinput --list

Далее: Обратите внимание, где указано id = X в одном длинном столбце для каждого устройства ввода. Вы хотите найти идентификатор устройства, который соответствует устройству ввода, которое вы хотите отключить (возможно, что-то похожее на «тачпад»). Затем замените X в следующей команде номером id, представляющим устройство ввода, которое вы хотите отключить:

xinput disable X

Примечание. Если вы не знаете, какой идентификатор устройства вы должны использовать для отключения тачпада, тогда вы можете узнать, проверив случайный идентификатор и посмотрев, работает ли ваш коврик для мыши. Удостоверьтесь, что вы НЕ ДЕЛАЙТЕ НИЧЕГО ВАЖНО. Сохраните всю свою работу и будьте готовы перезагрузить компьютер, если вы сделаете что-то вроде отключения клавиатуры. (Возможно, вам не удастся включить его снова, если вы не можете ввести его в терминал.

Затем вам нужно будет запустить эту последнюю строку (спасибо, что поймали эту Arch Stanton!)

xinput enable X

Причина: мне отчаянно нужен был ответ на эту проблему, потому что проблемы, которые я испытывал с помощью своего тачпада, сделали невозможным работу. Внезапно, в какой-то случайный момент, когда я использую свой ноутбук, по всей видимости, нет причин, touchpad переходит в какой-то «специальный режим». Простое перемещение одного пальца на моей тачпаде приведет к тому, что экран будет прокручиваться, вместо того, чтобы на самом деле перемещать курсор мыши на экране, поэтому было невозможно заставить мышь нависнуть над чем-либо в broswer без значительных координирующих усилий для учета экрана прокрутки и неперемещающейся мыши.Я хотел найти способ, БЕЗ ВОССТАНОВЛЕНИЯ LAPTOP, для сброса тачпада. С плюсом сторона сброса тачпада с помощью метода выше действительно устраняет мою проблему.

Обновление: Чтобы выполнить сброс сенсорной панели ev проще, я сделал горячую клавишу для перечисленных выше команд. Когда мой тачпад идет на fritz, я просто делаю комбинацию клавиш ctrl + super + r, и он выполняет сброс для меня. Быстро и просто.

Вот как:

-Создайте файл внутри своего домашнего каталога и назовите его что-то вроде «touchpad-reset.sh».

- Внутри этого файла поместите две предыдущие предыдущие предыдущие команды, кроме, вместо того, чтобы использовать номер идентификатора X для устройства, поскольку он может быть изменен с добавленными периферийными устройствами (возможно?), Вы можете использовать это вместо этого:

Вот вывод с моего компьютера внутри терминала с помощью этого комманда:

xinput --list

Результат:

Virtual core pointer                        id=2    [master pointer  (3)]⎜   
   ↳ Virtual core XTEST pointer                 id=4    [slave  pointer  (2)]⎜   
   ↳ Genius 2.4G Wireless Mouse                 id=10   [slave  pointer  (2)]⎜   
   ↳ MSFT0001:00 06CB:75BD UNKNOWN              id=13   [slave  pointer  (2)]⎜   
   ↳ ELAN Touchscreen                           id=12   [slave  pointer  (2)]⎜ 

-Но что вы делаете, вы заменяете X (ранее был id) для xinput disable X и xinput разрешаете X с именем, соответствующим этому id внутри одинарных кавычек. Например, из вышесказанного, если вы хотите сделать это для id = 13, моего устройства тачпада, вы должны использовать:

xinput disable 'MSFT0001:00 06CB:75BD UNKNOWN'
xinput enable 'MSFT0001:00 06CB:75BD UNKNOWN'

-Так теперь вы отключаете по имени вместо идентификационного номера , где идентификатор может измениться во времени, а затем вы отключите и включите другое устройство.

Наконец, вам нужно предоставить разрешения на выполнение этого файла; запустите эту команду с вашим рабочим каталогом в терминале в качестве домашнего каталога (где вы создали файл):

chmod +x your_script_name.sh

Итак, как только вы создадите этот файл с соответствующими командами, написанными внутри, убедитесь, что он находится в вашем выполните следующие шаги ниже:

Нажмите клавишу супер (клавиша Windows на ПК) на клавиатуре, чтобы открыть боковую панель единицы. Введите «системные настройки» и нажмите клавишу ввода. Найдите опцию «Клавиатура» в разделе «Оборудование» и нажмите на нее. Выберите вкладку «Ярлыки». В левом окне выберите «Пользовательские ярлыки». Нажмите кнопку + рядом с нижним центром. Должно появиться окно с запросом имени описания и команды для ввода. Сделайте имя что-то вроде «reset touchpad». Используйте эту команду: gnome-terminal -x ./name_of_your_script.sh Нажмите «Применить». Теперь вы должны увидеть свою ярлык, а справа - он должен сказать «отключен» или какой-то другой мусор. Нажмите на этот текст и будьте готовы сделать какую-то комбинацию клавиш, возможно, как ctrl + super + r. Как только вы сделаете эту комбинацию клавиш, все готово.

Поздравляю! Получайте удовольствие.

40
ответ дан 24 May 2018 в 03:24
  • 1
    Затем вам нужно будет запустить xinput enable X. – Arch Stanton 16 December 2015 в 19:21
  • 2
    Ах-ха! Разве я забыл поставить это там? Стрелять. Спасибо, что добавил туда. Так же, как я, чтобы взорвать его в конце. – user3499524 19 December 2015 в 05:32
  • 3
    Ахах, неважно, ты спас меня :-) – Arch Stanton 19 December 2015 в 15:09
  • 4
    xinput list + disable + enable отлично работает – axel22 2 March 2016 в 22:40
  • 5
    enable / disable также работают с идентификатором только вместо имени устройства – Zlatev 6 February 2017 в 11:34

Чтобы перезапустить драйвер тачпада ноутбука:

Откройте терминал, нажав Ctrl + Alt + T и выполнив следующую команду:

sudo  modprobe -r psmouse

, затем

sudo modprobe psmouse

Я нашел решение здесь и есть решение для мыши usb

27
ответ дан 24 May 2018 в 03:24
  • 1
    Совершенный поиск. Мой указатель попадает в такое положение, что помогло мне его решить. – Manikandan Arunachalam 9 September 2016 в 20:56
  • 2
    это сработало для меня - мой тачпад перестанет работать через некоторое время. У меня есть тачпад ALPS на Dell с Xubuntu 16.04 – Ur Ya'ar 15 September 2016 в 10:53
  • 3
    sudo modprobe psmouse proto=imps работал для меня на Asus UX303UB + Ubuntu 16.04.2, но без функций мультитач. Каким-то образом из одного дня в другой мне нужно запустить эту команду, чтобы иметь тачпад, больше никогда с жесты. – Pablo Bianchi 3 July 2017 в 15:58

Если вы не знаете, какой модуль использует ваш тачпад, вы можете узнать немного о копании вокруг

grep -iA2 touchpad /proc/bus/input/devices

для меня, это возвращает

N: Name="Elan Touchpad"
P: Phys=
S: Sysfs=/devices/platform/80860F41:03/i2c-11/i2c-ELAN0100:00/input/input10

, а затем посмотрите, что ядровые модули доступны в этой категории:

ls $(find /lib/modules/$(uname -r) -type d -name mouse)

, который для меня возвращает

appletouch.ko  bcm5974.ko  cyapatp.ko  elan_i2c.ko  gpio_mouse.ko  
psmouse.ko  sermouse.ko  synaptics_i2c.ko  synaptics_usb.ko  vsxxxaa.ko

Перекрестная ссылка на два - в моем случае это похоже, что модуль для моего тачпада [ f9]

Редактирование: Недавно я выяснил, как надежно получить имя используемого драйвера с запутанной командой, которую terdon легко упростил для меня

grep -hriPo 'DRIVER=\K.+' /sys 2>/dev/null | while read driver; do [ -e /lib/modules/$(uname -r)/kernel/drivers/input/mouse/"$driver"* ] && echo $driver; done

Чтобы проверить вас получил правильный модуль, протестируйте команду, чтобы выгрузить его из ядра:

sudo modprobe -r elan_i2c

Тачпад мгновенно умрет, если у вас есть правильный модуль, так что вы можете легко найти его с помощью проб и ошибок. Перезагрузите его с помощью

sudo modprobe elan_i2c

Это эффективно перезапустит модуль. Вы можете запустить две команды вместе следующим образом:

sudo modprobe -r elan_i2c && sudo modprobe elan_i2c

Мне иногда приходится делать это при возобновлении с приостановки.

7
ответ дан 24 May 2018 в 03:24

Вот что для меня работало [Zenbook ASUS UX501VW]:

sudo  modprobe -r elan_i2c
sudo  modprobe elan_i2c

И моя пропавшая сенсорная панель вернулась.

5
ответ дан 24 May 2018 в 03:24

Что может быть проще, и который работал для меня, - это перезагрузка драйвера в ядре. Следующий код сначала находит имя драйвера ядра, который обрабатывает сенсорную панель, затем выгружает ее с помощью rmmod и перезагружает ее с помощью modprobe. Обратите внимание, что для выполнения этих команд вам нужно быть root, поэтому сначала запустите sudo su.

> lsmod | grep touch
hid_multitouch         20480  0 
> rmmod hid_multitouch 
> modprobe hid_multitouch
4
ответ дан 24 May 2018 в 03:24
  • 1
    @dessert, как мой ответ не отвечает на вопрос? Это действительно работало за мои минуты, прежде чем я разместил его здесь. Драйвер сенсорной панели не удалось, поэтому я разгрузил его и перезагрузил его в ядре, а затем он работал ... – ChrisR 20 November 2017 в 22:04
  • 2
    @dessert Это справедливая точка. Теперь ответ выглядит лучше? – ChrisR 20 November 2017 в 23:09
  • 3
    Много лучше! +1 – dessert 20 November 2017 в 23:17

Если у вас есть сенсорная панель synaptics:

synclient TouchpadOff=0
1
ответ дан 24 May 2018 в 03:24

Также попробуйте gksudo /etc/init.d/hotplug restart

1
ответ дан 24 May 2018 в 03:24

Одна команда bash для сброса сенсорной панели (на основе ответа @ user3499524):

id=`xinput --list |grep -i touchpad | cut -f2 | cut -f2 -d=` && xinput disable $id && xinput enable $id && echo "The touchpad has been reset."
1
ответ дан 24 May 2018 в 03:24

иллюзионист.

Насколько я понимаю, вы используете Ubuntu 14.04; Mine немного отличается (следующим образом):

Этот ноутбук: Acer Swift 1 (EUFI); x86-64 бит.

Тип ОС: Ubuntu 16.04 LTS.

Тип сенсорной панели: SYNA7DAB: 00 06CB: сенсорная панель 7DAC (synaptics_i2c.ko).

Решение если: https://help.ubuntu.com/community/SynapticsTouchpad/ShortcutKey

Создайте сценарий файла bash (как предлагается: создайте символическую ссылку на сценарий bash и наведите на нее горячую клавишу); Содержимое должно быть следующим:

#!/bin/bash

declare -a STATES=(1 0)
DEVICE=$(xinput list --name-only | grep Touchpad)
STATE=$(xinput list-props "$DEVICE" | grep 'Device Enabled' | sed 's/^.*:[ \t]*//')
xinput set-prop "$DEVICE" 'Device Enabled' ${STATES[$STATE]}

Убедитесь, что у него есть разрешения для eXecutable!

sudo chmod +x path/filename.sh

Это решение отлично работает для меня.

Решение предоставлено

По какой-то неизвестной причине: тачпад этого ноутбука автоматически магия становится нефункциональным (пока все еще работает AFAIK). Я попытался удалить оптическую мышь на основе USB; (! d14)

xinput --list dump:

larvae@MST-Laptop:~/Desktop$ xinput --list
⎡ Virtual core pointer                      id=2    [master pointer  (3)]
⎜   ↳ Virtual core XTEST pointer                id=4    [slave  pointer  (2)]
⎜   ↳ Logitech USB Receiver                     id=10   [slave  pointer  (2)]
⎜   ↳ SYNA7DAB:00 06CB:7DAC Touchpad            id=12   [slave  pointer  (2)]
⎣ Virtual core keyboard                     id=3    [master keyboard (2)]
    ↳ Virtual core XTEST keyboard               id=5    [slave  keyboard (3)]
    ↳ Video Bus                                 id=6    [slave  keyboard (3)]
    ↳ Power Button                              id=7    [slave  keyboard (3)]
    ↳ Sleep Button                              id=8    [slave  keyboard (3)]
    ↳ Logitech USB Receiver                     id=9    [slave  keyboard (3)]
    ↳ HD WebCam                                 id=11   [slave  keyboard (3)]
    ↳ AT Translated Set 2 keyboard              id=13   [slave  keyboard (3)]
    ↳ Acer WMI hotkeys                          id=14   [slave  keyboard (3)]

xinput --list dump:

larvae@MST-Laptop:~/Desktop$ grep -iA2 touchpad /proc/bus/input/devices
N: Name="SYNA7DAB:00 06CB:7DAC Touchpad"
P: Phys=i2c-SYNA7DAB:00
S: Sysfs=/devices/pci0000:00/0000:00:17.0/i2c_designware.4/i2c-9/i2c-SYNA7DAB:00/0018:06CB:7DAC.0003/input/input11

Рекомендация (предоставлена ​​UBUNTU): https://help.ubuntu.com/community/SynapticsTouchpad/ShortcutKey

0
ответ дан 24 May 2018 в 03:24

Другие вопросы по тегам:

Похожие вопросы: