Гид по технологиям

Установка программ из tar.gz и tar.bz2 в Ubuntu

7 min read Ubuntu Обновлено 31 Mar 2026
Установка программ из tar.gz в Ubuntu
Установка программ из tar.gz в Ubuntu

В отличие от Windows, установка программ в Linux может быть немного сложнее. Если нужное ПО не находится в виде готового пакета или в репозитории и его нельзя установить одной строкой, вероятно придётся компилировать и устанавливать из архива .tar.gz или .tar.bz2.

Это может показаться пугающим, но если следовать инструкции шаг за шагом — всё пройдёт гладко. Ниже приведён проверенный метод: извлечение исходников, настройка, сборка и установка через checkinstall, чтобы пакет появился в менеджере пакетов и его можно было удалить как обычный пакет.

Что такое tar.gz / tar.bz2

Файлы с расширениями .tar.gz и .tar.bz2 — это сжатые tar-архивы (несжатый архив имеет расширение .tar), в которых обычно содержится исходный код программы. Чтобы Ubuntu могла выполнить программу, исходный код нужно сконфигурировать, скомпилировать и корректно установить.

Формат tar был стандартизирован в 1988 и затем в 2001 году и до сих пор широко используется для распространения ПО на Linux и Windows. Изначально tar предназначался для резервного копирования на ленточные устройства — но нам это сейчас не нужно.

Если вы ранее не пользовались командной строкой — не волнуйтесь: основные команды просты и последовательны.

Подготовка системы

Установите пакеты, необходимые для сборки: build-essential для компиляции и checkinstall чтобы создать локальный пакет (.deb) и добавить его в менеджер пакетов для удобного удаления:

sudo apt-get install build-essential checkinstall

Иконка терминала с командой установки пакетов

Дайте процессу завершиться, затем по желанию установите системы контроля версий — это полезно при работе с исходниками:

sudo apt-get install subversion git-core mercurial

Создайте (или используйте) общую директорию для сборки пакетов. Она может быть где угодно, но официальная рекомендация — /usr/local/src:

sudo chown $USER /usr/local/src
sudo chmod u+rwx /usr/local/src

Установите apt-file — инструмент для поиска файлов в пакетах (поможет разрешать зависимости):

sudo apt-get install apt-file

Интерфейс apt-file в терминале

Возможно потребуется обновить базу apt-file сразу после установки:

sudo apt-file update

После подготовки вы будете готовы обрабатывать большинство tarball’ов.

Извлечение и конфигурация

Предположим, вы уже скачали архив myprogram.tar.gz. Переместите его в папку для сборки (/usr/local/src) через проводник или из терминала. Затем откройте терминал и перейдите в папку сборки:

cd /usr/local/src

Распакуйте архив. Для .tar.gz:

tar -xzvf .tar.gz

Для .tar.bz2:

tar -xjvf .tar.bz2

После распаковки найдите папку с исходниками — обычно её имя совпадает с именем архива. Прежде чем продолжать, обязательно откройте в этой папке файлы README или INSTALL: в них часто описаны специфические требования и дополнительные опции установки. Это может сэкономить много времени.

Перейдите в директорию с исходниками:

cd /usr/local/src/

Замените на имя созданной папки. Затем запустите скрипт конфигурации:

./configure

Если у пакета нет файла configure, пропустите этот шаг и перейдите к разделу «Сборка и установка», но сначала проверьте README/INSTALL.

Если конфигурация выдаёт ошибку, связанную с autoconf, установите его и повторите:

sudo apt-get install autoconf
./configure

Команда ./configure проверяет, установлены ли необходимые системные библиотеки и заголовочные файлы. При отсутствии зависимостей в выводе будет строка наподобие:

configure: error: Library requirements ... not met

Определите, какого файла не хватает (обычно это имя .so или .h) и найдите пакет, который его содержит с помощью apt-file:

apt-file search .

apt-file вернёт пакет, включающий нужный файл. Установите его:

sudo apt-get install 

Повторите ./configure после установки зависимостей. Если всё прошло удачно, вы увидите:

config.status: creating Makefile

Поздравляем — вы почти у цели.

Сборка и установка

В той же сессии терминала выполните сборку:

make

Сборка может занять от нескольких секунд до десятков минут в зависимости от размера проекта и мощности компьютера.

После успешного make используйте checkinstall вместо привычного sudo make install. Checkinstall создаст .deb-пакет и зарегистрирует его в системе, что позволит удалить программу стандартным способом:

sudo checkinstall

Следуйте подсказкам: укажите краткое описание пакета, номер версии и т.д. На этапе, когда будет предложено подтвердить создание пакета, нажмите Enter.

Окно checkinstall с запросом описания пакета

Если всё прошло успешно, вы увидите сообщение Installation Successful и пакет появится в списке установленных:

/usr/local/bin

Теперь программу можно запускать как обычно. При необходимости её легко удалить командой:

sudo dpkg -r 

Типичные ошибки и как их решать

  • Ошибка при ./configure: используйте apt-file для поиска отсутствующих файлов и установите соответствующие -dev-пакеты. Частые суффиксы: lib*-dev.
  • Ошибка компоновки (linker error): убедитесь, что установлены библиотеки времени выполнения и dev-пакеты.
  • Отсутствие прав: убедитесь, что вы владеете /usr/local/src или используете sudo только там, где требуется.
  • Нет скрипта configure: проверьте инструкции в README, возможно проект использует CMake (cmake .), Meson или иной сборщик.

