===== Замена deb-пакетов (с сохранением номера версии) в репозитории REPREPRO ===== {{:unix-linux:advanced-packaging-tool:pasted:20170325-094509.png }} При использовании локального репозитория на базе **reprepro** для распространения **deb**-пакетов, иногда может возникнуть необходимость в замене некоторых опубликованных в репозитории пакетов при условии, что версия пакетов должна остаться прежней. Для решения этой задачи сначала потребуется удалить из репозитория пакеты с текущей версией, а потом добавить в репозиторий обновлённые пакеты. В моём примере требуется замена пакетов ''squid*'' определённой версии, опубликованных в репозитории, расположенном на сервере reprepro в каталоге ''/srv/reprepro/debian'' для **Debian Jessie** ( ветка **main** ) . Посмотрим, какие пакеты в репозитории сейчас подпадают под заданные условия: # reprepro -b /srv/reprepro/debian \ listfilter 'jessie' '$PackageType (==deb), $Source (%squid*), $SourceVersion (%3.5.24*)'
jessie|main|i386: squid-common 3.5.24-1 jessie|main|i386: squid3 3.5.24-1 jessie|main|amd64: squid 3.5.24-1 jessie|main|amd64: squid-cgi 3.5.24-1 jessie|main|amd64: squid-common 3.5.24-1 jessie|main|amd64: squid-dbg 3.5.24-1 jessie|main|amd64: squid-purge 3.5.24-1 jessie|main|amd64: squid3 3.5.24-1 jessie|main|amd64: squidclient 3.5.24-1
Удалим старые пакеты с фильтром по названию и версии: # reprepro -b /srv/reprepro/debian \ removefilter 'jessie' '$PackageType (==deb), $Source (%squid*), $SourceVersion (%3.5.24*)'
Exporting indices... Deleting files no longer referenced...
Теперь опубликуем в репозиторий обновлённые пакеты из локального каталога: # reprepro -b /srv/reprepro/debian \ -C main includedeb 'jessie' /home/user/build/squid*.deb
Exporting indices...
Теперь можем перейти на Linux-сервер, являющимся клиентом нашего локального репозитория и, при необходимости, выполнить переустановку пакета ''squid3'', предварительно обновив кеш менеджера пакетов APT: # apt-get clean # apt-get update # apt-get --reinstall install squid3 ---- {{:user:blogroot.png?50&nolink |}} Автор первичной редакции:\\ [[user:blogroot|Алексей Максимов]] \\ Время публикации: 25.03.2017 09:16 {{tag>Linux Debian Ubuntu APT DEB Package Reinstall Repository Reprepro Squid }} ~~DISCUSSION~~