Как в Kali Linux установить русскую раскладку клавиатуры: полное руководство

Переключение на русский язык в Kali Linux часто становится головной болью для новичков — система по умолчанию настроена на английскую раскладку, а стандартные способы добавления языков из других дистрибутивов здесь работают иначе. Если вы столкнулись с тем, что при попытке ввести пароль или команду на кириллице отображаются иероглифы, а сочетания клавиш Alt+Shift или Ctrl+Shift не срабатывают — эта инструкция для вас.

В отличие от Ubuntu или Mint, где настройка языка происходит через графический интерфейс в несколько кликов, Kali Linux требует ручного редактирования конфигурационных файлов даже в средах с GUI. Причина кроется в минималистичном подходе разработчиков: система изначально ориентирована на профессионалов в области кибербезопасности, а не на широкий круг пользователей. Однако это не означает, что русскоязычным пользователям придётся мириться с неудобствами — достаточно один раз правильно настроить систему.

В этом руководстве мы разберём три основных метода: 1) Настройка через графический интерфейс (для пользователей Kali Linux с GNOME/Xfce), 2) Ручное редактирование конфигурационных файлов (универсальный способ для всех версий), 3) Быстрое переключение раскладки в терминале без перезагрузки.

Также вы узнаете, как сохранить настройки раскладки после перезапуска системы — одна из самых распространённых проблем у пользователей.

1. Проверка текущих настроек локали и раскладки

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

localectl status

cat /etc/default/keyboard

В выводе первой команды обратите внимание на строки: System Locale (должен быть ru_RU.UTF-8 или аналогичный) и VC Keymap (текущая раскладка для виртуальной консоли).

Если locale установлен на C.UTF-8 или en_US.UTF-8, русские символы могут отображаться неправильно даже после добавления раскладки.

Вторая команда покажет текущие настройки клавиатуры в файле /etc/default/keyboard. Здесь важны параметры: XKBMODEL, XKBLAYOUT, XKBVARIANT и XKBOPTIONS.

Если XKBLAYOUT содержит только us, значит, русская раскладка не добавлена.

⚠️ Внимание: Если вы работаете в Kali Linux через SSH или удалённый терминал, настройки раскладки клавиатуры применяются только к локальной машине. Для корректного отображения кириллицы в удалённой сессии потребуется дополнительная настройка locale на сервере.

2. Добавление русской раскладки через графический интерфейс (GNOME/Xfce)

Если вы используете Kali Linux с графической оболочкой GNOME или Xfce, самый простой способ — воспользоваться встроенными настройками. Откройте меню приложений и найдите Settings (Настройки) → Region & Language (Регион и язык).

В разделе Input Sources (Источники ввода) нажмите + Add и выберите: RussianRussian (или Russian (phonetic), если вам удобнее фонетическая раскладка).

После добавления не забудьте настроить сочетание клавиш для переключения — по умолчанию это может быть Super+Space (клавиша Windows + пробел).

  • 🔹 Проблема: После перезагрузки раскладка сбрасывается на английскую. Решение: Установите пакет gnome-tweaks и в разделе Keyboard & Mouse отключите опцию Compose Key.
  • 🔹 Проблема: В терминале раскладка не переключается. Решение: Графические настройки не влияют на виртуальные консоли (tty1-tty6). Для них требуется отдельная настройка (см. раздел 4).
  • 🔹 Проблема: Символы отображаются как "???". Решение: Установите шрифты с поддержкой кириллицы: sudo apt install fonts-dejavu-core ttf-mscorefonts-installer.
📊 Какую оболочку вы используете в Kali Linux?
GNOME
Xfce
KDE
Только терминал (no GUI)
Другая

3. Ручное редактирование конфигурационных файлов (универсальный метод)

Этот способ работает во всех версиях Kali Linux, включая минимальные установки без графического интерфейса. Откройте терминал и выполните следующие шаги:

Шаг 1. Отредактируйте файл /etc/default/keyboard:

