Zellij Установка
Zellij терминальный мультиплексор
Zellij — это рабочее пространство, ориентированное на разработчиков IT технологий. Zellij подходит, как на новичков, так и на опытных пользователей — позволяя глубоко настраивать, автоматизировать персональную автоматизацию через макеты, настоящую мультиплеерную коллаборацию, уникальные UX-функции, такие как плавающие и наложенные панели, а также систему плагинов, позволяющую создавать плагины на любом языке, компиляционном в WebAssembly.
Установка Zellij
Настройка Zellij через прямую загрузку готового бинарного файла — это лучший и самый чистый способ, так как вам не придется устанавливать в систему лишние пакеты менеджеры вроде Cargo (Rust).
Поскольку Zellij написан на Rust, он поставляется в виде одного скомпилированного файла, который нужно просто скачать, распаковать и перенести в системную папку.
Скачивается файл в папку в которой вы находитесь. Чтобы не потерять, перейдите в папку пользователя.
cd ~
Скачайте Zellij
wget https://github.com/zellij-org/zellij/releases/latest/download/zellij-x86_64-unknown-linux-musl.tar.gz
Распакуйте
tar -xvf zellij-*.tar.gz
Перенесите сам бинарник в системную папку
mv zellij /usr/local/bin/
Сделайте исполняемым
chmod +x /usr/local/bin/zellij

Удалите архив
rm zellij-x86_64-unknown-linux-musl.tar.gz

