Hi Junjiro,

Am Montag, 14. April 2008 15:01:50 schrieb [EMAIL PROTECTED]:
> Andreas Bsching:
> > following configuration:
> > =2D mount -v -t aufs -o br:/branch_rw=3Drw:/branch_ro=3Dro none /union
> > =2D kernel 2.6.24 + aufs-20080129
> > =2D Using a Windows Client via Samba to access /union
> >
> > example:=20
> > mkdir -p /branch_ro/dir1/dir2
> > touch /branch_ro/dir1/dir2/file1
> > touch /branch_ro/dir1/dir2/file2
> > touch /branch_ro/dir1/dir2/file3
> >
> > If I try to rename the directory dir2 to dir2.new I get an error
> > 'permissio= n=20
> > denied' (The directory and files were created by the same user)
>
> Will you show me the output of these commands?
> $ find /union/dir1 /branch_ro/dir1 /branch_rw/dir1 -ls
> $ cd /union/dir1
> $ strace mv dir2 dir2.new

Thanx for your fast reply.

Output is attached. But that showed me that I forgot to mention something: It 
works if I use the /union locally ;-) ... but not if I access the /union 
directory via Windows. Samba share configuration:

[EMAIL PROTECTED]:/union/dir1$ cat /etc/samba/shares.conf.d/Union 
[Union]
path = /union
msdfs root = no
writeable = yes
browseable = yes
public = no
create mode = 0744
directory mode = 0755
force create mode = 00
force directory mode = 00
security mask = 0777
directory security mask = 0777
force security mode = 00
force directory security mode = 00
locking = 1
blocking locks = 1
strict locking = 0
oplocks = 1
level2 oplocks = 1
fake oplocks = 0
csc policy = manual
nt acl support = 1
inherit acls = 1
inherit owner = no
inherit permissions = no

regards
Andreas

-- 
** Besuchen Sie uns auf dem LinuxTag vom 28.-31. Mai 2008 in Berlin **

Andreas Büsching   <[EMAIL PROTECTED]>     fon: +49 421 22 232- 0
Entwicklung        Linux for Your Business
Univention GmbH    http://www.univention.de/     fax: +49 421 22 232-99
[EMAIL PROTECTED]:~$ cd /union/dir1/
[EMAIL PROTECTED]:/union/dir1$ find /union/dir1 /branch_ro/dir1 /branch_rw/dir1 
-ls
    12    1 drwxrwxr-x   9 root     Domain Users     1024 Mai 23 02:50 
/union/dir1
    14    0 -rw-r--r--   1 crunchy  Domain Users        0 Mai 23 02:36 
/union/dir1/file1.new
    13    1 drwxrwxr-x   2 root     Domain Users     1024 Mai 23 02:44 
/union/dir1/dir2
    19    0 -rw-r--r--   1 crunchy  Domain Users        0 Mai 23 02:36 
/union/dir1/dir2/file3.new
    17    0 -rw-r--r--   1 crunchy  Domain Users        0 Mai 23 02:36 
/union/dir1/dir2/file1
    18    0 -rw-r--r--   1 crunchy  Domain Users        0 Mai 23 02:36 
/union/dir1/dir2/file2
    16    1 drwxr-xr-x   2 crunchy  Domain Users     1024 Mai 23 02:44 
/union/dir1/dir3.crunchy
    20    1 drwxr-xr-x   2 crunchy  Domain Users     1024 Mai 23 02:49 
/union/dir1/dir3.new
    21    1 drwxr-xr-x   2 crunchy  Domain Users     1024 Mai 23 02:50 
/union/dir1/dir4.new
    15    0 -rw-r--r--   1 crunchy  Domain Users        0 Mai 23 02:36 
/union/dir1/file2
 80049    1 drwxrwxr-x   5 root     Domain Users     1024 Mai 23 02:49 
/branch_ro/dir1
 80050    1 drwxrwxr-x   2 root     Domain Users     1024 Mai 23 02:36 
/branch_ro/dir1/dir2
263197    0 -rw-r--r--   1 crunchy  Domain Users        0 Mai 23 02:36 
/branch_ro/dir1/dir2/file1
263290    0 -rw-r--r--   1 crunchy  Domain Users        0 Mai 23 02:36 
/branch_ro/dir1/dir2/file2
263291    0 -rw-r--r--   1 crunchy  Domain Users        0 Mai 23 02:36 
/branch_ro/dir1/dir2/file3
254216    0 -rw-r--r--   1 crunchy  Domain Users        0 Mai 23 02:36 
/branch_ro/dir1/file1
254217    0 -rw-r--r--   1 crunchy  Domain Users        0 Mai 23 02:36 
/branch_ro/dir1/file2
 80051    1 drwxr-xr-x   2 crunchy  Domain Users     1024 Mai 23 02:49 
