Jos Vos
2008-08-08 17:12:05 UTC
Hi,
I have a interesting RPM problem that I can't explain (yet).
I have a package, say foo-1-1. It contains a directory, say /opt/foo
I want to make an update, say foo-1-2, in which /opt/foo is not a
directory anymore, but a symlink, say /opt/foo -> bar.
Just packaging it as such does not seem to work, as the RPM says then:
error: unpacking of archive failed on file /opt/foo: cpio: rename
So, I tried a workaround and included in foo no /opt/foo at all, but
I included a post-install script:
%post
ln -snf bar /opt/foo
Later, I added some tracing (writing output to a file there) and
found out that after at the end of the post-install script the
symlink *does* exist. But it is gone when the RPM transaction
is finished!
Can someone shed a light on this? I'm afraid the actual remove
actions for foo-1-1 remove my symlink. The only thing I want to
do is replacing a directory with a symlink in an update of the
package. How should I do this?
This is using RPM 4.4.2 on a RHEL5 clone.
Thanks,
--
-- Jos Vos <***@xos.nl>
-- X/OS Experts in Open Systems BV | Phone: +31 20 6938364
-- Amsterdam, The Netherlands | Fax: +31 20 6948204
I have a interesting RPM problem that I can't explain (yet).
I have a package, say foo-1-1. It contains a directory, say /opt/foo
I want to make an update, say foo-1-2, in which /opt/foo is not a
directory anymore, but a symlink, say /opt/foo -> bar.
Just packaging it as such does not seem to work, as the RPM says then:
error: unpacking of archive failed on file /opt/foo: cpio: rename
So, I tried a workaround and included in foo no /opt/foo at all, but
I included a post-install script:
%post
ln -snf bar /opt/foo
Later, I added some tracing (writing output to a file there) and
found out that after at the end of the post-install script the
symlink *does* exist. But it is gone when the RPM transaction
is finished!
Can someone shed a light on this? I'm afraid the actual remove
actions for foo-1-1 remove my symlink. The only thing I want to
do is replacing a directory with a symlink in an update of the
package. How should I do this?
This is using RPM 4.4.2 on a RHEL5 clone.
Thanks,
--
-- Jos Vos <***@xos.nl>
-- X/OS Experts in Open Systems BV | Phone: +31 20 6938364
-- Amsterdam, The Netherlands | Fax: +31 20 6948204