Description of problem: I am trying to install ppp in a chroot environment. The package installation fails as follows: Error unpacking rpm package ppp-2.4.5-29.fc19.x86_64 error: unpacking of archive failed on file /var/lock/ppp: cpio: mkdir Aktualisieren : spice-glib-0.20-1.fc19.x86_64 31/137 error: ppp-2.4.5-29.fc19.x86_64: install failed /var/lock is a symlink to ../run/lock which does not exist nor is provided by a package at this moment. When I manually create /run/lock in advance, the package installation works fine.
I consulted this bug with maintainer of filesystem. I was told that this issue should be fixed already, although it looks like that update haven't landed in stable repositories yet. Reassigning to filesystem. Please expect this to be resolved soon.
Well, initially I thought it is caused by yum bug, but to some extend it is duplicate (resp. regression) of #693394 . Directory ownership for /run/lock was removed by the request of Kay Sievers by https://git.fedorahosted.org/cgit/filesystem.git/commit/filesystem.spec?id=9f2d2471def4c3ba0c1eab31db5ddb92e43e66c1 - as this one dir should no longer be required (should be handled by systemd). I don't think we should readd the /run/lock ownership into filesystem (though it is easiest way). Adding Kay to cc. Kay - what do you think?
/var/run and /var/lock always point to a volatile tmpfs filesystem. Content in that filesystem never ends on disk and should therefore not be shipped by rpm content itself. The ppp package should probably just stop shipping files in /run, as they are not supposed to end up on disk. Also in a chroot, during runtime of tools, we don't really support the content of /var/run or /var/lock to be stored on a real filesystem. Nothing ever cleans up the state files placed into these directories, because tools can expect that a fresh tmpfs is always empty. I fear the chroot, to work properly, needs to set up /run with a tmpfs too, and populate it with the needed skeleton, ignoring such issues will lead to problems sooner or later. Just as a note: The more "modern" way of setting up such a chroot-like environment, is to use a container, which might already cover these cases, is described in: man systemd-nspawn
I am using the yum --installroot= parameter to install packages to a specific target. I agree with Kay that ppp should not try to create a directory in /run/lock during package installation.
Moving back to ppp per Kay's comment.
Well I could create /run/lock and /run/lock/ppp during daemon start-up and stop shipping /run/lock/ppp in package payload. Second option is to call mkdir -p /run/lock/ppp in %post and provide the path as %ghost. Either way should work. I have quite a lot of distribution specific patches in ppp already. I don't think there is a need to add more. If nobody has objections I will go head with second option here.
*** Bug 983773 has been marked as a duplicate of this bug. ***
Any word on the fix eta? Is there a fixed package for qa/testing somewhere? Thanks.
Thanks for reminder. I will be releasing update soon-ish (most likely today). Please test and give karma as soon as it hits updates-testing. Thanks.
ppp-2.4.5-31.fc19 has been submitted as an update for Fedora 19. https://admin.fedoraproject.org/updates/ppp-2.4.5-31.fc19
Installing: ppp ################### [1026/1761] mkdir: cannot create directory ‘/var/lock’: File exists warning: %post(ppp-2.4.5-31.fc19.i686) scriptlet failed, exit status 1 problem still exists
Package ppp-2.4.5-32.fc19: * should fix your issue, * was pushed to the Fedora 19 testing repository, * should be available at your local mirror within two days. Update it with: # su -c 'yum update --enablerepo=updates-testing ppp-2.4.5-32.fc19' as soon as you are able to. Please go to the following url: https://admin.fedoraproject.org/updates/FEDORA-2013-14114/ppp-2.4.5-32.fc19 then log in and leave karma (feedback).
ppp-2.4.5-32.fc19 has been pushed to the Fedora 19 stable repository. If problems still persist, please make note of it in this bug report.
ppp-2.4.5-32.fc19.x86_64 doesn't work for me. During the build of my live remix (using livecd-creator) I get this error: ... Installazi: ppp ################### [ 515/1211]mkdir: impossibile creare la directory "/var/lock": File già esistente ... Please, take a look at #983772.
(In reply to Kay Sievers from comment #3) > The ppp package should probably just stop shipping files in /run, as they > are not supposed to end up on disk. I'm confused. Is https://fedorahosted.org/fesco/ticket/525 wrong ? It says that the directories should be packaged as normal.