Jump to content
From ArchWiki
Состояние перевода: На этой странице представлен перевод статьи 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

Categories:

- Boot process (Русский)
- Keyboards (Русский)