Hi,
I just wrote bug #360. Here's the text again:
I'm using unionfs (the 20050804-1735 snapshot) on a Fedora Core 4
system (kernel 2.6.12-1.1398_FC4). I have a relatively simple mount
layout with two directories, one r/w ("changes") and one r/o ("os"):
none on [...]/work type unionfs (rw,dirs=changes=rw:os=ro)
Now, if I chroot into the "work" directory and try to install an RPM,
it fails with the message "error: can't create transaction lock".
If I just try again, it works.
strace shows the following:
open("/var/lock/rpm/transaction", O_RDWR|O_CREAT|O_LARGEFILE, 0644) = 8
umask(022) = 022
fcntl64(8, F_SETLK64, {type=F_WRLCK, whence=SEEK_SET, start=0, len=0},
0xbf90ccf0) = -1 EBADF (Bad file descriptor)
after which rpm tries again and then bails out.
/var/lock/rpm/transaction is present in the r/o branch of the union,
and after the first attempt, it is also in the r/w branch.
If I create the file (it's just a zero byte lock stub) in the
"changes" directory before the mount, fcntl64 doesn't fail and
everything works right away.
Just creating the directory isn't enough, it needs the file
"transaction".
Regards,
Torsten
_______________________________________________
unionfs mailing list
[email protected]
http://www.fsl.cs.sunysb.edu/mailman/listinfo/unionfs