Установка Zellij Через Rust (Cargo)
Cargo — это официальный менеджер пакетов и система сборки для языка программирования Rust.
Rust устанавливаем через curl (сокращение от Client URL) — это бесплатная и открытая кроссплатформенная утилита командной строки, предназначенная для передачи данных между компьютерами по сети.
Если нет curl, установим в Ubuntu, Debian, Mint, WSL:
sudo apt update && sudo apt install curlУстанавливаем Rust.
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh
- Скрипт спросит, какой тип установки выбрать.
Нажмите 1
1 (Proceed with installation (default)) и Enter.
Активируем Rust вводим а терминале.
source $HOME/.cargo/env
Тестируем Rust и Cargo.
rustc --version cargo --version
Если Cargo нет, устанавливаем.
sudo apt update
sudo apt install cargo
Если в ответ вы увидите что-то вроде cargo 1.x.x, значит, всё готово.
Кстати, если вы ставили Cargo специально для Zellij, после установки не забудьте поставить пакет build-essential, иначе компиляция может выдать ошибку:
sudo apt install build-essentialDo you want to continue? [Y/n]
Жмем Enter
Далее остается установить Zellij Инструкция официальный сайт.
1. Раз у вас теперь есть Cargo, установка Zellij выполняется одной командой. Она скачает исходный код, скомпилирует его под вашу систему и создаст исполняемый файл.
Это долгий процесс и может зависнуть. Рекомендую перейти сразу к варианту 2.
cargo install --locked zellijЕсли зависло и дальше не идет
Building [=> ] 123/510: openssl-sys(build)
Прервите текущую сборку (нажмите Ctrl + C) и выполните команду:
И введите
sudo apt update && sudo apt install -y pkg-config libssl-dev build-essential
И запустите команду установки снова
cargo install --locked zellijЕсли не установилось, переходим к пункту 2.
2. Можно использовать установку cargo-binstall.
cargo-binstall — это инструмент для Rust, который позволяет устанавливать программы (бинарные файлы) мгновенно, не дожидаясь их долгой компиляции.
Установим его.
cargo install cargo-binstall Finished `release` profile [optimized] target(s) in 27m 00s
Installing /root/.cargo/bin/cargo-binstall
Installed package `cargo-binstall v1.17.9` (executable `cargo-binstall`)
Вот так за 27 минут установился карго бинстал
Далее устанавливается Зеледж
cargo binstall zellij
Проверяем версию Зеледж
zellij --versionzellij х.хх.х
Внимание
При запуске Zellij в терминале Alacritty могут возникнут проблему с неработающими горячими кнопками (особенно сочетаниями клавиш), с некорректным распознаванием клавиш Alt, Shift и их комбинаций.
- Отключите NumLock. Это известная проблема: если включен NumLock, Zellij может перестать распознавать сочетания с Ctrl или Alt (особенно при использовании протокола Kitty).
- Переключите клавиатуру на английскую раскладку.
Если не работает, а вы настроили в конфиге Алакрити вход сразу с подключением к Zellij, и работать с терминалом возможности нет. В таком случае зайдите с любого другого терминала на сервер, например через Windows PowerShell (администратор). Если вы работаете в WSL, введите команду
bash
Далее чтобы перейди в каталог root, команду.
cd ~
Отключение протокола клавиатуры Kitty в Zellij.
Откройте файл конфигурации Zellij (обычно /.config/zellij/config.kdl).
nano ~/.config/zellij/config.kdl
Добавьте или раскомментируйте следующую строку
support_kitty_keyboard_protocol false
Найти можно нажва комбинацию Ctrl + w и написав _kitty
Остановите все процессы в Zellij командой
zellij kill-all-sessions
Так же при работе в среде zsh и oh my zsh может возникнуть ошибка.
zsh: command not found: zellij
Эта ошибка означает, что терминальный мультиплексор Zellij не установлен в вашей системе, либо путь к нему не прописан в переменной PATH
Поскольку вы ранее настраивали Alacritty, WSL и Rust-окружение (в коде был закомментирован путь к Cargo:
# export PATH="$HOME/.cargo/bin:$PATH"Заходим
nano ~/.zshrcИ раскомментируем (уберите решетку #) в самой последней строке:
export PATH="$HOME/.cargo/bin:$PATH"
Перезапустите оболочку:
exec zsh
Все готово теперь у вас на сервере есть удобный много оконный мультиплексор zellij.
Чтобы Зеледж был доступен для всех пользователей сервера.
Так как мы устанавливали Зеледж через cargo, он лежит в вашей домашней папке пользователя. Заходи в домашнюю папку пользователя и видим конфиг zellij
cd ~/.cargo/bin
Чтобы сделать его общим, вам обязательно нужно перенести его в /usr/local/bin.
Введем команду переноса.
sudo mv zellij /usr/local/bin/
Проверьте наличие файла командой:
ls -l /usr/local/bin/zellij
Нужно разрешить всем пользователям «чтение» и «выполнение» этого файла:
sudo chmod +rx /usr/local/bin/zellij
Теперь осталось обновить права.
Вы установили файл в /usr/local/bin/ под root. Zellij создал папку в /tmp/ с правами владельца root, и теперь обычному пользователю туда «вход воспрещен» (PermissionDenied).
1. Удалите временные файлы старых сессий, которые блокируют доступ:
sudo rm -rf /tmp/zellij-*
Чтобы не перезаходить на сервер, введите:
source ~/.zshrcЗапускать Zellij под любым пользователем нужно без sudo, просто командой.
Zellij
Если возникает ошибка
Failed to list existing sessions: Err(PermissionDenied) Failed to generate a unique session name, giving up
Zellij хранит данные в /run/user/UID или в /tmp. Если вы запускали его от root, а теперь пытаетесь от обычного пользователя, возникнет конфликт прав.Выполните команду, чтобы создать правильную папку для текущего пользователя:
export ZELLIJ_RUNTIME_DIR=/tmp/zellij-$(whoami)
mkdir -p $ZELLIJ_RUNTIME_DIR
chmod 700 $ZELLIJ_RUNTIME_DIR
Вот что делает каждая строка:
export ZELLIJ_RUNTIME_DIR=/tmp/zellij-$(whoami)
Создает «переменную окружения». Она говорит Zellij: «Не используй стандартную общую папку, используй мою личную папку в /tmp/, названную моим именем пользователя». Это гарантирует, что ваши сессии не перемешаются с сессиями root или других юзеров.
mkdir -p $ZELLIJ_RUNTIME_DIR
Создает эту самую папку на диске (если её еще нет). Флаг -p позволяет создать всю цепочку папок сразу.
chmod 700 $ZELLIJ_RUNTIME_DIR
Устанавливает строгие права доступа. 700 означает: «Только я (владелец) могу читать, писать и заходить в эту папку». Это защита: другие пользователи сервера не смогут «подсмотреть» за вашим терминалом или перехватить вашу сессию через временные файлы.Зачем это было нужно вам? Когда вы запускали Zellij через sudo или после установки root-ом, в системе остались файлы, которыми обычный пользователь не мог управлять. Эти команды создают «чистую песочницу» лично для вас.
Горячие кнопки Zellij
Эти комбинации доступны всегда в латинской раскладке клавиатуры, кроме режима Locked
Alt + n — Создать новую панель (pane)
Alt + f — Включить/выключить плавающие панели
Alt + h, j, k, l или стрелки — Переместить фокус (влево / вниз / вверх / вправо)
Alt + [, ] — Переключить раскладку панелей ( layouts)
Alt + -, + Увеличить или уменьшить окно панели
Esc или Enter — Вернуться в стандартный (Normal)
Наберите в сломанной панели команду exit и нажмите Enter. Панель закроется сама.
Ctrl + q — Выйти из Zellij
Команды внутри режимов.
Режим Pane (Ctrl + p) — Панели
n — Создать новую панель
d — Разделить экран по горизонтали (новая панель снизу)
r — Разделить экран по вертикали (новая панель справа)
x — Закрыть текущую панель
f — Развернуть панель на весь экран (Fullscreen)
w — Сделать панель плавающей / вернуть на место
c — Переименовать панель
Переключение режимов (Главные команды)
Ctrl + p — Режим Pane (управление панелями)
Ctrl + t — Режим Tab (управление вкладками)
Ctrl + n — Режим Resize (изменение размеров)
Ctrl + h — Режим Move (перемещение панелей)
Ctrl + s — Режим Scroll (поиск и прокрутка истории)
Ctrl + o — Режим Session (управление сессиями)
Ctrl + g — Режим Locked (блокирует горячие клавиши Zellij, чтобы они не конфликтовали с Vim/Emacs)
Режим Tab (Ctrl + t) — Вкладки
n — Создать новую вкладку
x — Закрыть текущую вкладку
h, l или Стрелки — Переключиться на предыдущую, следующую вкладку
1, 9 — Перейти на вкладку с конкретным номером
r — Переименовать вкладку
s — Синхронизировать ввод (текст будет печататься одновременно во всех панелях вкладки)
Режим Resize (Ctrl + n) — Изменение размеров
h, j, k, l или Стрелки — Сжать или растянуть панель в соответствующую сторону
+, — Пропорционально увеличить или уменьшить панель
Режим Scroll (Ctrl + s) — Прокрутка и Поиск
j, k или Стрелки — Прокрутка вверх, вниз
PageUp, PageDown — Прокрутка на страницу
s — Открыть строку поиска по истории терминала
e — Открыть весь буфер вывода в текстовом редакторе (например, в Vim) для удобного копирования
Режим Session (Ctrl + o) — Сессии
d — Отключиться от сессии (Detach), оставив её работать в фоне
w — Открыть Session Manager (удобный графический менеджер для переключения между сессиями)
Если вы хотите полностью перенастроить под себя кнопки (например, заменить Ctrl на Alt, чтобы не ломать сочетания в Vim), это можно сделать в файле ~/.config/zellij/config.kdl
Ctrl + t — управление табами (вкладками).
Ctrl + n — управление панелями (окнами внутри одного экрана).
Ctrl + s — режим скроллинга и поиска по тексту в терминале.
Ctrl + o, затем d — выйти из Zellij, оставив всё работать (Detach).
