Установить пакет deb со всеми зависимостями в одну папку?

Мне нужно установить несколько файлов deb одного и того же программного обеспечения из кэша apt в другой установке Ubuntu.

Например, у меня есть все deb-файлы vlc в одной папке (/ var / cache / apt / archives). Мне нужно установить VLC с удовлетворением всех зависимостей. Я не могу установить его, используя dpkg -i vlc* из-за зависимостей.

Есть ли решение для этого. В моем кеше много программных пакетов, которые я не хочу загружать снова. Пожалуйста, помогите ..

5
задан 25 November 2012 в 10:24

2 ответа

Действительно, у вас есть много решений:

  • Скопируйте все файлы .deb из /var/cache/apt/archives на новый компьютер в каталог /var/cache/apt/archives или просто скопируйте только .deb зависимостей vlc вместо того чтобы копировать все эти дэбы. Вы можете узнать зависимости vlc по команде apt-cache rdepends vlc. Теперь, когда у вас есть эти дабы в /var/cache/apt/archives второй системы, вы можете запустить sudo apt-get update, затем sudo apt-get install vlc.

НО это работает, только если две системы имеют одинаковую версию ОС и одинаковую версию пакета с одинаковыми обновлениями. подробнее [ 1117]

  • Другое решение, которое лучше , - это создать свой собственный репозиторий, чтобы вы могли устанавливать любое приложение, которое хотите, не опасаясь адских зависимостей при автономной установке. посмотрите: https://askubuntu.com/a/648969/150504
0
ответ дан 25 November 2012 в 10:24

Ответ на Ваш вопрос:

скопируйте ВСЕ debs от/var/cache/apt/archives до/var/cache/apt/archives новой машины, затем просто sudo apt-get update ; sudo apt-get install vlc как нормальное - это возьмет .debs в архиве и установке без загрузки.

Идя шаг вперед: установите apt-cacher-ng вместо этого

На первой машине сделать sudo apt-get install apt-cacher-ng. Затем сделайте sudo nano /etc/apt/apt.conf и вставьте строку Acquire::http::Proxy "http://127.0.0.1:3142/"; - это говорит машине использовать apt-cacher-ng экземпляр на себе, когда это обновляет. Теперь, импортируйте свой существующий кэшируемый debs - sudo cp -a /var/cache/apt/archives/* /var/cache/apt-cacher-ng/_import/, затем откройте свой браузер для http://localhost:3142/acng-report.html, прокрутите вниз, и щелчок Start Import. После того как это сделано, сделайте быстрое sudo apt-get update - и, ух! Вы теперь добрались apt-cacher-ng работая на Вашей хост-машине, и каждый раз, когда Ваша хост-машина загружает обновления, она будет кэшировать их и для него и для любой другой машины в Вашей сети.

Наконец, на Вашей второй машине, sudo nano /etc/apt/apt.conf и вставьте строку Acquire::http::Proxy "http://first.machine.ip.address:3142/"; где first.machine.ip.address является IP-адресом машины, Вы установили apt-cacher-ng на в абзаце выше - теперь при загрузке обновлений на любой машине она обновит apt-cacher-ng на первой машине, и Вы не должны будете загружать их снова. Очень, очень гладкий и легкий, после того как это настраивается.

2
ответ дан 25 November 2012 в 10:24

Другие вопросы по тегам:

Похожие вопросы: