Run the following script (It's been tried on linux-2.2.x and linux-2.4.x):

#!/bin/sh
cd /tmp
mkdir x
cd x
mkdir x y z
strace -etrace=rename,mkdir,rmdir,chmod mv x z
echo ---------
chmod -w y
strace -etrace=rename,mkdir,rmdir,chmod mv y z

The output:

rename("x", "z/x")                      = 0
---------
rename("y", "z/y")                      = -1 EACCES (Permission denied)
mkdir("z/y", 040755)                    = 0
chmod("z/y", 040555)                    = 0
rmdir("y")                              = 0

You'll notice the following:

 (1) Linux can't rename directories that are marked as read-only. This is
     strange because the directories actually being modified _do_ have write
     permission.

 (2) You can _remove_ a read-only directory.

David
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
Please read the FAQ at http://www.tux.org/lkml/

Reply via email to