Гид по технологиям

Как добавить и переключать раскладки клавиатуры в Linux

7 min read Linux Обновлено 14 Apr 2026
Добавление и переключение раскладок в Linux
Добавление и переключение раскладок в Linux

клавиатура ноутбука с необычной раскладкой

Важно: setxkbmap меняет раскладку только в текущей X-сессии и может быть отменён при перезагрузке. Для постоянного эффекта используйте localectl или конфигурационные файлы среды.

Зачем настраивать раскладки клавиатуры

Многие люди предпочитают работать на родном языке или используют нестандартные аппаратные раскладки. Правильная раскладка ускоряет набор, снижает количество ошибок и позволяет использовать специализированные символы. Понимание нескольких способов настройки даёт гибкость: быстрые временные правки для экспериментов и системные изменения для постоянной работы.

Кратко о терминологии:

  • Раскладка — соответствие символов клавишам.
  • Код раскладки — короткий идентификатор, например us для английской раскладки США, ru для русской, in для индийских локалей.

Использование команды setxkbmap

Команда setxkbmap полезна, если вы работаеете в X11 и комфортно с терминалом. Она мгновенно меняет раскладку для текущей X-сессии и часто используется на Raspberry Pi и других одноплатных компьютерах.

  1. Сначала получите список доступных раскладок:
localectl list-x11-keymap-layouts

список раскладок через localectl

  1. Выберите код нужной раскладки и примените его:
setxkbmap code

Пример: чтобы переключиться на хинди (Индия), выполните:

setxkbmap in

Если вы не уверены, какая раскладка была до изменений, скопируйте команду для возврата, например setxkbmap us для en_US.

Советы и нюансы:

  • setxkbmap изменяет настройки только для текущего графического сеанса (X11). При выходе или перезагрузке изменения теряются.
  • Для Wayland некоторые окружения не поддерживают setxkbmap напрямую; используйте системные настройки окружения или специализированные утилиты.

Постоянная настройка через localectl и systemd

Если ваша система использует systemd, localectl позволяет задать системную раскладку для консоли и графики.

Пример установки языка и раскладки:

localectl set-x11-keymap us pc104

Для установки двух раскладок и порядка переключения вы можете редактировать конфигурацию X11 или использовать параметры среды рабочего стола. На серверах и внедрениях рекомендуется использовать localectl или файл конфигурации /etc/X11/xorg.conf.d/00-keyboard.conf.

Пример содержимого файла /etc/X11/xorg.conf.d/00-keyboard.conf:

Section "InputClass"
    Identifier "system-keyboard"
    MatchIsKeyboard "on"
    Option "XkbLayout" "us,ru"
    Option "XkbOptions" "grp:alt_shift_toggle"
EndSection

После сохранения перезагрузите X или сеанс графического окружения.

Графическая настройка для популярных окружений рабочего стола

Ниже приведены пошаговые инструкции для основных окружений. Сохранены оригинальные названия кнопок и вкладок, где это важно.

GNOME

  1. Нажмите клавишу Super и найдите Settings.
  2. Откройте Settings и выберите вкладку Keyboard в левой панели.
  3. В разделе Input Sources нажмите Plus (+).
  4. Через меню с тремя точками выберите Other, найдите нужную раскладку и нажмите Add.

настройка раскладки в gnome

Переключение доступно из системного трея или сочетанием клавиш, если оно назначено.

KDE Plasma

  1. Откройте System Settings.
  2. Выберите Input Devices, затем вкладку Layouts под Keyboard.
  3. Включите Configure layouts и нажмите Add.
  4. Выберите раскладку, при желании задайте сочетание клавиш и нажмите Apply.

настройка раскладки в kde

Cinnamon

  1. Откройте Keyboard settings через меню приложений или нажмите Super.
  2. Перейдите на вкладку Layouts и нажмите Plus (+).
  3. Выберите нужную раскладку и Add.

В Cinnamon сочетания для переключения по умолчанию: Super + Space для следующей и Shift + Super + Space для предыдущей.

добавление раскладки в cinnamon

LXDE

В LXDE добавление раскладок не интуитивно:

  1. Правый клик на нижней панели > Add / Remove Panel Items > Add > Keyboard Layout Handler > Add.
  2. Закройте окно настроек панели.
  3. В системном трее появится иконка Keyboard Layout Handler. Правый клик по ней > “Keyboard Layout Handler” Settings.
  4. Снимите флажок Keep system layouts.
  5. В разделе Keyboard Layouts нажмите Add и выберите раскладки.

