LINUX.ORG.RU

Как перенести кэш пакетов, чтоб он работал как полноценный репозиторий?

 , ,


0

1

Прежде, чем ставить систему на реальное железо, пилил в виртуалке. /var/cache/apt на флэшку скинул, после установки залил по назначению, сделал aptitude update, но зависимости не пашут. Можно, конечно, их ручками поштучно поставить, но я ж Debian всё-таки ставлю, а не Слаку... Погуглил, нашёл метод, но для него требуется поставить 4 пакета. Скачал, залил, поставил, но и они зависимости тянут - тому perl надо, тому ещё что-то... В общем, как действовать методом грязного хака: какие ещё файлы и откуда надо выдрать, чтоб aptitude подумал, что всё это его родное?

//Инет не завёлся - netcfg там нету, ppp настроить не осилил, так что что свисток, что мобила - отпадают. Чтоб скачать пакеты, приходится либо ребутить ноут в Шинду, либо качать телефоном и ребутить его, чтоб подрубить в режиме флешки. Для каждого пакета это муторно, а сколько их там ещё притянется, я хз.

★☆

Последнее исправление: cetjs2 (всего исправлений: 1)

Это плохой способ, потому что, ЕМНИП, APT периодически подчищает кэш. Лучше все-таки разобраться с инетом, что там с NetworkManager? На крайняк можно скачать репозиторий на DVD или запилить локальный.

eugeno ★★★★★
()

man reprepro

anonymous
()

Что-то ты сделал не так. apt сперва проверяет наличие скачанного пакета в кеше и только если его нет, пытается стянуть с инета. Для этого достаточно скопировать не весь /var/cache/apt, а только /var/cache/apt/archives/

Помимо этого убедись, что версии совпадают. Например, если ты ставил testing или sid, вполне возможно, что те пакеты, которые лежат в archives уже не соответсвуют версиям, полученным в списках после apt-get update(кстати, как ты его смог выполнить, если интернета нет?).

Ну и наконец, никто не мешает поставить необходимый минимум с помощью dpkg -i, включить сеть и дальше уже делать установку в автоматическом режиме.

Ну и ещё я не совсем понял, что же ты пытаешься сделать. Ты перенёс установленную систему из виртуалки на реальное железо? Тогда всё, что было в ней уже должно было быть установлено и непонятно, в чём проблема.

shell-script ★★★★★
()
Ответ на: комментарий от eugeno

Значит кто-то чистит. В дефолтных настройках apt в debian'е всё, что связано с очисткой по умолчанию отключено. Даже удаление устаревших пакетов выключено.

Вот, например, один из недавно поставленных серверов с практически дефолтными настройками apt(грепнул, чтобы весь список не показывать, там дофига всего):

$ ls /var/cache/apt/archives/ | grep apache
apache2_2.2.16-6+squeeze10_amd64.deb
apache2_2.2.16-6+squeeze11_amd64.deb
apache2_2.2.16-6+squeeze7_amd64.deb
apache2_2.2.16-6+squeeze8_amd64.deb
apache2.2-bin_2.2.16-6+squeeze10_amd64.deb
apache2.2-bin_2.2.16-6+squeeze11_amd64.deb
apache2.2-bin_2.2.16-6+squeeze7_amd64.deb
apache2.2-bin_2.2.16-6+squeeze8_amd64.deb
apache2.2-common_2.2.16-6+squeeze10_amd64.deb
apache2.2-common_2.2.16-6+squeeze11_amd64.deb
apache2.2-common_2.2.16-6+squeeze7_amd64.deb
apache2.2-common_2.2.16-6+squeeze8_amd64.deb
apache2-mpm-prefork_2.2.16-6+squeeze10_amd64.deb
apache2-mpm-prefork_2.2.16-6+squeeze11_amd64.deb
apache2-mpm-prefork_2.2.16-6+squeeze7_amd64.deb
apache2-mpm-prefork_2.2.16-6+squeeze8_amd64.deb
apache2-mpm-worker_2.2.16-6+squeeze7_amd64.deb
apache2-utils_2.2.16-6+squeeze10_amd64.deb
apache2-utils_2.2.16-6+squeeze11_amd64.deb
apache2-utils_2.2.16-6+squeeze7_amd64.deb
apache2-utils_2.2.16-6+squeeze8_amd64.deb
libapache2-mod-fastcgi_2.4.6-1_amd64.deb
libapache2-mod-php5_5.3.3-7+squeeze14_amd64.deb
libapache2-mod-php5_5.3.3-7+squeeze15_amd64.deb
Как видно, лежат все версии пакетов с момента установки(эта железка обновляется раз в неделю). И я как раз руками обычно включаю очистку archives в настройках от устаревших пакетов.

Можно попробовать посмотреть в настройках, что там включено(apt-config dump), но если дефолт, то надо искать, кто чистит кеш где-нибудь в кроне.

shell-script ★★★★★
()

/var/lib/apt/ забыли.

AITap ★★★★★
()

aptoncd поможет тебе, если религия позволяет.

anonymous
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.