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

Оффлайн-обновление Ubuntu через USB‑репозиторий

4 min read Linux Обновлено 05 Dec 2025
Оффлайн‑обновление Ubuntu через USB
Оффлайн‑обновление Ubuntu через USB

Создание оффлайн репозитория Ubuntu на USB

Кому и когда это нужно

  • Администраторам в изолированных сетях или в средах высокой безопасности.
  • Если несколько компьютеров нельзя подключать к Интернету, но нужно централизованно обновлять пакеты.
  • Когда удобно использовать переносной носитель (USB, NAS) для доставки пакетов.

Важно: для подготовки репозитория требуется одна Ubuntu‑машина с доступом в Интернет.

Что потребуется

  • USB‑накопитель с достаточным свободным местом (репозиторий может занять значительное место).
  • Две машины: одна с Интернетом (онлайн), вторая без — целевая (оффлайн).
  • Права sudo на обеих системах.

Установите apt-offline на онлайн‑машине

Запустите на машине с доступом в Интернет:

sudo apt update
sudo apt install apt-offline

Если вы хотите взять .deb для установки на оффлайн‑ПК вручную, скачайте пакет apt-offline с зеркала Ubuntu (например, через packages.ubuntu.com или команду apt download) и скопируйте .deb на USB.

# пример: скачать .deb и скопировать на USB
apt download apt-offline
cp apt-offline_*.deb /path/to/usb/

Установите apt-offline на оффлайн‑ПК (если нужно)

Скопируйте .deb с USB на оффлайн‑ПК и установите его:

sudo dpkg -i /path/to/usb/apt-offline_*.deb
sudo apt-get -f install   # для разрешения зависимостей при необходимости

Создайте сигнатуру репозитория

Apt и Debian‑репозитории используют подписи и метаданные. На оффлайн‑ПК запустите команду, которая создаст файл‑подпись (signature) и сохранит список требуемых обновлений и репозиториев:

sudo apt-offline set ~/.offline.sig

Файл ~/.offline.sig содержит метаданные: какие кэши и пакеты нужно скачать.

Создание сигнатуры репозитория apt‑offline

Скачайте пакеты на USB с онлайн‑машины

Перенесите файл .offline.sig на онлайн‑машину (через USB). Затем выполните команду, которая скачает все необходимые пакеты и метаданные в указанную папку на USB. Обратите внимание на пробелы в путях и опциях:

sudo apt-offline get -d /path/to/usb/ ~/.offline.sig

Если хотите упаковать всё в один архив и ускорить загрузку параллельно, используйте опцию threads и bundle:

sudo apt-offline get --threads 3 --bundle /path/to/usb/bundle.zip ~/.offline.sig

Примечание: загрузка может занять значительное время. Убедитесь, что на USB достаточно места — репозиторий может потребовать десятки гигабайт в зависимости от набора пакетов.

Загрузка пакетов для оффлайн репозитория

Установка пакетов на оффлайн‑ПК

Подключите USB к оффлайн‑компьютеру и запустите установку загруженного архива или папки:

sudo apt-offline install /path/to/usb/bundle.zip

Или, если вы скачали пакеты в директорию:

sudo apt-offline install /path/to/usb/

Команда применит метаданные и обновит локальный apt‑кеш. После этого при установке или обновлении пакетов apt будет брать файлы из локального источника.

Повторное обновление и повторное использование USB

Процесс можно периодически повторять: на оффлайн‑ПК снова создайте .offline.sig, перенесите её на онлайн‑машину, скачайте обновления и установите их. Один USB можно использовать для нескольких оффлайн‑машин — просто представляйте им тот же bundle или папку.

Альтернативы и улучшения

  • Если компьютеры находятся в одной локальной сети, используйте NAS или локальный apt‑mirror вместо USB — быстрее и удобнее.
  • Для больших сред рассмотрите создание локального APT‑mirror (aptly, reprepro) и раздачу через HTTP/S из локальной сети.
  • Для одноразовых случаев подойдёт просто копирование .deb‑файлов и установка через dpkg/apt.

Когда этот метод не подходит

  • Если требуется частое обновление десятков или сотен машин — лучше разворачивать локальный mirror/сервер обновлений.
  • При ограничениях по физическому переносу информации по политике безопасности — USB может быть запрещён.

Практические советы и контроль качества

  • Всегда проверяйте свободное место на USB перед загрузкой.
  • Сохраняйте предыдущие bundle.zip как резервную копию на случай отката.
  • Тестируйте процесс на одном оффлайн‑ПК перед массовым развертыванием.

Важно: файл ~/.offline.sig отражает именно ту систему, на которой он создан. Нельзя использовать сигнатуру, созданную на одной версии Ubuntu, для обновления кардинально другой без проверки совместимости.

Контрольные списки

Перед созданием репозитория (на онлайн‑ПК)

  • apt-offline установлен
  • Достаточно свободного места на USB
  • Передан файл .offline.sig от оффлайн‑ПК

Перед установкой на оффлайн‑ПК

  • apt-offline установлен или доступен .deb
  • bundle.zip или директория с пакетами присутствует на USB
  • Резервная копия текущего состояния системы (если требуется)

Чеклист администратора (роли)

  • Системный администратор: убедиться в соответствии версий Ubuntu между машинами.
  • Оператор: перенести .offline.sig и bundle на USB, запустить apt-offline install.
  • Инженер по безопасности: проверить, допустим ли физический перенос данных.

Диаграмма принятия решения (Mermaid)

flowchart TD
  A[Есть онлайн‑машина?] -->|Да| B[Скачать apt-offline]
  A -->|Нет| C[Необходимо подключение к Интернету для подготовки]
  B --> D[Создать .offline.sig на оффлайн‑ПК]
  D --> E[Скачать пакеты на USB]
  E --> F[Установить bundle на оффлайн‑ПК]
  F --> G[Обновления применены]

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

  • Оффлайн‑ПК обновляет пакеты без ошибок после выполнения apt-offline install.
  • apt показывает локальный источник в списке источников (если применимо).
  • Никакие пакеты не остаются в состоянии «сломанных» (используйте sudo apt-get -f install при необходимости).

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

Оффлайн‑репозиторий на USB — практичный способ обновлять изолированные Ubuntu‑системы при условии наличия одной онлайн‑машины для подготовки. Метод надежен для небольшого количества машин и ситуаций с ограниченным сетевым доступом. Для масштабных сценариев лучше строить локальный mirror.

Важно: всегда тестируйте процесс на одной машине и проверяйте совместимость версий пакетов.

Глоссарий в одну строку

  • apt-offline: утилита для создания метаданных обновлений и скачивания пакетов на машину с Интернетом для дальнейшей установки на оффлайн‑ПК.
Поделиться: X/Twitter Facebook LinkedIn Telegram
Автор
Редакция

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

Fix Download failed — network error в Chrome
Troubleshooting

Fix Download failed — network error в Chrome

Как обойти блокировку сайтов на Virgin Media
Интернет

Как обойти блокировку сайтов на Virgin Media

Как исправить проблемы с печатью в Windows 10
Windows

Как исправить проблемы с печатью в Windows 10

Как хранить данные автомобиля в Dash
Авто

Как хранить данные автомобиля в Dash

Включить Reader View в Firefox на ПК и мобильных
Браузеры

Включить Reader View в Firefox на ПК и мобильных

Аутентификация в Flask с JWT
Безопасность

Аутентификация в Flask с JWT