Остаточные файлы telegram-cli после обычного удаления пакета продолжают занимать место и хранить сессионные ключи авторизации — именно поэтому простое удаление бинарника не завершает задачу. Клиент командной строки Telegram при первом запуске создаёт скрытый каталог с конфигурацией и данными сессии в домашней папке пользователя, и эти файлы не удаляются автоматически ни одним пакетным менеджером.
Ниже разобраны все способы деинсталляции: через пакетный менеджер, после сборки из исходников, а также полная зачистка остатков. Отдельно рассмотрены нюансы для Ubuntu/Debian, macOS и случаев, когда клиент ставился вручную через git clone и make install.
Определяем, как был установлен Telegram CLI
Перед удалением нужно понять, каким способом клиент попал в систему — от этого зависит правильная команда деинсталляции. Самый быстрый способ — проверить путь к исполняемому файлу:
which telegram-cli
Если команда вернула путь вида /usr/bin/telegram-cli, скорее всего, пакет ставился через apt или собран с установкой в системные каталоги. Путь /usr/local/bin/telegram-cli — типичный признак ручной сборки из исходников. Отсутствие ответа означает, что бинарник либо уже удалён, либо лежит в нестандартном месте.
Дополнительно проверьте, видит ли пакет пакетный менеджер:
dpkg -l | grep telegram
snap list | grep telegram
Удаление через пакетный менеджер (Ubuntu, Debian)
Если клиент устанавливался из репозитория или из .deb-пакета, используйте стандартную деинсталляцию. Ключ --purge важен: он удаляет не только программу, но и системные конфигурационные файлы пакета.
sudo apt remove --purge telegram-cli
sudo apt autoremove
Вторая команда убирает зависимости, которые ставились автоматически вместе с клиентом и больше не нужны другим программам. Это безопасная операция: apt удаляет только пакеты, не используемые ничем другим.
⚠️ Внимание: если telegram-cli был собран из исходников, команда apt remove не найдёт его и завершится ошибкой «пакет не установлен». Это нормально — переходите к разделу про ручное удаление.
☑️ Удаление telegram-cli через apt
Удаление после сборки из исходников
Классический telegram-cli (проект vysheng/tg) чаще всего ставился именно сборкой: пользователь клонировал репозиторий и выполнял make install. В этом случае пакетный менеджер о программе ничего не знает, и удалять нужно вручную.
Если каталог с исходниками сохранился, зайдите в него и попробуйте штатное удаление:
cd ~/tg
sudo make uninstall
Цель uninstall есть не во всех версиях Makefile, поэтому при ошибке удалите файлы вручную. Стандартная установка кладёт два файла:
- 🗑️ бинарник
/usr/local/bin/telegram-cli - 📁 каталог с ключами сервера
/usr/local/etc/telegram-cli/ - 📄 иногда — man-страницу в
/usr/local/share/man/
Удаление выполняется одной командой:
sudo rm /usr/local/bin/telegram-cli
sudo rm -rf /usr/local/etc/telegram-cli
Очистка пользовательских данных и сессий
Это самый важный этап, который почти все пропускают. Клиент хранит сессионные ключи авторизации, кэш и настройки в скрытом каталоге домашней папки. Пока эти файлы существуют, с технической точки зрения сессия остаётся «живой» на диске.
rm -rf ~/.telegram-cli
Если клиент запускался от разных пользователей системы или через sudo, проверьте также каталог /root/.telegram-cli — сессия могла быть создана и там. Удаление каталога необратимо: вместе с ключами пропадёт локальная история и настройки автодополнения, если они сохранялись.
⚠️ Внимание: удаление локальных файлов не отзывает сессию на серверах Telegram. Чтобы завершить авторизацию окончательно, откройте Telegram на телефоне, перейдите в настройки устройств (активные сеансы) и завершите сеанс командной строки вручную.
Сравнение способов удаления
| Способ установки | Команда удаления | Что остаётся вручную |
|---|---|---|
| apt / .deb-пакет | apt remove --purge | Каталог ~/.telegram-cli |
| Сборка из исходников | make uninstall или rm | Бинарник, ключи, конфиги |
| Snap-пакет | snap remove | Данные в ~/snap |
| Запуск без установки | Удалить файл бинарника | Каталог ~/.telegram-cli |
Для Snap-версии команда sudo snap remove telegram-cli удаляет и сам пакет, и его изолированные данные, однако старые ревизии могут оставаться в кэше snapd — их чистка выполняется отдельно при необходимости.
Где ещё могут прятаться следы telegram-cli
Проверьте crontab (crontab -l) — иногда CLI-клиент использовался в скриптах автоматической отправки сообщений. Также поищите упоминания в systemd-юнитах: systemctl list-unit-files | grep telegram. Найденные задания и сервисы нужно отключить и удалить, иначе система продолжит попытки запуска несуществующей программы.
Проверка полноты удаления
После всех шагов убедитесь, что в системе не осталось следов. Выполните поиск по типичным расположениям:
find / -name "telegram-cli" 2>/dev/null
Команда может выполняться долго, так как сканирует всю файловую систему. Если поиск ничего не вернул — удаление завершено. Остались записи в истории shell? Это безобидно, но при желании очистите историю команд в файле ~/.bash_history.
Отдельно проверьте, что терминал больше не находит команду: введите telegram-cli — система должна ответить «команда не найдена». Если команда всё ещё запускается, значит, бинарник лежит в каталоге из переменной PATH, который вы не проверили.
Частые вопросы
Удалится ли аккаунт Telegram вместе с telegram-cli?
Нет. Удаление клиента убирает только программу и локальные данные. Аккаунт остаётся активным и доступным с других устройств. Для удаления аккаунта используется отдельная процедура деактивации через официальный сайт Telegram.
Команда apt remove пишет, что пакет не найден. Что делать?
Значит, клиент был установлен не через пакетный менеджер — скорее всего, собран из исходников. Проверьте путь командой which telegram-cli и удалите файлы вручную, как описано в соответствующем разделе.
Нужно ли отзывать сессию после удаления?
Рекомендуется. Локальное удаление каталога ~/.telegram-cli уничтожает ключи на вашем диске, но запись о сеансе остаётся на серверах. Завершите сеанс через настройки устройств в мобильном приложении Telegram.
Остались скрипты, которые вызывают telegram-cli. Они сломаются?
Да, скрипты и cron-задания, обращающиеся к клиенту, начнут возвращать ошибку «команда не найдена». Перед удалением найдите такие вызовы через grep -r telegram-cli ~/scripts и отключите или перепишите их.
Как удалить telegram-cli на macOS?
Если клиент ставился через Homebrew, выполните brew uninstall telegram-cli. При ручной сборке удалите бинарник из /usr/local/bin/ и каталог ~/.telegram-cli — логика та же, что в Linux.