Что на самом деле означают эти два поля информации о пакете?

Используя CentOS 6.8, когда я печатаю yum install tcpdump, системные выходы:

Package 14:tcpdump-4.0.0-11.20090921gitdf3cb4.2.el6.x86_64 already installed and latest version

Этот длинный кусок строки не помог, чтобы получить больше информации, я набрал yum info tcpdump, который вернул следующее:

Name        : tcpdump
Arch        : x86_64
Epoch       : 14
Version     : 4.0.0
Release     : 11.20090921gitdf3cb4.2.el6
Size        : 818 k
Repo        : installed
From repo   : base
... bla bla ...

он разделил исходную строку имени пакета на несколько полей. Меня интересуют следующие два поля: EpochRelease,

  • Что такое Epoch? немного информации здесь, но не очень поучительно
  • Как Release поле (11.20090921gitdf3cb4.2.el6) по имени? что такое конвенция?

1 ответ

Решение

Для довольно продолжительного чтения смотрите: https://fedoraproject.org/wiki/Packaging:Versioning

Эпоха используется очень редко. Когда не определено, оно установлено в 0 и не печатается. Эпоха используется для устранения пробелов в именовании. Например, вверх по течению есть проект foo и имеют версию 2009, и вдруг они решают изменить версию, а следующая версия будет 10. И теперь ваш путь обновления должен быть от foo-2009 до foo-10, но rpm обрабатывает foo-2009 > foo-10 и не будет обновлять его, Таким образом, сопровождающий должен пересечь эпоху, и rpm сравнивает foo-2009 == 0:foo-2009 < 1:foo-10.

Выпуск должен начинаться с 1, и каждый раз, когда вы выпускаете новый пакет - но с тем же tar.gz той же версии - вы должны увеличивать выпуск. Это можно изменить в пост-установочном скриптлете. Изменение требований времени выполнения. Перестройте из-за изменения в ABI требуемой библиотеки. Или потому что maintaner добавить патч. Обычно исправление причин безопасности. Формат поля выпуска не стандартизирован, поэтому вы можете только догадываться, почему сопровождающий использовал этот формат. И на самом деле вам не нужно угадывать, поскольку вы можете прочитать список изменений rpm, где изменение должно быть описано.

Другие вопросы по тегам