[devel] genbasedir & unique package list
Alexey Tourbin
at at altlinux.ru
Fri Dec 4 05:32:46 UTC 2009
On Fri, Dec 04, 2009 at 12:28:47PM +0700, REAL wrote:
> Привет!
>
> При добавлении новых пакетов и
> пересоздании genbasedir количество пакетов
> растёт, засчёт файлов старых версий
> пакетов. Существует ли какой-нибудь
> способ (кроме многочасового ручного
> выковыривания) очистки репозитория от
> таких старых файлов? Ведь в сизифе же
> что-то подобное работает.
Ну как, надо упорядочить список rpm-пакетов в каталоге, во-первых,
by name ASC, во-вторых, by version DESC. Тогда первый пакет (в группе
пакетов с одинаковым именем) будет пакет с наибольшей версией,
а остальные (следующие) пакеты с таким же именем можно удалить.
Примерно это делает /usr/bin/packages.
$ packages RPMS/ |sort -u -k1,1 |cut -f3
Получится уникальный список пакетов с наибольшей версией.
Дальше можно использовать comm(1) и из полного списка rpm пакетов
вычесть список пакетов с наибольшей версией, получится список пакетов
на удаление.
Правда это не работает при переименовании пакетов, а старые пакеты
(позднее переименованные) могут создать дополнительные трудности апту.
Но для очистки годится.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 198 bytes
Desc: not available
URL: <http://lists.altlinux.org/pipermail/devel/attachments/20091204/d7ad86e1/attachment.bin>
More information about the Devel
mailing list