Red Hat Bugzilla – Bug 157931
rpm chokes when running script and no /var/tmp
Last modified: 2007-11-30 17:07:18 EST
Description of problem:
When trying to install a package that has %pre install scriptlet (and other
scriptlets), and /var/tmp directory does not exist, 'rpm -i <package>' exits
without any warning/error/message, and the package is not installed.
When trying 'rpm -ivv <package>' the last message before the "closing db"
messages is "running preinstall script (if any)".
Trying 'rpm -i --noscripts <package>' installs the package (but w/o running the
scripts, which are much needed).
I believe /var/tmp is used by RPM to create temp files with the scriptlets. But
if the directory does not exist, it should give some error, or try /tmp or
Version-Release number of selected component (if applicable):
Steps to Reproduce:
1. See above
Package not installed, and no error/warning/message given.
Package installed and/or warning/error/message given why it was not installed.
What rpm version? rpm 4.3.3 in RHEL 4 works fine for me.
D: install: %post(test-post-1.0-1.noarch) asynchronous scrriptlet start
D: crated directory(s) /var/tmp mode 0755
I'm actually using version 4.0, but since that's no longer supported and I could
not find a similar bug in the database, I though of submitting this against the
latest stable RHEL, just in case.
Do you know, by any chance, in what RPM version was this (the creating of
/var/tmp when it's missing) added?
From the rpm-4_0 branch:
date: 2000/12/19 17:59:30; author: jbj; state: Exp; lines: +58 -3
- create _tmppath on the fly if not present.
rpm 4.0.4 is the latest known good on that branch, please consider moving or
advising your vendor to move to that branch.