Установить пакет проще через dnf: команда sudo dnf install asciinema выполняется без плясок с бубном. Никаких внешних репозиториев. Всё есть в основной поставке Red OS.
Для запуска не нужны танцы с переменными окружения. Выполнить asciinema rec – достаточно. Всё. Дальше работает stdin/stdout. Что пишете в консоли, то и уходит в json-файл.
Формат записи – не видео! Это текстовые данные. Читаемые. С ними можно работать как с логом. Обрабатывать, архивировать, публиковать. Без гигабайт мусора в mp4.
Файл создаётся локально. По умолчанию – временный. Указать путь руками? Используйте asciinema rec ~/log.json. Хотите паузу в записи? Ctrl-D. Всё записалось. Остановить и сохранить – просто. Без фантазий, без сбоев.
Важно: путь до файла должен быть доступен на запись. Иначе – тишина. Никаких ошибок, никакого предупреждения. Просто пустота.
Red OS не требует дополнительных прав или конфигурации systemd для запуска. Можно писать от обычного пользователя. Без sudo. Но учтите – если пишете работу root, запускайте от root. Всё логично.
Нужно выгрузить на сайт? Команда asciinema upload ~/log.json. Получаете ссылку. Рассылаете кому нужно. Но никто не мешает хранить локально и разворачивать собственный плеер – всё на GitHub, открыто, прозрачно.
Поддерживается кастомизация. Хотите автозапуск команды? Прописывайте её после --command. Пример: asciinema rec --command "htop". Только один процесс. Вложенность не работает. Знайте это заранее.
Помните: нельзя редактировать лог после записи. Защитите файл от изменений. Особенно, если отправляете его в техподдержку или верификацию.
Слабое место – отсутствие встроенной функции обрезки. Хотите вырезать лишнее? Только руками. Или скриптами. Формат JSON помогает, но требует дисциплины. Без неё – каша.
Не используйте на серверах с жёсткой политикой безопасности. Лог может содержать чувствительные команды. Никакой автоцензуры, всё пишется, как есть. Прячьте логи в надёжное место. Шифруйте. Храните в оффлайне, если нужно.
Содержание статьи
Установка asciinema на популярных дистрибутивах Linux
Red OS: никакой магии. Всё в основном репозитории. Выполнить sudo dnf install asciinema. Без зависимостей. Без конфликтов. Проверено на Red OS 7.3, 7.4, 8.0. Работает одинаково. Стабильно.
Debian и производные: стандартный путь – sudo apt install asciinema. Доступно из официальных пакетов с версии 9 (Stretch). Для более старых – бессмысленно, тянуть руками, пересобирать. Лучше обновить дистрибутив. Не тратьте время.
Arch: команда sudo pacman -S asciinema. Актуально всегда. Репозиторий свежий, версии последние. Если pacman ругается – вы забыли обновить ключи. Исправляется: sudo pacman -Sy archlinux-keyring.
Fedora: идентично Red OS. Использовать dnf. Пример: sudo dnf install asciinema. Работает с версии 30+. На старых – нужен EPEL, но это отдельная боль.
Alpine: минимализм в чистом виде. Устанавливается командой apk add asciinema. Только учтите – в musl-среде поведение команд может отличаться. Не ждите совместимости со скриптами, написанными под glibc.
Внимание! На некоторых минималках типа CentOS 7 Lite asciinema отсутствует. Придётся использовать pip: pip3 install --user asciinema. И тут же – зарыт риск. Проблемы с python-окружением, версионные конфликты, мусор в $HOME/.local. Пользуйтесь только как последним вариантом.
Snap и Flatpak: не используйте. Зависимости тянут пол-интернета. Поведение нестабильное. Логирование ведётся в нестандартные каталоги. Слежение за файлами – головная боль.
Важно помнить: запуск из snap-контейнера ограничен правами AppArmor. Не все команды будут логироваться. Особенно sudo и кастомные бинарники в нестандартных путях.
Обновления? Только через пакетный менеджер. Не надо лезть в исходники. Не надо компилировать вручную. Не в 2004 году живём.
Запись терминальной сессии и сохранение в файл
Базовая команда: asciinema rec session.cast. Файл session.cast появится в текущем каталоге. Формат – JSON, строка за строкой. Всё, что было на экране – будет в этом файле. Чисто. Без компрессии. Без артефактов.
Остановить можно клавишей Ctrl+D или комбинацией exit – как завершение обычного шелла. После этого файл записывается окончательно. До этого момента – буфер. Не успел завершить? Потеряешь всё. Нет автосохранения.
Писать в указанный путь: asciinema rec /var/log/capture.cast. Главное – права доступа. Нет прав – нет файла. Никаких ошибок. Просто тишина.
Внимание! Если путь содержит недопустимые символы или несуществующий каталог, команда завершится молча. Проверяйте вручную.
Чтобы не ждать – автозапуск команды: asciinema rec -c "htop" session.cast. Запускается сразу нужная утилита. Лог пишется. Программа завершилась – запись остановлена. Примерно как script, только точнее и легче.
Работа в background: Не делайте этого. Процессы в фоне теряют привязку к псевдотерминалу. Вы получите мусор или пустоту. Используйте screen/tmux, если очень нужно.
Важно помнить: лог – это не видео. Его можно читать, парсить, валидировать. Но нельзя смотреть как mp4. Для визуализации нужен плеер. Статический или встроенный в asciinema.org.
Файл можно отдать в CI, архивировать, версионировать через git. Просто JSON. Не бинарник. Не обманешь.
Проблемы? Часто – переменная TERM. Если лог кривой: export TERM=xterm-256color перед запуском. Или руками в .bashrc. Особенно на серверах с нестандартной конфигурацией терминала.
Публикация и совместное использование записей через asciinema.org
Отправка на сервер: asciinema upload путь_к_файлу.cast. Всё. Никаких ключей. Никакой авторизации. Если авторизация нужна – используйте asciinema auth перед загрузкой. Откроется браузер, выдаст токен. Один раз на сессию.
Хранение без аккаунта – временное. Через месяц – удалят. Хотите навсегда? Зарегистрируйтесь. Больше контроля. Больше записей. Приватность, если надо.
Помните: всё, что отправляется – публично по умолчанию. Если в логе есть пароли, ключи, команды с чувствительными данными – не заливайте. Не проверяют. Не шифруют.
Управление роликами через сайт. Есть интерфейс. Можно удалить, скрыть, переименовать. Всё через личный кабинет. Через CLI – только заливка. Обратного пути нет.
Настройка кастомного проигрывателя – отдельная тема. На сайте доступен HTML-код для встраивания. iframe. Пример: <iframe src="https://asciinema.org/a/qwe123rty456/embed" frameborder="0"></iframe>. Вставляете в вики, на внутренний портал, в учебный курс.
Хостинг на своём сервере? Есть asciinema-player. Ставится через npm. Самый простой способ: npm install -g asciinema-player. Поддерживает локальные логи, не требует подключения к API.
Не работает upload? Прокси? SELinux? DNS? Проверьте первым делом curl https://asciinema.org. Если ошибка – ищите блокировку. На Red OS с SELinux enforcing возможна блокировка curl по умолчанию.
Важно: если используете корпоративную сеть с MITM-сертификатами – загрузка сломается. Добавляйте корневой сертификат в систему, иначе TLS не пройдёт проверку.

