# isaac @ LMDE in ~/.config/xremap [5:10:11] $ systemctl --user daemon-reload
Step 3 - 设置开机自动启动:
只需执行一次,之后每次开机会自动生效。
1 2 3
# isaac @ LMDE in ~/.config/xremap [5:12:06] $ systemctl --user enable xremap Created symlink /home/isaac/.config/systemd/user/default.target.wants/xremap.service → /home/isaac/.config/systemd/user/xremap.service.
Step 4 - 立即启动:
start — 本次立即启动,只需执行一次,之后开机会由 enable 自动接管
1 2
# isaac @ LMDE in ~/.config/xremap [5:12:13] $ systemctl --user start xremap
注:其他或将使用的命令:
取消开机自启:
1
systemctl --user disable xremap
查看当前是否添加开机启动:
输出 enabled 表示已开机自启,disabled 表示未开启。
1
systemctl --user is-enabled xremap
列出当前用户所有已设置开机自启的服务:
注:若要查看系统级(sudo 级别)的开机自启服务,则去掉 --user。
1
systemctl --user list-unit-files --state=enabled
停止当前正在运行的进程:
1
systemctl --user stop xremap
异常
启动服务后,Tab 替换失败
服务启动后(systemctl --user start xremap),无效。
Step 1 - 检查状态:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
# isaac @ LMDE in ~/.config/xremap [5:12:37] $ systemctl --user status xremap × xremap.service - xremap key remapper Loaded: loaded (/home/isaac/.config/systemd/user/xremap.service; enabled; preset: enabled) Active: failed (Result: exit-code) since Fri 2026-03-20 05:12:38 CST; 1min 52s ago Duration: 3ms Process: 3887383 ExecStart=/usr/local/bin/xremap /home/isaac/.config/xremap/config.yml (code=exited, status=1/FAILURE) Main PID: 3887383 (code=exited, status=1/FAILURE) CPU: 3ms
Mar 20 05:12:38 LMDE systemd[1072]: xremap.service: Scheduled restart job, restart counter is at 5. Mar 20 05:12:38 LMDE systemd[1072]: Stopped xremap.service - xremap key remapper. Mar 20 05:12:38 LMDE systemd[1072]: xremap.service: Start request repeated too quickly. Mar 20 05:12:38 LMDE systemd[1072]: xremap.service: Failed with result 'exit-code'. Mar 20 05:12:38 LMDE systemd[1072]: Failed to start xremap.service - xremap key remapper.
服务已经是 failed 状态,没有在运行:
1
Mar 20 05:12:38 LMDE systemd[1072]: Failed to start xremap.service - xremap key remapper.
Step 2 - 直接执行(无 sudo),查看输出:
1 2 3 4 5 6 7 8
# isaac @ LMDE in ~/.config/xremap [5:16:02] C:3 $ /usr/local/bin/xremap ~/.config/xremap/config.yml Selecting devices from the following list: ------------------------------------------------------------------------------ ------------------------------------------------------------------------------ Selected keyboards automatically since --device options weren't specified: ------------------------------------------------------------------------------ Error: Failed to prepare input devices: No device was selected!
# isaac @ LMDE in ~/Workspace/blog on git:main x [7:03:04] $ xremap --list-devices PATH NAME IS_KEYBOARD IS_MOUSE TYPE VENDOR PRODUCT
# isaac @ LMDE in ~/Workspace/blog on git:main x [7:03:09] $ sudo xremap --list-devices [sudo] password for isaac: PATH NAME IS_KEYBOARD IS_MOUSE TYPE VENDOR PRODUCT /dev/input/event0 Sleep Button falsefalse Host 0x0 0x3 /dev/input/event1 Power Button falsefalse Host 0x0 0x1 /dev/input/event10 HDA NVidia HDMI/DP,pcm=8 falsefalse Unknown 0x0 0x0 /dev/input/event11 HDA NVidia HDMI/DP,pcm=9 falsefalse Unknown 0x0 0x0 /dev/input/event12 HDA Intel PCH Rear Mic falsefalse Unknown 0x0 0x0 /dev/input/event13 HDA Intel PCH Front Mic falsefalse Unknown 0x0 0x0 /dev/input/event14 HDA Intel PCH Line falsefalse Unknown 0x0 0x0 /dev/input/event15 HDA Intel PCH Line Out falsefalse Unknown 0x0 0x0 /dev/input/event16 HDA Intel PCH Front Headphone falsefalse Unknown 0x0 0x0 /dev/input/event17 xremap truetrue USB 0x1234 0x5678 /dev/input/event2 Power Button falsefalse Host 0x0 0x1 /dev/input/event3 Keychron Keychron K2 truefalse USB 0x5ac 0x24f /dev/input/event4 Keychron Keychron K2 truefalse USB 0x5ac 0x24f /dev/input/event5 Logitech G304 truefalse USB 0x46d 0x4074 /dev/input/event6 PC Speaker falsefalse ISA 0x1f 0x1 /dev/input/event7 Eee PC WMI hotkeys falsefalse Host 0x0 0x0 /dev/input/event8 HDA NVidia HDMI/DP,pcm=3 falsefalse Unknown 0x0 0x0 /dev/input/event9 HDA NVidia HDMI/DP,pcm=7 falsefalse Unknown 0x0 0x0
验证 2 - 查询用户 isaac 所属的所有用户组
注:不加用户名则默认查询当前登录用户。
1 2 3
# isaac @ LMDE in ~/Workspace/blog on git:main x [7:03:23] $ groups isaac isaac : isaac adm dialout fax cdrom floppy tape sudo audio dip video plugdev users netdev lpadmin bluetooth scanner sambashare
# isaac @ LMDE in ~ [2:12:49] $ groups isaac isaac : isaac adm dialout fax cdrom floppy tape sudo audio dip video plugdev users input netdev lpadmin bluetooth scanner sambashare
# isaac @ LMDE in ~ [2:12:54] $ groups isaac adm dialout fax cdrom floppy tape sudo audio dip video plugdev users netdev lpadmin bluetooth scanner sambashare
# isaac @ LMDE in ~ [2:20:11] $ groups isaac adm dialout fax cdrom floppy tape sudo audio dip video plugdev users input netdev lpadmin bluetooth scanner sambashare
# isaac @ LMDE in ~ [2:20:19] $ groups isaac isaac : isaac adm dialout fax cdrom floppy tape sudo audio dip video plugdev users input netdev lpadmin bluetooth scanner sambashare
# isaac @ LMDE in ~ [2:20:26] $ systemctl --user status xremap × xremap.service - xremap key remapper Loaded: loaded (/home/isaac/.config/systemd/user/xremap.service; enabled; preset: enabled) Active: failed (Result: exit-code) since Sat 2026-03-21 02:20:10 CST; 31s ago Duration: 916ms Process: 1680 ExecStart=/usr/local/bin/xremap /home/isaac/.config/xremap/config.yml (code=exited, status=1/FAILURE) Main PID: 1680 (code=exited, status=1/FAILURE) CPU: 2ms
Mar 21 02:20:10 LMDE systemd[1067]: xremap.service: Scheduled restart job, restart counter is at 5. Mar 21 02:20:10 LMDE systemd[1067]: Stopped xremap.service - xremap key remapper. Mar 21 02:20:10 LMDE systemd[1067]: xremap.service: Start request repeated too quickly. Mar 21 02:20:10 LMDE systemd[1067]: xremap.service: Failed with result 'exit-code'. Mar 21 02:20:10 LMDE systemd[1067]: Failed to start xremap.service - xremap key remapper.