/branch_ro/dir1/dir3
 80052    1 drwxr-xr-x   2 crunchy  Domain Users     1024 Mai 23 02:49 
/branch_ro/dir1/dir4
250888    0 -rw-r--r--   1 crunchy  Domain Users        0 Mai 23 02:49 
/branch_ro/dir1/dir4/file1
250889    0 -rw-r--r--   1 crunchy  Domain Users        0 Mai 23 02:49 
/branch_ro/dir1/dir4/file2
250890    0 -rw-r--r--   1 crunchy  Domain Users        0 Mai 23 02:49 
/branch_ro/dir1/dir4/file3
307271    1 drwxrwxr-x   6 root     Domain Users     1024 Mai 23 02:50 
/branch_rw/dir1
187699    0 -r--r--r--   9 root     root            0 Mai 23 02:19 
/branch_rw/dir1/.wh.file1
219300    0 -rw-r--r--   1 crunchy  Domain Users        0 Mai 23 02:36 
/branch_rw/dir1/file1.new
307273    1 drwxrwxr-x   2 root     Domain Users     1024 Mai 23 02:44 
/branch_rw/dir1/dir2
187699    0 -r--r--r--   9 root     root            0 Mai 23 02:19 
/branch_rw/dir1/dir2/.wh.file3
221939    0 -rw-r--r--   1 crunchy  Domain Users        0 Mai 23 02:36 
/branch_rw/dir1/dir2/file3.new
307272    1 drwxr-xr-x   2 crunchy  Domain Users     1024 Mai 23 02:44 
/branch_rw/dir1/dir3.crunchy
187699    0 -r--r--r--   9 root     root            0 Mai 23 02:19 
/branch_rw/dir1/.wh.dir3
307274    1 drwxr-xr-x   2 crunchy  Domain Users     1024 Mai 23 02:49 
/branch_rw/dir1/dir3.new
187699    0 -r--r--r--   9 root     root            0 Mai 23 02:19 
/branch_rw/dir1/.wh.dir4
307275    1 drwxr-xr-x   2 crunchy  Domain Users     1024 Mai 23 02:50 
/branch_rw/dir1/dir4.new
187699    0 -r--r--r--   9 root     root            0 Mai 23 02:19 
/branch_rw/dir1/dir4.new/.wh.file1
187699    0 -r--r--r--   9 root     root            0 Mai 23 02:19 
/branch_rw/dir1/dir4.new/.wh.file2
187699    0 -r--r--r--   9 root     root            0 Mai 23 02:19 
/branch_rw/dir1/dir4.new/.wh.file3
[EMAIL PROTECTED]:/union/dir1$ strace mv dir2 dir2.new
execve("/bin/mv", ["mv", "dir2", "dir2.new"], [/* 15 vars */]) = 0
uname({sys="Linux", node="master170", ...}) = 0
brk(0)                                  = 0x8058000
access("/etc/ld.so.nohwcap", F_OK)      = -1 ENOENT (No such file or directory)
mmap2(NULL, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 
0xb7faf000
access("/etc/ld.so.preload", R_OK)      = -1 ENOENT (No such file or directory)
open("/etc/ld.so.cache", O_RDONLY)      = 3
fstat64(3, {st_mode=S_IFREG|0644, st_size=50033, ...}) = 0
mmap2(NULL, 50033, PROT_READ, MAP_PRIVATE, 3, 0) = 0xb7fa2000
close(3)                                = 0
access("/etc/ld.so.nohwcap", F_OK)      = -1 ENOENT (No such file or directory)
open("/lib/libacl.so.1", O_RDONLY)      = 3
read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0\320\23"..., 512) = 512
fstat64(3, {st_mode=S_IFREG|0644, st_size=22156, ...}) = 0
mmap2(NULL, 20980, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 
0xb7f9c000
mmap2(0xb7fa1000, 4096, PROT_READ|PROT_WRITE, 
MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x5) = 0xb7fa1000
close(3)                                = 0
access("/etc/ld.so.nohwcap", F_OK)      = -1 ENOENT (No such file or directory)
open("/lib/libselinux.so.1", O_RDONLY)  = 3
read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0P8\0\000"..., 512) = 512
fstat64(3, {st_mode=S_IFREG|0644, st_size=79368, ...}) = 0
mmap2(NULL, 84884, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 
0xb7f87000
mmap2(0xb7f9a000, 8192, PROT_READ|PROT_WRITE, 
MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x12) = 0xb7f9a000
close(3)                                = 0
access("/etc/ld.so.nohwcap", F_OK)      = -1 ENOENT (No such file or directory)
open("/lib/tls/libc.so.6", O_RDONLY)    = 3
read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0\240O\1"..., 512) = 512
fstat64(3, {st_mode=S_IFREG|0644, st_size=1241392, ...}) = 0
mmap2(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 
0xb7f86000
mmap2(NULL, 1251484, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 
0xb7e54000
mmap2(0xb7f7c000, 28672, PROT_READ|PROT_WRITE, 
MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x127) = 0xb7f7c000
mmap2(0xb7f83000, 10396, PROT_READ|PROT_WRITE, 
MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0xb7f83000
close(3)                                = 0
access("/etc/ld.so.nohwcap", F_OK)      = -1 ENOENT (No such file or directory)
open("/lib/libattr.so.1", O_RDONLY)     = 3
read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0P\f\0\000"..., 512) = 
512
fstat64(3, {st_mode=S_IFREG|0644, st_size=12640, ...}) = 0
mmap2(NULL, 15544, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 
0xb7e50000
mmap2(0xb7e53000, 4096, PROT_READ|PROT_WRITE, 
MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x2) = 0xb7e53000
close(3)                                = 0
access("/etc/ld.so.nohwcap", F_OK)      = -1 ENOENT (No such file or directory)
open("/lib/tls/libdl.so.2", O_RDONLY)   = 3
read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0\20\f\0"..., 512) = 512
fstat64(3, {st_mode=S_IFREG|0644, st_size=9592, ...}) = 0
mmap2(NULL, 12404, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 
0xb7e4c000
mmap2(0xb7e4e000, 8192, PROT_READ|PROT_WRITE, 
MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x1) = 0xb7e4e000
close(3)                                = 0
access("/etc/ld.so.nohwcap", F_OK)      = -1 ENOENT (No such file or directory)
open("/lib/libsepol.so.1", O_RDONLY)    = 3
read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0\0200\0"..., 512) = 512
fstat64(3, {st_mode=S_IFREG|0644, st_size=219824, ...}) = 0
mmap2(NULL, 265152, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 
0xb7e0b000
mmap2(0xb7e41000, 4096, PROT_READ|PROT_WRITE, 
MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x35) = 0xb7e41000
mmap2(0xb7e42000, 39872, PROT_READ|PROT_WRITE, 
MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0xb7e42000
close(3)                                = 0
mmap2(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 
0xb7e0a000
mprotect(0xb7f7c000, 20480, PROT_READ)  = 0
set_thread_area({entry_number:-1 -> 6, base_addr:0xb7e0a9a0, limit:1048575, 
seg_32bit:1, contents:0, read_exec_only:0, limit_in_pages:1, seg_not_present:0, 
useable:1}) = 0
munmap(0xb7fa2000, 50033)               = 0
access("/etc/selinux/", F_OK)           = -1 ENOENT (No such file or directory)
brk(0)                                  = 0x8058000
brk(0x8079000)                          = 0x8079000
open("/proc/mounts", O_RDONLY|O_LARGEFILE) = 3
fstat64(3, {st_mode=S_IFREG|0444, st_size=0, ...}) = 0
mmap2(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 
0xb7fae000
read(3, "rootfs / rootfs rw 0 0\nnone /sys"..., 1024) = 575
read(3, "", 1024)                       = 0
close(3)                                = 0
munmap(0xb7fae000, 4096)                = 0
open("/usr/lib/locale/locale-archive", O_RDONLY|O_LARGEFILE) = 3
fstat64(3, {st_mode=S_IFREG|0644, st_size=1209216, ...}) = 0
mmap2(NULL, 1209216, PROT_READ, MAP_PRIVATE, 3, 0) = 0xb7ce2000
close(3)                                = 0
geteuid32()                             = 2006
ioctl(0, SNDCTL_TMR_TIMEBASE or TCGETS, {B38400 opost isig icanon echo ...}) = 0
open("/proc/filesystems", O_RDONLY|O_LARGEFILE) = 3
read(3, "nodev\tsysfs\nnodev\trootfs\nnodev\tb"..., 4095) = 309
close(3)                                = 0
stat64("dir2.new", 0xbfd07114)          = -1 ENOENT (No such file or directory)
lstat64("dir2", {st_mode=S_IFDIR|0775, st_size=1024, ...}) = 0
lstat64("dir2.new", 0xbfd06ee4)         = -1 ENOENT (No such file or directory)
rename("dir2", "dir2.new")              = -1 EXDEV (Invalid cross-device link)
unlink("dir2.new")                      = -1 ENOENT (No such file or directory)
mkdir("dir2.new", 040775)               = 0
lstat64("dir2.new", {st_mode=S_IFDIR|0755, st_size=1024, ...}) = 0
stat64("dir2.new", {st_mode=S_IFDIR|0755, st_size=1024, ...}) = 0
open("dir2", O_RDONLY|O_NONBLOCK|O_LARGEFILE|O_DIRECTORY) = 3
fstat64(3, {st_mode=S_IFDIR|0775, st_size=1024, ...}) = 0
fcntl64(3, F_SETFD, FD_CLOEXEC)         = 0
getdents64(3, /* 5 entries */, 1024)    = 144
getdents64(3, /* 0 entries */, 1024)    = 0
close(3)                                = 0
lstat64("dir2/file3.new", {st_mode=S_IFREG|0644, st_size=0, ...}) = 0
rename("dir2/file3.new", "dir2.new/file3.new") = 0
lstat64("dir2/file1", {st_mode=S_IFREG|0644, st_size=0, ...}) = 0
rename("dir2/file1", "dir2.new/file1")  = 0
lstat64("dir2/file2", {st_mode=S_IFREG|0644, st_size=0, ...}) = 0
rename("dir2/file2", "dir2.new/file2")  = 0
utimes("dir2.new", {1211508282, 0})     = 0
chown32("dir2.new", 0, 5001)            = -1 EPERM (Operation not permitted)
getxattr("dir2", "system.posix_acl_access", 0xbfd06c10, 132) = -1 EOPNOTSUPP 
(Operation not supported)
setxattr("dir2.new", "system.posix_acl_access", 
"\x02\x00\x00\x00\x01\x00\x07\x00\xff\xff\xff\xff\x04\x00\x07\x00\xff\xff\xff\xff
 \x00\x05\x00\xff\xff\xff\xff", 28, 0) = -1 EOPNOTSUPP (Operation not supported)
chmod("dir2.new", 040775)               = 0
unlink("dir2")                          = -1 EISDIR (Is a directory)
open(".", O_RDONLY|O_LARGEFILE)         = 3
lstat64("dir2", {st_mode=S_IFDIR|0775, st_size=1024, ...}) = 0
chdir("dir2")                           = 0
lstat64(".", {st_mode=S_IFDIR|0775, st_size=1024, ...}) = 0
open(".", O_RDONLY|O_NONBLOCK|O_LARGEFILE|O_DIRECTORY) = 4
fstat64(4, {st_mode=S_IFDIR|0775, st_size=1024, ...}) = 0
fcntl64(4, F_SETFD, FD_CLOEXEC)         = 0
getdents64(4, /* 2 entries */, 1024)    = 48
getdents64(4, /* 0 entries */, 1024)    = 0
close(4)                                = 0
fchdir(3)                               = 0
rmdir("dir2")                           = 0
close(3)                                = 0
close(1)                                = 0
exit_group(0)                           = ?
Process 19565 detached
[EMAIL PROTECTED]:/union/dir1$ ls -l
insgesamt 4
drwxrwxr-x 2 crunchy Domain Users 1024 2008-05-23 02:44 dir2.new
drwxr-xr-x 2 crunchy Domain Users 1024 2008-05-23 02:44 dir3.crunchy
drwxr-xr-x 2 crunchy Domain Users 1024 2008-05-23 02:49 dir3.new
drwxr-xr-x 2 crunchy Domain Users 1024 2008-05-23 02:50 dir4.new
-rw-r--r-- 1 crunchy Domain Users    0 2008-05-23 02:36 file1.new
-rw-r--r-- 1 crunchy Domain Users    0 2008-05-23 02:36 file2

Attachment: signature.asc
Description: This is a digitally signed message part.

-------------------------------------------------------------------------
This SF.net email is sponsored by the 2008 JavaOne(SM) Conference 
Don't miss this year's exciting event. There's still time to save $100. 
Use priority code J8TL2D2. 
http://ad.doubleclick.net/clk;198757673;13503038;p?http://java.sun.com/javaone

Reply via email to