Как быстро создать локальный репозиторий apt для случайных пакетов с использованием дистрибутива linux на базе Debian?

В некоторых ситуациях требуется вручную установить локальный пакет, используя dpkg -i <packagename> . Иногда может быть полезно использовать функции apt с этим пакетом, поэтому вопрос:

Как быстро создать локальный репозиторий для случайных пакетов с использованием дистрибутива linux на базе Debian – например, Xubuntu 13.04 / Ubuntu?

2 Solutions collect form web for “Как быстро создать локальный репозиторий apt для случайных пакетов с использованием дистрибутива linux на базе Debian?”

Это следует отличать от ситуации, когда вы пытаетесь реплицировать полное дерево пакетов из официального репозитория и приоритета источников точной настройки . Случайные пакеты означают виртуальные пакеты, пакеты, которые компилируются локально или копируются по частям для целей тестирования. Вот простая настройка, основанная на устаревшей документации .

Сначала создайте каталог для размещения пакетов:

 mkdir <packagedir> 

Затем переместите туда файлы пакета .deb. Выполните эту команду из каталога выше того, который мы только что создали (убедитесь, что разрешения разрешают это!):

 dpkg-scanpackages packagedir | gzip > packagedir/Packages.gz 

Теперь создайте файл с расширением .list в /etc/apt/sources.list.d/ с содержимым:

 deb file:///path_to_dir_above_packagedir packagedir/ 

и обновить базу данных apt:

 apt-get update 

На этом этапе пакеты в нашем локальном репозитории могут быть установлены как любой другой пакет, используя apt-get install <packagename> . Когда новые пакеты добавляются в локальный репозиторий, предписанная команда dpkg-scanpackages должна быть снова выпущена для обновления файла Packages.gz, и apt должен быть обновлен до того, как новые пакеты станут доступными. Надеюсь, это может быть полезно для целей тестирования .

Если вы хотите создать репо с полной структурой, необходимой для таких инструментов, как debootstrap, самый простой способ, который я нашел:

  1. Создайте каталог репозитория.

     # mkdir -p /opt/debian 
  2. Создайте подкаталог conf.

     # mkdir /opt/debian/conf 
  3. Создайте файл / opt / debian / conf / distributions с содержимым, подобным этому (настройте в соответствии с используемым дистрибутивом):

     Label: Local APT repository Codename: jessie Architectures: amd64 Components: main Description: Local APT repository for debootstrap 
  4. Импортируйте пакет с reprepro.

     # reprepro -b /opt/debian includedeb jessie /path/to/package.db 
  5. Импортируйте пакет пакетов с оболочкой for-loop, например, все из вашего кеша APT:

     # cd /var/cache/apt/archives # for DEB in *.deb; do reprepro -b /opt/debian includedeb jessie $DEB; done 

Это создаст неподписанный архив. Его можно использовать с debootstrap с опцией -no-check-gpg.

  • Пиннинг Debian - используйте стабильную, но при необходимости установите из теста / нестабильно | Также установите отступы из стабильных, backports, когда они доступны
  • Автоматизация установки гостевых дополнений VirtualBox через командную строку
  • Right Distro для текстовых потребностей
  • dpkg только UNPACKS и не УСТАНОВИТ, почему?
  • Как исправить ошибку apt-get install -f apt-transport-https: 404 Не найдено?
  • Обновление mysql вызвало повреждение пакетов
  • У стабильной версии Debian есть уязвимая версия wpa_supplicant?
  • Должен ли я использовать «apt-get remove» или «apt-get purge»?
  • Поиск и удаление пакетов, обеспечивающих рабочие среды настольных компьютеров
  • Где я могу найти, какие пакеты находятся на каждом компакт-диске Debian Squeeze?
  • Как переустановить конфигурационный файл
  • Linux и Unix - лучшая ОС в мире.