Andrei Borzenkov wrote:
On Thu, Nov 19, 2015 at 12:49 PM, Per Jessen
wrote: This is mind boggling, to me anyway - on a very stable system, quite backlevel, I have some procedures/Makefiles that are run daily. I'm pretty certain noone has changed anything there for months or even years. A week ago, the following started complaining about lack of permissions:
create tempfile in /tmp fill up tempfile with stuff move tempfile to destination (same filesystem, matching uids) - permission denied.
Using strace, I see that it is a call to rename() that fails. Then I tried this instead:
create tempfile in /tmp fill up tempfile with stuff copy tempfile to destination (same filesystem) remove tempfile
What are exact permissions and owners of
/tmp (ls -ld /tmp)
# ls -ld /tmp drwxrwxrwt 12 root root 19750912 2015-11-19 11:45 /tmp
tempfile (ls -l /tmp/temfile)
# ls -l /tmp/tempfile.lFucmE -rw------- 1 bulwark daemon 237891 2015-11-19 10:26 /tmp/tempfile.lFucmE
destination (ls -l /tmp/destination)?
# ls -l ./bulwark_recipient_map -rw-r--r-- 1 bulwark daemon 237891 2015-11-19 10:42 ./bulwark_recipient_map
And yes, rename and copy require different permissions, so one may succeed when other fails.
Yes, that is clearly the case, although functionally "mv" would seem to be exactly the same "cp src dst && rm src". Marcus Meissner wrote:
Is this really the same filesystem?
Yep, definitely. All on root.
Do the permissions of both /tmp and target directory look good?
See above. The Makefile is run from cron under userid "bulwark". -- Per Jessen, Zürich (15.1°C) http://www.hostsuisse.com/ - dedicated server rental in Switzerland. -- To unsubscribe, e-mail: opensuse+unsubscribe@opensuse.org To contact the owner, e-mail: opensuse+owner@opensuse.org