sudo nano /etc/default/keyboard

Добавьте или измените строки:

XKBMODEL="pc105"

XKBLAYOUT="us,ru"

XKBVARIANT=","

XKBOPTIONS="grp:alt_shift_toggle,grp_led:scroll"

Пояснения:
  • XKBLAYOUT="us,ru" — указывает две раскладки: английскую и русскую.
  • grp:alt_shift_toggle — переключение по Alt+Shift.
  • grp_led:scroll — индикатор раскладки на клавише Scroll Lock.

Шаг 2. Обновите настройки консоли (для tty1-tty6):

sudo dpkg-reconfigure keyboard-configuration

В интерактивном меню выберите:

  • Модель клавиатуры: Generic 105-key PC.
  • Раскладка: Russian (добавьте к английской).
  • Сочетание для переключения: Alt+Shift.

Шаг 3. Перезагрузите систему или примените настройки без перезагрузки:

sudo setupcon

Эта команда обновляет конфигурацию консоли в реальном времени.

⚠️ Внимание: Если после перезагрузки раскладка снова сбрасывается, проверьте права на файл /etc/default/keyboard. Он должен принадлежать пользователю root с правами 644. Исправьте права командой:
sudo chmod 644 /etc/default/keyboard && sudo chown root:root /etc/default/keyboard

Файл /etc/default/keyboard отредактирован|Права на файл: 644, владелец root|Выполнена команда dpkg-reconfigure keyboard-configuration|Применена команда setupcon|Перезагрузка системы-->

4. Настройка раскладки для виртуальных консолей (tty1-tty6)

Если вы переключаетесь на виртуальные консоли (Ctrl+Alt+F1-F6), то обнаружите, что там по-прежнему работает только английская раскладка. Это происходит потому, что графические настройки не распространяются на tty. Чтобы исправить это:

Способ 1. Установите пакет console-data и настройте его:

sudo apt install console-data

sudo dpkg-reconfigure console-data

В меню выберите UTF-8, затем Russian.

Способ 2. Вручную загрузите кириллическую карту клавиш для консоли:

sudo loadkeys ru

Чтобы сделать это постоянно, добавьте команду в автозагрузку:

echo "loadkeys ru" | sudo tee -a /etc/rc.local

Проблема Причина Решение
Раскладка сбрасывается после перезагрузки Не сохранены настройки в /etc/default/keyboard Проверьте права на файл и выполните sudo dpkg-reconfigure keyboard-configuration
В терминале отображаются "???" вместо кириллицы Отсутствует locale ru_RU.UTF-8 Установите locale: sudo locale-gen ru_RU.UTF-8
Не работает переключение Alt+Shift Конфликт с менеджером окон Попробуйте Ctrl+Shift или настройте в XKBOPTIONS
Раскладка работает в GUI, но не в tty Отсутствует конфигурация для виртуальных консолей Выполните sudo dpkg-reconfigure console-data

5. Быстрое переключение раскладки в терминале без перезагрузки

Если вам нужно срочно ввести команду на русском, но настройки ещё не применены, используйте временное решение:

Для текущей сессии терминала:

setxkbmap -layout "us,ru" -option "grp:alt_shift_toggle"

Эта команда сразу активирует переключение между английской и русской раскладками по Alt+Shift.

Для виртуальной консоли (tty):

loadkeys ru

Чтобы вернуться к английской:

loadkeys us

Эти команды не сохраняют настройки после закрытия терминала или перезагрузки, но полезны для разовых задач.

6. Настройка индикатора раскладки в панели задач

По умолчанию Kali Linux не показывает текущую раскладку на панели. Чтобы добавить индикатор:

Для GNOME:

Установите расширение Kimpanel:

sudo apt install gnome-shell-extension-kimpanel

gnome-tweaks

В GNOME TweaksExtensions активируйте Kimpanel.

Для Xfce:

