Activating numlock on bootup (Русский)

From ArchWiki
The printable version is no longer supported and may have rendering errors. Please update your browser bookmarks and please use the default browser print function instead.
Состояние перевода: На этой странице представлен перевод статьи Activating Numlock on Bootup. Дата последней синхронизации: 13 сентября 2019. Вы можете помочь синхронизировать перевод, если в английской версии произошли изменения.

Консоль

Отдельная служба

Совет: Данные шаги можно автоматизировать, установив пакет systemd-numlockonttyAUR и включив службу numLockOnTty.

Для начала создайте скрипт включения Num Lock в необходимых TTY:

/usr/local/bin/numlock
#!/bin/bash

for tty in /dev/tty{1..6}
do
    /usr/bin/setleds -D +num < "$tty";
done

Затем создайте и включите службу systemd:

/etc/systemd/system/numlock.service
[Unit]
Description=numlock

[Service]
ExecStart=/usr/local/bin/numlock
StandardInput=tty
RemainAfterExit=yes

[Install]
WantedBy=multi-user.target

Расширение getty@.service

Это более простой способ, так как в нём не используется отдельная служба и не привязываются номера определённых виртуальных терминалов. Создайте drop-in сниппет для getty@.service, который будет применяться поверх оригинальной службы:

/etc/systemd/system/getty@.service.d/activate-numlock.conf
[Service]
ExecStartPre=/bin/sh -c 'setleds -D +num < /dev/%I'
Примечание: В случае каких-либо проблем, замените ExecStartPre на ExecStartPost и/или отключите подсказку, как описано ниже.

Чтобы отключить подсказку активации Num Lock на экране входа, отредактируйте getty@tty1.service и добавьте --nohints к аргументам agetty:

[Service]
ExecStart=
ExecStart=-/sbin/agetty '-p -- \\u' --nohints --noclear %I $TERM

Bash

Добавьте setleds -D +num в ~/.bash_profile. Заметьте, что в отличие от других методов, изменения не вступят в силу до входа в аккаунт.

X.org

startx

Установите пакет numlockx и добавьте его в файл ~/.xinitrc перед exec:

#!/bin/sh
#
# ~/.xinitrc
#
# Executed by startx (run your window manager from here)
#

numlockx &

exec оконный_менеджер

MATE

По умолчанию MATE сохраняет последнее состояние перед выходом и восстанавливает его при следующем входе. Чтобы включать Num Lock при каждом входе, измените следующие значения DCONF:

dconf write org.mate.peripherals-keyboard remember-numlock-state false
dconf write org.mate.peripherals-keyboard numlock-state 'on'

KDE Plasma

Перейдите в Параметры системы > Устройства ввода > Клавиатура и выберите необходимое поведение Num Lock в секции Режим NumLock при запуске Plasma.

GDM

Примечание: GDM больше не выполняет скрипты из /etc/gdm/Init.

Убедитесь, что пакет numlockx установлен, а затем добавьте следующий код в файл ~/.xprofile:

if [ -x /usr/bin/numlockx ]; then
      /usr/bin/numlockx on
fi

GNOME

Если вы не используете экранный менеджер GDM, numlockx можно запускать при загрузке GNOME.

Установите пакет numlockx, а затем добавьте команду запуска numlockx.

$ gnome-session-properties

Данная команда откроет приложение Startup Applications Preferences. Нажмите на Add и введите следующее:

Name: Numlockx
Command: /usr/bin/numlockx on
Comment: Turns on numlock.
Примечание: Это не общесистемная настройка, соответственно данную процедуру необходимо повторить для каждого пользователя, которому необходимо включать Num Lock после входа.

Xfce

Убедитесь, что следующим параметрам задано значение true в файле ~/.config/xfce4/xfconf/xfce-perchannel-xml/keyboards.xml:

<property name="Numlock" type="bool" value="true"/>
<property name="RestoreNumlock" type="bool" value="true"/>
Примечание: Если файл не существует, откройте Настройки > Клавиатура, а затем проверьте и снимите галочку с опции Restore num lock state on startup, что создаст файл keyboards.xml.

SDDM

Задайте параметру Numlock значение on в секции [General] файла /etc/sddm.conf:

[General]
...
Numlock=on

SLiM

Найдите следующую строку в файле /etc/slim.conf и раскомментируйте её (уберите символ #):

#numlock             on

OpenBox

Добавьте следующую строку в файл ~/.config/openbox/autostart:

numlockx &

А затем сохраните файл.

LightDM

См. раздел LightDM (Русский)#NumLock включен по умолчанию.

LXDM

Задайте следующий параметр в файле /etc/lxdm/lxdm.conf:

numlock=1

LXQt

Задайте следующий параметр в файле ~/.config/lxqt/session.conf:

[Keyboard]
numlock=true