Когда этот метод не сработает

  • Проекты, поставляемые в формате готового бинарного пакета для специфичных дистрибутивов (например .rpm) могут требовать конвертации или другого подхода.
  • Закрытые/проприетарные бинарники без исходников нельзя собрать — их нужно ставить как готовые бинарные пакеты или в контейнер.
  • Программы с комплексными зависимостями к специфичным версиям библиотек лучше запускать в контейнере (Docker) или использовать Flatpak/Snap.

Альтернативные подходы

  • Ищите готовые пакеты в репозиториях Ubuntu: sudo apt install .
  • Используйте Snap или Flatpak для изоляции и простоты установки.
  • Создайте полноценный .deb с dh_make и dpkg-buildpackage для более точного контроля и републикации пакета.
  • Используйте контейнеры (Docker) для программ с конфликтующими зависимостями.

Мини-методология — быстрый чек-лист

  1. Подготовка: install build-essential, checkinstall, apt-file.
  2. Переместите архив в /usr/local/src и распакуйте.
  3. Прочитайте README/INSTALL.
  4. ./configure (или cmake / meson и т.д.).
  5. make
  6. sudo checkinstall (завершающая упаковка в .deb)
  7. Тест запуска и удаление через dpkg при необходимости.

Чек-лист по ролям

  • Для пользователя (локального): иметь доступ к /usr/local/src, уметь запускать команды, сохранять копию архива.
  • Для разработчика: поддерживать инструкции INSTALL/README, указывать зависимости, поддерживать конфигурацию для сборки.
  • Для администратора: проверять безопасность и источники — доверять только проверенным архивам, контролировать версии библиотек.

Критерии приёмки

  • Программа запускается корректно в целевой системе.
  • Пакет отображается в менеджере пакетов (dpkg -l | grep ).
  • Установка и удаление проходят без оставления конфликтующих файлов.
  • Все необходимые зависимости установлены и не ломают другие приложения.

Шпаргалка команд

# Подготовка
sudo apt-get install build-essential checkinstall apt-file
sudo apt-get install subversion git-core mercurial
sudo chown $USER /usr/local/src
sudo chmod u+rwx /usr/local/src
sudo apt-file update

# Распаковка
cd /usr/local/src
tar -xzvf example.tar.gz    # для .tar.gz
tar -xjvf example.tar.bz2   # для .tar.bz2

# Сборка и установка
cd example-folder
./configure
make
sudo checkinstall

# Удаление
sudo dpkg -r 

Меры безопасности и приватность

  • Загружайте tarball только с официальных сайтов или доверенных зеркал. Проверяйте подписи и контрольные суммы (sha256sum).
  • Перед запуском ./configure и make просмотрите скрипты (особенно install-скрипты) на наличие неподписанных вызовов sudo или сетевых операций.
  • По возможности запускайте сборку под обычным пользователем, а не под root; используйте sudo только для установки и изменения системных директорий.

Совместимость и миграция

  • Учтите, что некоторые старые проекты требуют устаревших версий библиотек; в таких случаях рассмотрите контейнеризацию или создание chroot окружения.
  • Если вы администрируете несколько машин, упаковка в .deb с помощью checkinstall или dpkg-buildpackage упрощает развертывание.

Important: checkinstall упрощает жизнь, но он не всегда создаёт полностью корректный .deb (например, в сложных проектах лучше использовать Debian packaging tools). Используйте checkinstall для локальных и простых случаев; для публичных репозиториев формируйте полноценные пакеты.

Быстрые советы и эвристики

  • Всегда читайте README/INSTALL перед сборкой.
  • Ищите пакеты с суффиксом -dev для заголовочных файлов, которые нужны при компиляции.
  • apt-file — ваш друг при поиске отсутствующих файлов.
  • Для сложных систем сборки (CMake, Meson) используйте соответствующие инструкции: cmake . && make или meson build && ninja -C build.

Примеры неудач и обходные пути

  • Если проект требует специфической версии библиотеки, установите эту версию в отдельное префикс-дерево (/opt/my-lib) и укажите пути через CFLAGS/LDFLAGS при конфигурации.
  • Если сборка ломает систему, удалите пакет и восстановите зависимости через apt:
sudo dpkg -r 
sudo apt-get -f install

Заключение

Установка программ из tar.gz/tar.bz2 — это полезный навык, который даёт гибкость при работе с программным обеспечением вне репозиториев. Сборка и упаковка через checkinstall позволяет поддерживать чистоту системы и упрощает удаление. Следуйте списку подготовки, проверяйте зависимости и держите резервные копии важных данных.

Краткое резюме:

  • Подготовьте систему (build-essential, checkinstall, apt-file).
  • Читайте README/INSTALL — это сократит время и ошибки.
  • Конфигурируйте, собирайте, упаковывайте через checkinstall.
  • Для сложных случаев используйте контейнеры или полноценное Debian-пакетирование.

Если вы дошли до конца — молодец. Было ли это проще, чем ожидалось? Напишите комментарий об опыте установки из tarball’ов.

Поделиться: X/Twitter Facebook LinkedIn Telegram
Автор
Редакция

Похожие материалы

Отключить Siri: не зачитывать уведомления
iPhone

Отключить Siri: не зачитывать уведомления

Google Календарь: тайм‑блокинг для продуктивности
Productivity

Google Календарь: тайм‑блокинг для продуктивности

Как перейти на новый компьютер быстро и безопасно
Компьютеры

Как перейти на новый компьютер быстро и безопасно

Nearby sharing в Windows 11 — как включить и использовать
Windows

Nearby sharing в Windows 11 — как включить и использовать

Как убрать уведомления Windows 10
Windows

Как убрать уведомления Windows 10

Content-Aware Fill в Photoshop — как удалить объекты
Фотография

Content-Aware Fill в Photoshop — как удалить объекты