Linux

Установка и настройка Zsh на Linux: полное руководство

В этом гайде вы установите мощную оболочку Zsh на Linux, настроите менеджер конфигураций Oh My Zsh и кастомизируете интерфейс под свои задачи. Получите продвинутый терминал с автодополнением, историей команд и удобными плагинами.

Обновлено 16 февраля 2026 г.
10-20 мин
Низкая
FixPedia Team
Применимо к:Ubuntu 22.04+Debian 11+Fedora 35+Arch LinuxAny Linux with package manager

Введение / Зачем это нужно

Zsh (Z shell) — это современная, расширяемая оболочка командной строки, которая предлагает мощные возможности по сравнению с стандартным Bash: улучшенное автодополнение, тему оформления, плагины и более удобную навигацию по истории. Установка Zsh с менеджером конфигураций Oh My Zsh превратит ваш терминал в продуктивную среду для разработки и администрирования. После выполнения этого гайда вы получите:

  • Быстрое автодополнение команд, путей и аргументов.
  • Цветовое выделение синтаксиса в реальном времени.
  • Интеграцию с Git (показ ветки, статуса).
  • Готовые плагины для Docker, Kubernetes, Python и других инструментов.
  • Красивые и информативные темы оформления.

Требования / Подготовка

Перед началом убедитесь, что:

  1. У вас есть доступ к терминалу Linux с правами sudo (для установки пакетов).
  2. Дистрибутив поддерживает пакетный менеджер (apt, dnf, pacman и т.д.).
  3. Вы знакомы с базовыми командами (cd, nano/vim, git).
  4. Рекомендуется: создайте резервную копию текущего файла ~/.bashrc, если хотите сохранить настройки Bash.

Шаг 1: Установите Zsh

Zsh доступен в репозиториях всех популярных дистрибутивов. Выберите команду для вашей системы:

Ubuntu/Debian:

sudo apt update && sudo apt install zsh -y

Fedora/RHEL/CentOS:

sudo dnf install zsh -y

Arch Linux:

sudo pacman -S zsh

openSUSE:

sudo zypper install zsh

После установки проверьте версию:

zsh --version

Ожидаемый вывод: zsh 5.9 (или новее).

Шаг 2: Сделайте Zsh оболочкой по умолчанию

Чтобы Zsh запускалась при каждом открытии терминала, измените оболочку для текущего пользователя:

chsh -s $(which zsh)

⚠️ Важно: which zsh возвращает путь к исполняемому файлу (обычно /usr/bin/zsh). Команда chsh требует ввода пароля.

Проверка: Закройте и откройте терминал заново или выполните:

echo $SHELL

Вывод должен быть: /usr/bin/zsh.

Шаг 3: Установите Oh My Zsh (опционально, но рекомендуется)

Oh My Zsh — это фреймворк для управления конфигурацией Zsh. Он автоматически устанавливает плагины и темы.

sh -c "$(curl -fsSL https://raw.githubusercontent.com/ohmyzsh/ohmyzsh/master/tools/install.sh)"

Процесс:

  1. Скрипт клонирует репозиторий в ~/.oh-my-zsh.
  2. Создаст резервную копию вашего текущего ~/.zshrc (если есть) и запишет базовый конфиг.
  3. Предложит изменить оболочку на Zsh (если вы ещё не сделали этого).

💡 Совет: Если вы уже установили Zsh и сделали её оболочкой по умолчанию, скрипт просто настроит ~/.zshrc.

Шаг 4: Настройте тему оформления

Тема определяет внешний вид приглашения командной строки (prompt). Популярные варианты:

  • robbyrussell (по умолчанию) — минималистичная, показывает Git-статус.
  • agnoster — информативная, требует шрифт с поддержкой Powerline.
  • avit — компактная, показывает время и путь.

Откройте ~/.zshshrc в редакторе (например, nano ~/.zshrc) и найдите строку:

ZSH_THEME="robbyrussell"

Измените значение на желаемую тему, например:

ZSH_THEME="agnoster"

Список всех встроенных тем: ~/.oh-my-zsh/themes/.

Установка шрифта для тем Powerline (если нужно)

Темы вроде agnoster используют специальные символы. Установите шрифт Nerd Fonts:

Ubuntu/Debian:

sudo apt install fonts-powerline -y

Fedora:

sudo dnf install powerline-fonts -y

