ошибка подписи rpm rpmMkTemp не удалось

ошибка подписи rpm rpmMkTemp не удалось

Я сталкиваюсь с этой ошибкой при подписании файла RPM. У меня не так много информации, как вы видите, и Google, похоже, ничего не дал. Я в тупике!

Кто-нибудь знает, в чем причина? Я предполагаю, что он пытается создать какой-то временный файл... где-то.

$: rpm -D "_gpg_name rpmbuilder" --addsign outputs/sllop-0.0.6-1.x86_64.rpm --verbose --debug
Введите парольную фразу:
Парольная фраза хороша.
выходы/sllop-0.0.6-1.x86_64.rpm:
D: Ожидаемый размер: 51827 = lead(96)+sigs(180)+pad(4)+data(51547)
D: Фактический размер: 51827
D: Размер подписи GPG: 72
D: Получил 72 байта GPG-подписи
D: Размер подписи GPG: 72
D: Получил 72 байта GPG-подписи
ошибка: ошибка rpmMkTemp

решение1

Отвечаю сам на этот вопрос, если кого-то это смутит.

Это сообщение об ошибке оказалось немного обманчивым. Это действительно была проблема с разрешениями (как и ожидалось), но не в каком-либо из каталогов tmp, связанных с переменными rpm.

Использование strace с

strace -p `ps --no-headers -fC rpmsign | awk '{print $2}'` -e trace=open,close

Strace показал, что после всей работы внутри каталога tmp (в данном случае /var/tmp) он попытался создать измененную версию rpm в том же каталоге, что и rpm, прежде чем (я предполагаю) переместить ее на место.Чтоrpm был «временным», о котором там говорилось.

В итоге оказалось, что у этого пользователя просто не было прав на запись в то место, где находился RPM-файл на момент подписания.

Фу.

Связанный контент