По умолчанию для переключения используется Shift + Caps Lock, но это можно изменить.

операции по добавлению в lxde

XFCE

  1. Откройте Settings > Keyboard.
  2. Перейдите на вкладку Layout.
  3. Отключите Use system defaults.
  4. Нажмите Add и выберите раскладки.
  5. Задайте сочетание клавиш в Change Layout option.

настройка раскладки в xfce

MATE

  1. System > Preferences > Hardware > Keyboard.
  2. Вкладка Layouts > Add.
  3. Выберите Country и Variants или используйте By language.
  4. Для сочетаний: Options > Switching to another layout.

выбор раскладки в mate

Enlightenment

  1. Щёлкните правой кнопкой по опции Keyboard Layout в системном трее.
  2. Выберите Keyboard > Settings.
  3. Нажмите Add и выберите раскладку.
  4. Для назначения сочетаний нажмите Plus под Switch Layout и задайте комбинацию.

конфигурация раскладки в enlightenment

Альтернативные подходы и подсистемы ввода

Если вы работаете с языками, требующими сложной трансформации или IME (input method), рассмотрите:

  • ibus — популярный менеджер ввода для многих языков; интегрируется в GNOME и другие окружения.
  • fcitx — часто используется для азиатских языков (китайский, японский, корейский).
  • xkb — низкоуровневая система раскладок; используется для точной настройки клавиш и комбинаций.

Когда использовать альтернативы:

  • Для сложных методов ввода или множественных наборов символов используйте ibus/fcitx.
  • Для простой смены языков и переключения используйте setxkbmap/localectl или настройки окружения.

Wayland и совместимость

Wayland по-разному поддерживается разными окружениями. Многие GUI-инструменты управляют раскладкой сами, и setxkbmap может не повлиять на сеанс Wayland. В Wayland используйте встроенные настройки окружения или переменные конфигурации, предоставляемые compositor-ом (например, GNOME Shell, Sway).

Рекомендация:

  • Для Wayland настраивайте раскладки через настройки рабочего стола.
  • На Sway используйте секцию input в конфиге sway (~/.config/sway/config).

Что делать, если что-то пошло не так

Общие проблемы и решения:

  • После применения setxkbmap клавиши работают неправильно — верните прежнюю раскладку командой, которую вы сохранили заранее.
  • Раскладка не сохраняется после перезагрузки — используйте localectl или файл в /etc/X11/xorg.conf.d/.
  • setxkbmap не работает в Wayland — настройте раскладку через GUI окружения.
  • Особые символы не отображаются в приложениях — проверьте кодировку и шрифты.

Критерии приёмки

  1. Пользователь может добавить минимум две раскладки и переключаться между ними сочетанием клавиш.
  2. Переключение работает в текстовых полях, терминале и приложениях.
  3. После перезагрузки поведение соответствует ожиданиям: временное изменение остаётся временным, системная настройка остаётся постоянной.

Пошаговый план действий для администратора (SOP)

  1. Определите требования: какие языки и какие пользователи.
  2. Если необходимо системное решение, используйте localectl или создайте файл /etc/X11/xorg.conf.d/00-keyboard.conf.
  3. Для развертывания на массовых рабочих местах подготовьте конфигурационный шаблон и примените его через конфигурационный менеджер (Ansible, Puppet).
  4. Документируйте сочетания клавиш и инструкции для конечных пользователей.
  5. Тестируйте на одной тестовой машине перед массовым развёртыванием.

Быстрая шпаргалка и команды

  • Просмотреть доступные раскладки:
localectl list-x11-keymap-layouts
  • Временно поменять раскладку в X11:
setxkbmap ru
  • Установить системную раскладку через systemd:
localectl set-x11-keymap ru
  • Пример файла для постоянной настройки X11: /etc/X11/xorg.conf.d/00-keyboard.conf (см. выше).

Справочные руководства и тесты приёмки

Тесты для проверки корректности:

  • Переключение раскладок работает во всех открытых окнах.
  • Сочетания клавиш переключают раскладки без конфликтов с глобальными горячими клавишами.
  • При вводе специальных символов в текстовом редакторе символы соответствуют ожидаемым.

Чек-листы по ролям