Затем настройте терминал (например, GNOME Terminal) на использование шрифта DejaVu Sans Mono for Powerline или FiraCode Nerd Font.

Шаг 5: Добавьте плагины для расширения функциональности

Плагины Oh My Zsh добавляют команды и автодополнение для конкретных технологий. В том же файле ~/.zshrc найдите массив plugins и добавьте нужные:

plugins=(
  git
  docker
  kubectl
  python
  pip
  sudo
  z
  history-substring-search
  syntax-highlighting
)

Описание ключевых плагинов:

  • git — сокращения для git (gco = git checkout, gcm = git commit).
  • docker / kubectl — автодополнение для контейнеров и Kubernetes.
  • z — быстрая навигация по часто используемым директориям (z <папка>).
  • history-substring-search — поиск по истории команд (введите часть команды и нажмите /).
  • syntax-highlighting — подсветка синтаксиса при вводе (ошибки красным, корректные — зелёным).

⚠️ Важно: Плагин syntax-highlighting должен быть последним в списке. Oh My Zsh автоматически подключает его, если он установлен.

Шаг 6: Примените изменения и проверьте работу

После редактирования ~/.zshrc выполните:

source ~/.zshrc

Или перезапустите терминал.

Что проверить:

  1. Тема: Приглашение командной строки изменилось (показывает ветку Git, если вы в репозитории).
  2. Автодополнение: Введите docker и нажмите Tab — должны появиться подкоманды.
  3. Плагины:
    • z Documents — перейдёт в папку Documents.
    • git status → можно сократить до gst.
  4. Подсветка синтаксиса: Введите ls /nonexistent — путь должен подсветиться красным.

Проверка результата

Успешная настройка подтверждается:

  • Приглашение командной строки отображает информацию (ветка Git, путь, время — в зависимости от темы).
  • Автодополнение работает без задержек.
  • Плагины добавляют сокращения и команды.
  • Нет ошибок при запуске (сообщения вида zsh: command not found: ...).

Дополнительно проверьте:

echo $ZSH_VERSION  # Должна показать версию Zsh
echo $ZSH          # Должна показать путь к Oh My Zsh (~/.oh-my-zsh)

Возможные проблемы

Ошибка: zsh: command not found: ... после установки плагина

Причина: Плагин не загружен или не установлен. Решение:

  1. Убедитесь, что имя плагина написано верно в ~/.zshrc.
  2. Проверьте, что плагин существует в ~/.oh-my-zsh/plugins/.
  3. Перезагрузите конфиг: source ~/.zshrc.

Тема отображается некорректно (кракозябры, пропущенные символы)

Причина: Шрифт не поддерживает Powerline-символы. Решение: Установите Nerd Font или Powerline Fonts и настройте терминал на его использование.

Zsh не стала оболочкой по умолчанию после chsh

Причина: Не перезашли в терминал или путь к Zsh неверный. Решение:

  1. Проверьте путь: which zsh (обычно /usr/bin/zsh).
  2. Перезайдите в учётную запись или перезагрузитесь.
  3. Проверьте: echo $SHELL.

Медленная загрузка Zsh (задержка >1 сек)

Причина: Слишком много плагинов или тяжёлая тема. Решение:

  1. Упростите тему (выберите robbyrussell).
  2. Уменьшите список плагинов.
  3. Отключите тяжёлые плагины (например, history-substring-search может замедлять поиск).

Конфликт с другими менеджерами конфигураций (например, Prezto)

Причина: Два фреймворка управляют ~/.zshrc. Решение: Удалите один из них. Для Oh My Zsh: удалите папку ~/.oh-my-zsh и создайте чистый ~/.zshrc вручную.

rm -rf ~/.oh-my-zsh
echo "export ZSH=\"\$HOME/.oh-my-zsh\"" > ~/.zshrc  # Пример минимального конфига

Часто задаваемые вопросы

Zsh и Bash — в чём разница и стоит ли переходить?
Что делать, если после установки Zsh не становится оболочкой по умолчанию?
Можно ли использовать Zsh без Oh My Zsh?
Как вернуться к Bash, если Zsh не нравится?

Полезное

Проверьте текущую оболочку и установите Zsh
Сделайте Zsh оболочкой по умолчанию
Установите Oh My Zsh (опционально)
Настройте тему и плагины
Примените изменения и проверьте работу