Строить RPM, чтобы вести себя по-другому при установке и обновлении?

У меня есть пакет RPM с почти 4000 файлами, и установка этого занимает много времени. Однако из этих 4000 файлов для каждой версии изменяется только фиксированный список из 25 файлов.

Мой запрос:

Можно ли создать RPM таким образом, чтобы во время установки и обновления он вел себя по-разному? Это то, что я намереваюсь сделать.

  1. Во время установки все 4000 файлов должны быть скопированы.
  2. Во время обновления копируются только 25 измененных файлов, а не остальные файлы (потому что они требуют много времени для установки и просто перезаписывают одни и те же файлы).

One Solution collect form web for “Строить RPM, чтобы вести себя по-другому при установке и обновлении?”

Да, это возможно.

Взгляните на эту полезную страницу вики из Fedora, в которой объясняется, что «scriplets» pre и post build принимает аргумент, который передается им, когда они запускаются как часть установки RPM.

Вы можете добавить проверку, чтобы определить, будет ли обновление или новая установка для вашего скрипта. Предоставленная ссылка содержит пример того, как это сделать в вашем сценарии предварительной установки.

  • Определение макросов для создания файлов RPM, требующих Python 3
  • Обновление ядра 2.6.18 до 2.6.32 на CentOS 5.10
  • Создайте файл makefile rpm
  • Что требуется: Python (пакет) для файлов спецификаций RHEL?
  • Каково поведение по умолчанию для% install?
  • Когда использовать арку против noarch при создании RPM?
  • Как устранить предупреждения: mockbuild не существует
  • RPM говорит, что общий объект отсутствует, но я могу найти его с ls
  • Ошибки сборки RPM
  • Восстановленный пакет kmod не обновляется через `YUM`, а через` rpm`
  • Почему «dir-or-file-in-usr-local» является ошибкой, а не предупреждением?
  • Interesting Posts

    Как я могу проверить файл, имеющий значение?

    Смешивание репозиториев для разных версий OpenSUSE

    Как аутентифицировать учетные записи Linux с помощью PAM с использованием PHP без предоставления тэга www-data

    Grub2: установить шрифт динамически на основе разрешения видео?

    Обратное обращение с sed

    Значки приложений отсутствуют на панели Cinnamon при работе от имени root

    Имя процесса после убийства

    Как я могу узнать, что делает мой SLAB Unreclaimable Memory Grow без границ

    использование scp переименование всех файлов

    Маршрутизация локальной сети через OpenVPN на OpenBSD 5.5

    У CentS-7 Kernel Image есть суффикс «debug» после установки Kickstart

    Gedit отображает текст, но кот рассказывает другую историю

    Как работать с файловой системой Linux?

    Почему одно и то же sed regex (после grep) выходит из строя при запуске в сценарии bash или командной строке bash?

    Показать содержимое символической ссылки

    Linux и Unix - лучшая ОС в мире.