Debian: создать пользователя во время упаковки

Я переупаковываю некоторое программное обеспечение (которое имеет собственный установщик) для частного использования в системе на базе Debian. Это программное обеспечение уже скомпилировано (нет источника), поэтому я в основном запускаю установщик в дерево $DESTDIR.

К сожалению, установщик требует, чтобы имя пользователя системы и имя группы были созданы ранее. Теперь я знаю, что это просто сделать это "вручную" до создания (и установки) пакета Debian. Но мне интересно, можно ли поручить debuild "подделать создание пользователя" (при запуске с правами root с помощью fakeroot). Редактирование файлов debian/preinst.ex и debian/postrm.ex работает для выполнения этих операций, но это также относится к этапу build, где эти пользователи становятся ненужными после сборки.

Таким образом, в основном это позволяет использовать инструменты сборки Debian (и инструменты, выполняемые внутри сборки), чтобы "поверить", что определенный пользователь уже существует. Не удается запустить в chroot-ed среде (например, pbuilder), как я могу это сделать?

Ответы

Ответ 1

Немного поздно, но наилучшим предположением будет LD_PRELOAD, который требует создания отдельного C файла, скомпилированного в динамическую библиотеку, которая может переопределить, например. getpwnam(), который, вероятно, используется установщиком для проверки пользователя.

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