2

В Debian Sqeeze я создал скрипт с именем /etc/init.d/capslock который содержит это:

#!/bin/sh
echo "Remapping Caps Lock key to Escape"
setkeycodes 0x3a 1
echo " ...done"

Я сделал его исполняемым и связал его с /etc/rc2.d/S95capslock. Когда я запускаю его из командной строки, он работает. Но по какой-то причине он не срабатывает при перезагрузке. Я пропускаю шаг?

2 ответа2

2

Это выглядит как полезный фрагмент, но когда я его пробую, я получаю сообщение об ошибке «KDSETKEYCODE: Неверный аргумент».

В любом случае, для Squeeze вам, вероятно, следует использовать insserv для управления вашими сценариями инициализации. Добавьте заголовок к сценарию так:

### BEGIN INIT INFO
# Provides:       capslock-remap
# Required-Start: $all
# Required-Stop:  
# Default-Start:  2 3 4 5
# Default-Stop:   
# Description:    Remap CapsLock to Escape
### END INIT INFO

А затем запустите insserv:

insserv capslock
0

Я использовал команду insserv capslock и все начало работать.

Кроме того, мне нужно было добавить заголовок LSB:

#!/bin/sh
### BEGIN INIT INFO
# Provides:          capslock
# Required-Start:    
# Required-Stop:     
# Default-Start:     1 2 3 4 5 6
# Default-Stop:      
# Short-Description: 
# Description:       Remaps Caps Lock key to Escape
### END INIT INFO
setkeycodes 0x3a 1

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .