Дано: Компьютер с установленной операционной системой Debian или Ubuntu. Операционная система содержит самые свежие обновления. Интернет дорогой и медленный, а иногда его вообще нету :(

Надо: Создать резервную копию всего локального репозитория с целью переноса пакетов на другой компьютер или на случай переустановки системы чтобы заново не качать обновления с Интернета.

Решение:

Способ 1

Одним из способов решения проблемы является создание локального репозитория на внешнем носителе.

Создадим копию кэша пакетов на компакт-диске, а потом используем его в Synaptic. По умолчанию, все пакеты установленные на машине сохраняются в каталоге /var/cache/apt/archives

1. Где-нибудь, создаём каталог с произвольным именем, например main в /tmp
Прим. Для начинающих пользователей, все файловые операции удобней и наглядней проводить с помощью файлового менеджера типа Midnight Commander, нежели работать в чистой командной строке.

 $ mkdir /tmp/main

2. Копируем всё содержимое каталога /var/cache/apt/archives/ в наш каталог, например в /tmp/main

 $ cd /var/cache/apt/archives
 $ cp * /tmp/main 

3. Теперь создадим индекс всех пакетов.

 $ cd /tmp
 $ dpkg-scanpackages main /dev/null | gzip -9c > Packages.gz 

Для верности можно сделать не архивную копию файла Packages:

 $ dpkg-scanpackages main /dev/null > Packages

Обращаю внимание, на параметр main в выполняемой команде - это имя каталога куда мы поместили пакеты из /var/cache/apt/archives/

Теперь записываем на компакт-диск каталог main и 2 файла: Packages.gz и Packages в корень, чтобы получилось:

 $ cd /cdrom
 $ ls -F
   main/
   Packages
   Packages.gz

Для установки пакетов с нашего резервного архива, необходимо запустить Synaptic и через меню "Редактирование" выбрать "Добавить компакт-диск…". Программа просканирует диск и добавит в список репозиториев. В дальнейшем, если на машине не настроен Интернет или сетевые репозитории не включены в список репозиториев, программа будет просить этот диск для установки программного обеспечения.

Смотрите также

Печать/экспорт