Создание резервной копии локального репозитория в Debian и Ubuntu
Дано: Компьютер с установленной операционной системой Debian или Ubuntu. Операционная система содержит самые свежие обновления. Интернет дорогой и медленный, а иногда его вообще нету :(
Надо: Создать резервную копию всего локального репозитория с целью переноса пакетов на другой компьютер или на случай переустановки системы чтобы заново не качать обновления с Интернета.
Решение:
Способ 1
Одним из способов решения проблемы является создание локального репозитория на внешнем носителе.
Создадим копию кэша пакетов на компакт-диске, а потом используем его в Synaptic. По умолчанию, все пакеты установленные на машине сохраняются в /var/cache/apt/archives
1. Где-нибудь, создаём каталог с произвольным именем, например main в /tmp
2. Копируем всё содержимое каталога /var/cache/apt/archives/ в наш каталог, например в /tmp/main
user@comp:/home/user$ cd /var/cache/apt/archives user@comp:/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 и через меню "Редактирование" выбрать "Добавить компакт-диск...". Программа просканирует диск и добавит в список репозиториев. В дальнейшем, если на машине не настроен Интернет или сетевые репозитории не включены в список репозиториев, программа будет просить этот диск для установки программного обеспечения.
Источники информации
http://www.debian.org/doc/manuals/repository-howto/repository-howto.en.html