Как отключить устройства HID (Pen Eraser) в Linux, которые вызывают проблемы?

На дистрибутивах, подобных Debian, у меня возникла проблема с глюками курсора, которая, как я обнаружил, связана с проблемами стилуса. При отключении стилуса в XFCE глюки исчезают, но я не знаю, как отключить это устройство в GNOME. Как можно отключить следующее устройство:  
<br/> ↳ xwayland-tablet stylus:15               	id=11	[slave  pointer  (2)]  
<br/> ⎜   ↳ xwayland-tablet eraser:15               	id=12	[slave  pointer  (2)]  
Так, чтобы оно было отключено при старте системы, желательно независимо от сессий, но я готов рассмотреть решение и только для GNOME. Буду благодарен за любые советы. Кстати, с наступающим вас! Спасибо!
  • 30 декабря 2024 г. 16:13
Ответы на вопрос 2
С наступающим вас! Чтобы отключить устройство HID, такое как стилус и его ластик (eraser), в Linux, можно воспользоваться несколькими методами. Основной механизм, которым мы будем пользоваться, — это `xinput`, который позволяет управлять входными устройствами. 

Вот шаги, которые вы можете выполнить:

### 1. Установка необходимых инструментов

Убедитесь, что `xinput` установлен. Обычно он предустановлен в большинстве дистрибутивов, но вы можете проверить это с помощью:

```bash
xinput --version
```

### 2. Получение списка устройств

Чтобы найти идентификатор устройства, выполните команду:

```bash
xinput list
```

Это выведет список всех входных устройств. Найдите ваше устройство (например, "xwayland-tablet stylus" и "xwayland-tablet eraser") и запишите их идентификаторы.

### 3. Отключение устройств

После того как вы получили идентификатор устройства, вы можете отключить его с помощью команды:

```bash
xinput disable <id>
```

Например, если идентификатор вашего стилуса — 11, а идентификатор ластика — 12, вы можете отключить их так:

```bash
xinput disable 11
xinput disable 12
```

### 4. Автоматизация отключения при старте

Чтобы отключать устройства автоматически при старте системы, вы можете создать скрипт. Сделайте следующее:

1. Создайте новый файл в домашнем каталоге, например `disable_tablet.sh`:

```bash
nano ~/disable_tablet.sh
```

2. Добавьте в файл следующее содержимое:

```bash
#!/bin/bash
xinput disable <id_стилуса>
xinput disable <id_ластика>
```

Замените `<id_стилуса>` и `<id_ластика>` на реальные идентификаторы ваших устройств.

3. Сделайте скрипт исполняемым:

```bash
chmod +x ~/disable_tablet.sh
```

4. Теперь вам нужно добавить этот скрипт в автозагрузку GNOME. Для этого:

   - Откройте "Приложения для автозагрузки" (можно найти через поиск в меню).
   - Нажмите "Добавить" и заполните следующие поля:
     - Имя: Отключить планшет
     - Команда: `/home/ваше_имя/disable_tablet.sh`
     - Описание: Отключить стилус и ластик при запуске

5. Сохраните изменения и перезагрузите.

Теперь ваш скрипт должен выполняться при каждом входе в систему и отключать планшетные устройства.

### 5. Альтернативный метод: использование `udev`

Если вы хотите отключить устройство на уровне ядра, вы можете создать правило `udev`, но это более сложный метод и требует знания о том, как ваши устройства идентифицируются в системе. Это также может повлечь за собой отключение устройства для других сессий, поэтому используется реже.

Если у вас есть вопросы или сложности с выполнением этих шагов, не стесняйтесь спрашивать!
Чтобы отключить HID (Pen Eraser) устройства в Linux, выполните следующие шаги: 

1. Откройте терминал и выполните команду `xinput list`, чтобы получить список подключенных устройств. Найдите устройство, которое вызывает проблему (например, Pen Eraser), и запомните его ID.

2. Для отключения устройства выполните команду `xinput disable `, где `` — это идентификатор устройства, полученный на предыдущем шаге.

3. Чтобы сделать отключение устройства постоянным при каждом запуске системы, добавьте команду `xinput disable ` в файл `~/.xprofile` или `~/.xinitrc` в домашней директории пользователя.

4. Если требуется отключение для всех пользователей, создайте скрипт в `/etc/X11/xinit/xinitrc.d/`:
- Создайте файл, например, `disable-pen-eraser.sh`, и добавьте в него строку `xinput disable `.
- Сделайте файл исполняемым командой `sudo chmod +x /etc/X11/xinit/xinitrc.d/disable-pen-eraser.sh`.

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