Frage

Ich bin Umpacken einige Software (die ihre eigenen Installer hat) für den privaten Gebrauch unter einem Debian-basierten System. Diese Software ist bereits kompiliert (keine Quelle), so dass ich den Installer in den $DESTDIR Baum im Grunde laufen.

Leider erfordert das Installationsprogramm, dass ein Systembenutzernamen und Gruppenname ist bereits erstellt. Nun, ich weiß, es ist eine einfache Sache, es zu tun „von Hand“ vor dem Gebäude (und Installation), um das Debian-Pakets. Aber ich frage mich, ob es möglich ist, debuild zu „fälschen die Schaffung eines Benutzers“ anzuweisen, (während als root mit fakeroot ausgeführt wird). die debian/preinst.ex und debian/postrm.ex Bearbeiten von Dateien arbeitet für diese Operationen zu tun, aber dies betrifft auch die bauen Bühne, wo die Benutzer nach dem Build überflüssig werden.

Also im Grunde dieser ammounts die Debian Build-Tools zu lassen (und Werkzeuge im Build laufen) zu „glauben“, dass ein bestimmte Benutzer bereits vorhanden ist. Kurz die in einer chroot-ed-Umgebung (wie pbuilder) ausgeführt wird, wie kann ich das tun?

War es hilfreich?

Lösung

Ein bisschen spät, aber meine beste Vermutung wäre ein LD_PRELOAD sein, die den Aufbau einer separaten C-Datei kompiliert zu einer dynamischen Bibliothek erfordert, die beispielsweise außer Kraft setzen kann getpwnam(), das ist wahrscheinlich das, was das Installationsprogramm für den Benutzer zu überprüfen verwendet.

Aber zuerst würde ich wirklich , um zu sehen, ob der „Installer“ kann in auspacken-Modus nicht dazu gezwungen werden. Viele Installateure können mit versteckten Optionen.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top