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

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

Как установить пакет на Debian без интернета (без использования apt-get)? Я хочу загрузить его на USB и установить с USB с помощью терминала.

решение1

Проверьтеapt-офлайнПакет. Он выглядит так:

  1. Создайте файл подписи на отключенном компьютере Debian дома:

    apt-offline set /tmp/apt-offline.sig
    
  2. Загрузить данные на основе сгенерированного ранее файла подписи

    apt-offline get C:\apt-offline.sig --threads 5
    
  3. Вернувшись на домашнюю машину Debian, вы передаете данные со съемного носителя в apt-offline:

    apt-offline install /media/USB/apt-offline.zip
    

решение2

УСТАНОВИТЬ ПАКЕТ

Путь для USB находится в /media, поэтому вам придется искать там, какой путь. Как только вы его получите, вы можете выполнить:

sudo dpkg -i /path/to/your/usb/device/DEB_PACKAGE

Или просто так, если вы находитесь в той же папке USB, что и пакет:

sudo dpkg -i DEB_PACKAGE

Например, если файл пакета называется a_debian_package_2.0.deb, то вам следует сделать

sudo dpkg -i a_debian_package_2.0.deb

Если dpkg сообщает об ошибке из-за проблем с зависимостями, вам придется установить эти зависимости таким же образом, как и ваш пакет.

Подробнее об этом можно прочитать наэтот ответ AskUbuntu.

решение3

Он не очень хорошо настроен из-за отсутствия интернета; в некоторых BSD можно выполнить команду «make fetchlist», которая выдаст список файлов (и URL-адресов?), которые необходимо загрузить для установки чего-либо.

Aptitude тоже может это сделать, но в Synaptic вы можете выбрать то, что хотите установить, и он также автоматически включит необходимые зависимости. Затем выберите Файл -> Сгенерировать скрипт загрузки пакета, и он выведет скрипт, который вызывает wget для каждого файла. Соответствующий пункт — Файл -> Добавить загруженные пакеты, который запрашивает каталог, где находятся файлы, а затем устанавливает их правильно, как если бы вы были в сети.

Вам нужно как-то получить списки файлов (apt-get update) и установить Synaptic, после этого все довольно просто. Вы создаете свои скрипты загрузки в Synaptic и помещаете их на что-то вроде USB-флешки, переносите ее на онлайн-машину (нужен wget) и выполняете загрузки, затем возвращаете USB-флешку и позволяете Synaptic выполнять установки. Вы можете сделать dpkg -i, но это грязно, потому что он не установит правильный порядок. Вы можете исправить это с помощью apt-get -f install (ничего).

Если вам действительно нужно, вы можете выполнить начальную загрузку вручную, перейдя куда-нибудь вродеhttps://packages.debian.org/stable/и скачивание вручную, но это больно знать, что получить. Synaptic и aptitude — это просто пакеты, как и любые другие, но Synaptic в частности требует, чтобы вы запустили xorg.

Следует помнить, что это не похоже на Windows. Если у вас есть подключенная машина, похожая на ту, на которую вы хотите установить дома, вы можете подсоединить к ней жесткий диск (или карту SD), установить на нее Debian, принести домой, подключить, и она загрузится. Видеоустройства, мыши, клавиатуры и т. д. могут быть разными, но они должны загружаться в командную строку, и вы можете работать оттуда. Они должны иметь одинаковую архитектуру (x86 против arm и т. д.).

решение4

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

Вы можете установить файлы .deb напрямую, используя dpkg. Например dpkg -i packagefoo.deb, установит этот пакет. Однако dpkg не будет сканировать его зависимости (так как нет репозитория, по которому можно пройти). Поэтому вам нужно будет установить их таким же образом.

В качестве альтернативы существуют методы зеркалирования репозиториев Debian (а также других) на локальном сервере в вашей сети, а затем использования этого сервера в качестве вашего репозитория, на который ссылаются конечные машины. Это также может быть полезно в других отношениях, поскольку позволяет вам создавать репозитории программного обеспечения, которое вы обычно используете, но которое может отсутствовать в общих репозиториях, и подготавливать обновления для развертывания (через репозитории тестирования и производства).

Кэширующий прокси-сервер Squid — один из самых простых способов сделать это.

Связанный контент