Добавьте апплет Keyboard Layouts на панель:

  1. ПКМ по панели → PanelAdd New Items.
  2. Выберите Keyboard Layouts.
  3. Настройте отображение флага или аббревиатуры (RU/EN).

Если индикатор не появляется, проверьте, что в системе установлен пакет xfce4-xkb-plugin:

sudo apt install xfce4-xkb-plugin

7. Решение распространённых ошибок

Ошибка 1: После настройки раскладка работает, но символы вводятся неправильно (например, "й" печатает "q"). Причина: Конфликт между настройками X11 и консоли. Решение: Выполните:

sudo rm /etc/X11/xorg.conf.d/kbd

sudo dpkg-reconfigure xkb-data

Ошибка 2: В некоторых программах (например, Burp Suite или Wireshark) раскладка не переключается. Причина: Java-приложения используют собственные настройки клавиатуры. Решение: Запускайте их с параметром:

env GTK_IM_MODULE=ibus программa

Ошибка 3: При входе в систему (в lightdm или gdm3) раскладка сбрасывается. Причина: Менеджер дисплея не читает пользовательские настройки. Решение: Отредактируйте файл /etc/environment:

sudo nano /etc/environment

Добавьте строки:

GTK_IM_MODULE=ibus

QT_IM_MODULE=ibus

XMODIFIERS=@im=ibus

Почему в Kali Linux нет русской раскладки по умолчанию?

Разработчики Kali Linux позиционируют систему как инструмент для профессионалов в области кибербезопасности, где основной язык общения — английский. Добавление дополнительных локалей увеличивает размер образа и потенциально может конфликтовать с инструментами пентестинга (например, при использовании клавиатурных сокращений в Metasploit или Burp Suite). Кроме того, многие команды и скрипты в Kali чувствительны к кодировке, а UTF-8 с кириллицей может вызывать ошибки в старых утилитах. Тем не менее, русскоязычное сообщество активно развивается, и в последних версиях процесс добавления раскладки упрощён.

FAQ: Частые вопросы по настройке русской раскладки

Можно ли настроить переключение раскладки на Ctrl+Shift вместо Alt+Shift?

Да, измените параметр XKBOPTIONS в файле /etc/default/keyboard на:

XKBOPTIONS="grp:ctrl_shift_toggle"

Затем примените настройки командой sudo setupcon.

Почему после обновления Kali Linux раскладка снова сбрасывается?

При крупных обновлениях системы (например, при переходе на новую версию ядра) конфигурационные файлы могут перезаписываться. Чтобы этого избежать, создайте резервную копию вашего /etc/default/keyboard и восстанавливайте её после обновлений:

sudo cp /etc/default/keyboard /etc/default/keyboard.bak

Также проверяйте наличие пакета keyboard-configuration — иногда он удаляется как "ненужный" при автоочистке.

Как добавить фонетическую русскую раскладку (ЙЦУКЕН → QWERTY)?

В файле /etc/default/keyboard замените строку XKBLAYOUT на:

XKBLAYOUT="us,ru"

XKBVARIANT=",phonetic"

Фонетическая раскладка позволяет вводить русские буквы, нажимая клавиши так, как если бы они были на английской клавиатуре (например, "р" = "r", "о" = "o").

Работает ли эта инструкция для Kali Linux в Docker или WSL?

Нет, в Docker-контейнерах и WSL (Windows Subsystem for Linux) настройки клавиатуры наследуются от хостовой системы. Для WSL можно попробовать экспортировать переменные окружения:

export LANG=ru_RU.UTF-8

export LC_ALL=ru_RU.UTF-8

Но переключение раскладки будет работать только через хостовую ОС (Windows). В Docker решения нет — используйте английскую раскладку или подключайтесь к контейнеру удалённо.

Как вернуть английскую раскладку по умолчанию после экспериментов?

Выполните команды:

setxkbmap -layout us

sudo dpkg-reconfigure keyboard-configuration

В меню конфигурации выберите только English (US) и удалите русскую раскладку. Также очистите файл /etc/default/keyboard от лишних параметров.