Переключение раскладки клавиатуры в Ubuntu Linux — задача, с которой сталкивается каждый пользователь после установки системы. Даже если вы выбрали русский язык при инсталляции, стандартные сочетания клавиш (Alt+Shift или Ctrl+Shift) могут не работать, а в некоторых версиях Ubuntu раскладка вовсе сбрасывается после перезагрузки. Эта проблема особенно актуальна для мультиязычных пользователей, которым приходится постоянно переключаться между английской и русской раскладками при работе с терминалом, документами или кодом.
В этой статье мы разберём все возможные способы настройки переключения раскладки — от базовых настроек через графический интерфейс до ручного редактирования конфигурационных файлов и использования специализированных утилит вроде setxkbmap. Особое внимание уделим типичным ошибкам (например, когда раскладка сбрасывается при входе в систему) и решениям для серверных версий Ubuntu без графической оболочки. Если вы используете Ubuntu 22.04 LTS, 24.04 или более ранние версии — инструкции подойдут для всех них с учётом незначительных отличий в интерфейсе.
1. Настройка раскладки через графический интерфейс (GNOME)
Самый простой способ добавить или изменить раскладку — использовать стандартные настройки GNOME. Этот метод подходит для большинства пользователей десктопных версий Ubuntu (включая Ubuntu Budgie, Kubuntu и Xubuntu с адаптированными интерфейсами).
Чтобы открыть настройки, выполните следующие шаги:
- 🖱️ Нажмите на иконку шестерёнки в правом верхнем углу экрана (панель GNOME) и выберите
Настройки(илиSettings). - 🌐 Перейдите в раздел
Регион и язык(Region & Language). - ➕ В блоке
Источники ввода(Input Sources) нажмитеДобавить(Add) и выберите нужный язык (например,Russian). - 🔄 Убедитесь, что в списке отображаются обе раскладки (например,
English (US)иRussian).
После добавления языков можно настроить сочетание клавиш для переключения:
- В том же разделе
Регион и языкнажмите на три точки (⋮) рядом с блокомИсточники ввода. - Выберите
Параметры клавиатуры(Keyboard Settings). - Найдите опцию
Переключение на другой источник вводаи установите желаемое сочетание (например,Alt+ShiftилиSuper+Space).
⚠️ Внимание: В некоторых версиях Ubuntu (например, 20.04) после обновления системы настройки раскладки могут сбрасываться. Чтобы этого избежать, рекомендуется дополнительно настроить раскладку через конфигурационные файлы (раздел 3).
2. Горячие клавиши по умолчанию и их изменение
Ubuntu предлагает несколько стандартных сочетаний для переключения раскладки:
- 🔹
Alt+Shift— классическое сочетание, знакомое пользователям Windows. - 🔹
Super+Space(клавишаWindows + Пробел) — популярно среди разработчиков. - 🔹
Ctrl+Shift— альтернатива для тех, кто привык к этому сочетанию в macOS.
Если стандартные варианты не устраивают, их можно изменить через Терминал или графический интерфейс. Например, чтобы назначить переключение на Caps Lock (удобно для часто переключающихся пользователей), выполните:
gsettings set org.gnome.desktop.input-sources xkb-options "['grp:caps_toggle']"
Чтобы вернуть стандартное сочетание:
gsettings reset org.gnome.desktop.input-sources xkb-options
3. Ручное редактирование конфигурационных файлов
Если настройки через графический интерфейс не сохраняются после перезагрузки, придётся редактировать конфигурационные файлы вручную. Этот метод также актуален для серверных версий Ubuntu, где нет графической оболочки.
Основные файлы, отвечающие за раскладку:
- 📄
/etc/default/keyboard— глобальные настройки (используется при загрузке системы). - 📄
~/.config/dconf/user— пользовательские настройки GNOME (в бинарном формате). - 📄
~/.xinputrc— настройки для X11 (если используется).
Чтобы изменить глобальные настройки, откройте файл /etc/default/keyboard с правами суперпользователя:
sudo nano /etc/default/keyboard
Найдите строки:
XKBOPTIONS="grp:alt_shift_toggle"
И замените на нужное сочетание, например:
XKBOPTIONS="grp:ctrl_shift_toggle"
После сохранения изменений примените их командой:
sudo setupcon
Что делать, если после редактирования файла раскладка не меняется?
Если изменения в /etc/default/keyboard не применяются, проверьте:
1. Права на файл (должны быть 644).
2. Наличие конфликтующих настроек в ~/.xinputrc или ~/.profile.
3. Версию дисплейного сервера (для Wayland может потребоваться другой подход).
4. Использование утилиты setxkbmap для мгновенного переключения
setxkbmap — мощная консольная утилита для управления раскладкой в реальном времени. Она позволяет менять раскладку без перезагрузки и настраивать сложные схемы переключения.
Основные команды:
| Команда | Описание |
|---|---|
setxkbmap -query |
Показать текущие настройки раскладки. |
setxkbmap us |
Установить английскую раскладку. |
setxkbmap ru |
Установить русскую раскладку. |
setxkbmap -option grp:alt_shift_toggle us,ru |
Назначить переключение между us и ru по Alt+Shift. |
setxkbmap -option grp:win_space_toggle us,ru |
Назначить переключение по Super+Space. |
Чтобы изменения применялись автоматически при запуске системы, добавьте команду в автозагрузку. Для этого:
- Создайте файл
~/.xprofile(если его нет): - Добавьте в него строку:
- Сделайте файл исполняемым:
touch ~/.xprofile
setxkbmap -option grp:alt_shift_toggle us,ru
chmod +x ~/.xprofile
5. Настройка раскладки в Wayland (Ubuntu 22.04 и новее)
Начиная с Ubuntu 22.04 LTS, по умолчанию используется протокол отображения Wayland, который не поддерживает setxkbmap. Вместо этого для управления раскладкой нужно использовать:
- 🛠️
gsettings— для пользовательских настроек. - 📜 Конфигурационные файлы GNOME.
- 🔧 Специализированные утилиты вроде ibus или fcitx.
Чтобы изменить сочетание клавиш в Wayland, используйте:
gsettings set org.gnome.desktop.input-sources xkb-options "['grp:alt_shift_toggle']"
Для добавления новой раскладки:
gsettings set org.gnome.desktop.input-sources sources "[('xkb', 'us'), ('xkb', 'ru')]"
⚠️ Внимание: В Wayland некоторые сочетания клавиш (например, Caps Lock) могут конфликтовать с системными функциями. Если переключение не работает, попробуйте альтернативные комбинации вроде Super+Space.
Убедитесь, что:
1. Сеанс действительно работает на Wayland (проверьте командой echo $XDG_SESSION_TYPE).
2. В настройках GNOME включены нужные раскладки.
3. Нет конфликтов с другими расширениями (например, GNOME Tweaks).
4. Система обновлена до последней версии (в старых версиях Wayland были баги с раскладкой).-->
6. Решение распространённых проблем с раскладкой
Даже после правильной настройки раскладка может работать некорректно. Рассмотрим типичные проблемы и их решения:
Проблема 1: Раскладка сбрасывается после перезагрузки.
- 🔧 Проверьте права на файл
/etc/default/keyboard. - 🔧 Убедитесь, что команда
setupconвыполняется при старте системы. - 🔧 Для GNOME попробуйте сбросить настройки:
dconf reset -f /org/gnome/desktop/input-sources/
Проблема 2: Не работает переключение в терминале (TTY).
В консоли (Ctrl+Alt+F1-F6) раскладка управляется отдельно. Чтобы настроить её:
- Откройте файл
/etc/vconsole.conf: - Добавьте строку:
- Обновите инициализацию:
sudo nano /etc/vconsole.conf
KEYMAP=us,ru
sudo update-initramfs -u
Проблема 3: Конфликт с ibus или fcitx.
Если вы используете системы ввода для азиатских языков (например, ibus), они могут блокировать стандартные сочетания клавиш. Решение:
ibus-setup
В настройках ibus отключите управление раскладкой или назначьте другое сочетание.
7. Альтернативные методы: fcitx, ibus и расширения GNOME
Если стандартные методы не устраивают, можно использовать сторонние инструменты:
fcitx: Популярная платформа ввода, поддерживающая сложные схемы переключения. Установите её командой:
sudo apt install fcitx fcitx-config-gtk
Затем добавьте в автозагрузку:
im-config -n fcitx
GNOME Extensions: Расширения вроде Kimpanel или Input Source Switcher добавляют гибкость в управление раскладками. Установите их через:
- 🌐 Официальный сайт расширений GNOME.
- 📦 Или через пакет
gnome-shell-extension-manager:
sudo apt install gnome-shell-extension-manager
Важно: Расширения GNOME работают только в графическом режиме и могут конфликтовать с другими инструментами ввода.
FAQ: Частые вопросы по настройке раскладки в Ubuntu
Как вернуть стандартные настройки раскладки?
Выполните команду:
gsettings reset-recursively org.gnome.desktop.input-sources
Или для глобальных настроек:
sudo rm /etc/default/keyboard && sudo dpkg-reconfigure keyboard-configuration
Почему в некоторых приложениях (например, LibreOffice) раскладка не переключается?
Это может быть связано с:
- 🔹 Конфликтом с внутренними настройками приложения (проверьте настройки LibreOffice →
Инструменты → Параметры → Языковые настройки). - 🔹 Использованием Wayland (попробуйте переключиться на X11 при входе в систему).
- 🔹 Устаревшей версией приложения (обновите его через
sudo apt update && sudo apt upgrade).
Как настроить разные раскладки для разных пользователей?
Настройки раскладки в Ubuntu привязаны к пользовательскому профилю. Чтобы настроить индивидуальные раскладки:
- Для каждого пользователя выполните настройку через
gsettingsили графический интерфейс. - Убедитесь, что в
/etc/default/keyboardне прописаны глобальные ограничения. - Для серверных версий используйте
~/.bashrcс индивидуальными alias дляsetxkbmap.
Можно ли назначить переключение раскладки на клавишу Scroll Lock?
Да, но это требует ручного редактирования xkb. Создайте кастомный файл:
sudo nano /usr/share/X11/xkb/symbols/custom
Добавьте в него:
xkb_symbols "scrolllock_toggle" {
key <SCLK> { [ ISO_Next_Group ] };
};
Затем примените:
setxkbmap -layout us,ru -option grp:toggle -variant , -option custom:scrolllock_toggle
Как проверить, какая раскладка активна в данный момент?
Используйте одну из команд:
setxkbmap -query | grep layout
Или для Wayland:
gsettings get org.gnome.desktop.input-sources current
В графическом интерфейсе текущая раскладка отображается в панели GNOME (справа вверху).