Загрузка пакета с зависимостями

Материал из Linux Wiki
Перейти к навигацииПерейти к поиску

Создание локального репозитория "чужими руками".

Итак, к примеру мы знаем репозиторий, в котором есть интересующий нас пакет, но по причине большого объема самого пакета, и его зависимостей мы не в состоянии устанавливать его напрямую из сети. Репозиторий должен быть указан в /etc/apt/sources.list

Для определения прямых ссылок на пакеты, недостающие нашей системе для установки желанного пакета, и записи их в текстовый файл:

apt-get --print-uris -y install pac.dev | grep http | cut -d\' -f 2 > list.txt

(где pac.dev - и есть интересующий нас пакет, list.txt - конечный файл со списком ссылок)

Для загрузки пакетов (используем Wget, который присутствует в большинстве дистрибутивов GNU/Linux а так же доступен и для других популярных ОС):

wget -i list.txt

В итоге получаем набор пакетов *.deb, которые можно установить командой

dpkg -i *.deb

или включить в APT как локальный репозиторий, для чего:

  1. Cоздаем индексные файлы:
    dpkg-scanpackages debs FILE | gzip > debs/Packages.gz
    

    (в директории с пакетами *.deb)
  2. Включаем полученный набор в /etc/apt/sources.list, добавив в него строку:
    deb file:/home/krewedko debs/
    

    (где "/home/krewedko" путь к дирректории с пакетами, а "debs/" - название этой дирректории)
  3. Обновляем список пакетов в APT:
    apt-get update
    

после этого интересующий пакет можно установить стандартными средствами.