RPM-Signaturfehler, RPMMkTemp ist fehlgeschlagen

RPM-Signaturfehler, RPMMkTemp ist fehlgeschlagen

Ich stoße auf diesen Fehler, wenn ich eine RPM-Datei signiere. Wie Sie sehen, habe ich nicht viel, womit ich weitermachen könnte, und Google scheint nichts gefunden zu haben. Ich bin ratlos!

Weiß jemand, woran das liegt? Ich vermute, es versucht, irgendwo eine Art temporäre Datei zu erstellen.

$: rpm -D "_gpg_name rpmbuilder" --addsign Ausgaben/sllop-0.0.6-1.x86_64.rpm --verbose --debug
Geben Sie die Passphrase ein:
Die Passphrase ist gut.
Ausgaben/sllop-0.0.6-1.x86_64.rpm:
D: Erwartete Größe: 51827 = lead(96)+sigs(180)+pad(4)+data(51547)
D: Tatsächliche Größe: 51827
D: GPG-Signaturgröße: 72
D: Habe 72 Byte GPG-Signatur erhalten
D: GPG-Signaturgröße: 72
D: Habe 72 Byte GPG-Signatur erhalten
Fehler: rpmMkTemp ist fehlgeschlagen

Antwort1

Ich beantworte das selbst, falls jemand anderes dadurch verwirrt wird.

Diese Fehlermeldung erwies sich als etwas irreführend. Es handelte sich tatsächlich um ein Berechtigungsproblem (wie erwartet), aber nicht bei einem der temporären Verzeichnisse, die mit den RPM-Variablen in Zusammenhang standen.

Verwendung von strace mit

strace -p `ps --no-headers -fC rpmsign | awk '{print $2}'` -e trace=öffnen,schließen

Strace hat gezeigt, dass es nach der ganzen Arbeit im temporären Verzeichnis (in diesem Fall /var/tmp) versucht hat, eine geänderte Version des RPM im selben Verzeichnis wie das RPM zu erstellen, bevor es (nehme ich an) an die richtige Stelle verschoben wurde.Dasrpm war das „temporäre“ Objekt, auf das es sich bezog.

Nach all dem stellte sich heraus, dass dieser Benutzer beim Signieren einfach keine Schreibberechtigung für den Speicherort des RPM hatte.

Pfui.

verwandte Informationen