Администратор:

  • Подготовить конфигурационный файл или команду localectl.
  • Протестировать на чистой установке.
  • Документировать rollback-процедуру.

Обычный пользователь:

  • Добавить нужную раскладку через настройки рабочего стола или вызвать setxkbmap.
  • Назначить удобное сочетание клавиш для переключения.
  • Сохранить команду для возврата в заметках.

Техподдержка:

  • Провести проверку сессии пользователя (X11/Wayland).
  • Проверить логи окружения и Xorg/Wayland compositor.

Ментальные модели и лайфхаки

  • Временный vs постоянный: setxkbmap — временно, localectl/конфиг — навсегда.
  • X11 против Wayland: X11 обычно допускает утилиты уровня X, для Wayland используйте GUI окружения или конфиг compositor.
  • IME для азиатских языков: используйте ibus или fcitx, а не простую смену раскладки.

Decision flowchart

flowchart TD
  A[Нужно быстро переключить раскладку?] -->|Да| B[Использовать setxkbmap]
  A -->|Нет, нужно постоянно| C[Использовать localectl или файл /etc/X11/...]
  B --> D{Система использует Wayland?}
  D -->|Да| E[Настроить через GUI окружения]
  D -->|Нет| F[setxkbmap применён]
  C --> G{Множественные пользователи?}
  G -->|Да| H[Автоматизировать через конфигурационный менеджер]
  G -->|Нет| I[Изменение на локальной машине]

Шаблон для массового развертывания (пример)

  • Цель: добавить раскладки us и ru для всех рабочих мест.
  • Действия:
    1. Поместить файл /etc/X11/xorg.conf.d/00-keyboard.conf с содержимым:
Section "InputClass"
    Identifier "system-keyboard"
    MatchIsKeyboard "on"
    Option "XkbLayout" "us,ru"
    Option "XkbOptions" "grp:alt_shift_toggle"
EndSection
  1. Перезагрузить X или систему.
  2. Проверить переключение и наличие в системном трее.

Когда такой подход не сработает

  • Если система полностью использует Wayland и окружение не учитывает конфигурации X11 — используйте встроенные настройки окружения.
  • Если требуется сложный ввод символов (комплексные IME) — смена раскладки недостаточна, нужен ibus/fcitx.

Короткая галерея крайних случаев

  • Аппаратная клавиатура с нестандартной раскладкой — иногда требуется правка xkb-таблиц вручную.
  • Удалённый сервер без графики — локальная смена раскладки здесь не применима; настройте консольную раскладку через loadkeys.

Краткий словарь терминов

  • Раскладка — набор символов, сопоставляемых клавишам.
  • X11 — традиционный графический сервер для Linux.
  • Wayland — современная альтернатива X11.
  • IME — input method editor, метод ввода для сложных языков.

Резюме

  • Для временной смены в X11 используйте setxkbmap.
  • Для постоянных системных изменений используйте localectl или конфигурационные файлы X11.
  • В Wayland полагайтесь на настройки окружения или compositor.
  • Для сложных языков используйте ibus или fcitx.

FAQ

  1. Как вернуть прежнюю раскладку, если всё изменилось?

    • Выполните команду setxkbmap <код> с кодом прежней раскладки или восстановите файл конфигурации.
  2. Работает ли setxkbmap в Wayland?

    • В большинстве случаев нет. Используйте настройки окружения или compositor.
  3. Как сделать так, чтобы раскладки автоматически применялись после перезагрузки?

    • Используйте localectl для systemd или добавьте файл в /etc/X11/xorg.conf.d/.
Поделиться: X/Twitter Facebook LinkedIn Telegram
Автор
Редакция

Похожие материалы

Несколько аккаунтов Skype: Multi Skype Launcher
Программное обеспечение

Несколько аккаунтов Skype: Multi Skype Launcher

Журнал для работы: повысить продуктивность
Productivity

Журнал для работы: повысить продуктивность

Персональные звуки уведомлений на Android
Android.

Персональные звуки уведомлений на Android

Скачивание шоу Hulu для офлайн‑просмотра
Стриминг

Скачивание шоу Hulu для офлайн‑просмотра

Microsoft Start: персонализированная новостная лента
Новости

Microsoft Start: персонализированная новостная лента

Как изменить имя в Epic Games быстро
Гайды

Как изменить имя в Epic Games быстро