Bug 58045 - deleting directory on samba server fails: Could not remove directory /path/to/dir
Summary: deleting directory on samba server fails: Could not remove directory /path/to...
Status: RESOLVED NOT A BUG
Alias: None
Product: kio
Classification: Frameworks and Libraries
Component: general (show other bugs)
Version: unspecified
Platform: Mandrake RPMs Linux
: NOR normal
Target Milestone: ---
Assignee: David Faure
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2003-05-03 04:48 UTC by Sebastian
Modified: 2011-03-23 19:11 UTC (History)
3 users (show)

See Also:
Latest Commit:
Version Fixed In:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Sebastian 2003-05-03 04:48:07 UTC
Version:            (using KDE KDE 3.1)
Installed from:    Mandrake RPMs
Compiler:          gcc-3.2.2-3mdk.i586.rpm 
OS:          Linux

When I try to delete a directory on a smb server I'm getting following message: "Could not remove directory /path/to/dir".

I have full rights and it doesn't work on full/empty dirs. If dir is not empty, everything it contains is deleted, but the directory self not. I also tried to create a new dir on the smb share and then delete it: the same error-message.
I can delete the dir from shell when i close the konqueror window (still throu smb).

samba-2.2.7a-9.2mdk
kdelibs-3.1-58mdk
kdebase-3.1-83mdk
Comment 1 Stephan Kulow 2003-05-03 17:31:39 UTC
as usual: does ldd /opt/kde3/lib/kde3/kio_smb.so give you a hint about libsmbclient? 
Does the /path/to/dir contain any special characters (like non-us-ascii) 
Comment 2 Sebastian 2003-05-04 04:11:59 UTC
1) ldd ... doesn't list the libsmbclient lib 
2) path was: /home/sebastian/smb/data so nothing special there 
 
I build kde without the libsmb, but does it matter, since the share was mounted using 
smbmount from the samba package? So the dir was there, ready to use. 
If it does matter, must I recompile the libs (and base?) or can I solve it in a faster way? 
 
Tnx 
Comment 3 Alexander Neundorf 2003-05-04 10:50:27 UTC
Subject: Re:  deleting directory on samba server fails: Could not remove directory /path/to/dir

On Sunday 04 May 2003 04:12, you wrote:
> ------- Additional Comments From blue@ulyssis.org  2003-05-04 04:11 -------
> 1) ldd ... doesn't list the libsmbclient lib
> 2) path was: /home/sebastian/smb/data so nothing special there
>
> I build kde without the libsmb, but does it matter, since the share was
> mounted using smbmount from the samba package? So the dir was there, ready
> to use. If it does matter, must I recompile the libs (and base?) or can I
> solve it in a faster way?
>
> Tnx

I'm quite sure I fixed this bug in current cvs. Either wait for KDE 3.1.2, 
update kdebase/kioslave/smbro/ from cvs (HEAD or KDE_3_1_BRANCH) or get the 
ioslave as a single package from 
http://www.neundorf.net/?page=software-linux.html

Bye
Alex

Comment 4 Stephan Kulow 2003-09-14 12:50:54 UTC
we'd need some strace output. 
Comment 5 Sebastian 2003-09-14 14:14:37 UTC
Subject: Re:  deleting directory on samba server fails: Could not remove directory /path/to/dir         

Hi

Config changed a bit from last time, but problem persisted:
kde 3.1.2 (self-compiled)

Description of the problem: whenever i'm on the samba share, i can't delete
directories within konqueror or from shell. Only when i leave the hole share
with the konqueror (so when i'm not in any dir on that share) i can delete
it from within shell.

Traces of " rm -fr testing" with testing a directory on the samba server.

Strace with konqueror focused in the share:
********************************

2101  execve("/bin/rm", ["rm", "-fr", "testing"], [/* 50 vars */]) = 0
2101  uname({sys="Linux", node="vm.kotnet.org", ...}) = 0
2101  brk(0)                            = 0x804f588
2101  open("/etc/ld.so.preload", O_RDONLY) = -1 ENOENT (No such file or
directory)
2101  open("/etc/ld.so.cache", O_RDONLY) = 3
2101  fstat64(3, {st_mode=S_IFREG|0644, st_size=45040, ...}) = 0
2101  old_mmap(NULL, 45040, PROT_READ, MAP_PRIVATE, 3, 0) = 0x40014000
2101  close(3)                          = 0
2101  open("/lib/libc.so.6", O_RDONLY)  = 3
2101  read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0\0Y\1\000"...,
1024) = 1024
2101  fstat64(3, {st_mode=S_IFREG|0755, st_size=1257316, ...}) = 0
2101  old_mmap(NULL, 4096, PROT_READ|PROT_WRITE,
MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x4001f000
2101  old_mmap(NULL, 1263268, PROT_READ|PROT_EXEC, MAP_PRIVATE, 3, 0) =
0x40020000
2101  mprotect(0x4014f000, 22180, PROT_NONE) = 0
2101  old_mmap(0x4014f000, 12288, PROT_READ|PROT_WRITE,
MAP_PRIVATE|MAP_FIXED, 3, 0x12f000) = 0x4014f000
2101  old_mmap(0x40152000, 9892, PROT_READ|PROT_WRITE,
MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x40152000
2101  close(3)                          = 0
2101  munmap(0x40014000, 45040)         = 0
2101  open("/usr/share/locale/locale-archive", O_RDONLY|O_LARGEFILE) = -1
ENOENT (No such file or directory)
2101  brk(0)                            = 0x804f588
2101  brk(0x8050588)                    = 0x8050588
2101  brk(0)                            = 0x8050588
2101  brk(0x8051000)                    = 0x8051000
2101  open("/usr/share/locale/locale.alias", O_RDONLY) = 3
2101  fstat64(3, {st_mode=S_IFREG|0644, st_size=2601, ...}) = 0
2101  old_mmap(NULL, 4096, PROT_READ|PROT_WRITE,
MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x40014000
2101  read(3, "# Locale name alias data base.\n#"..., 4096) = 2601
2101  read(3, "", 4096)                 = 0
2101  close(3)                          = 0
2101  munmap(0x40014000, 4096)          = 0
2101  open("/usr/share/locale/en_BE/LC_IDENTIFICATION", O_RDONLY) = 3
2101  fstat64(3, {st_mode=S_IFREG|0644, st_size=343, ...}) = 0
2101  old_mmap(NULL, 343, PROT_READ, MAP_PRIVATE, 3, 0) = 0x40014000
2101  close(3)                          = 0
2101  open("/usr/share/locale/en_BE/LC_MEASUREMENT", O_RDONLY) = 3
2101  fstat64(3, {st_mode=S_IFREG|0644, st_size=29, ...}) = 0
2101  old_mmap(NULL, 29, PROT_READ, MAP_PRIVATE, 3, 0) = 0x40015000
2101  close(3)                          = 0
2101  open("/usr/share/locale/en_BE/LC_TELEPHONE", O_RDONLY) = 3
2101  fstat64(3, {st_mode=S_IFREG|0644, st_size=55, ...}) = 0
2101  old_mmap(NULL, 55, PROT_READ, MAP_PRIVATE, 3, 0) = 0x40016000
2101  close(3)                          = 0
2101  open("/usr/share/locale/en_BE/LC_ADDRESS", O_RDONLY) = 3
2101  fstat64(3, {st_mode=S_IFREG|0644, st_size=133, ...}) = 0
2101  old_mmap(NULL, 133, PROT_READ, MAP_PRIVATE, 3, 0) = 0x40017000
2101  close(3)                          = 0
2101  open("/usr/share/locale/en_BE/LC_NAME", O_RDONLY) = 3
2101  fstat64(3, {st_mode=S_IFREG|0644, st_size=68, ...}) = 0
2101  old_mmap(NULL, 68, PROT_READ, MAP_PRIVATE, 3, 0) = 0x40018000
2101  close(3)                          = 0
2101  open("/usr/share/locale/en_BE/LC_PAPER", O_RDONLY) = 3
2101  fstat64(3, {st_mode=S_IFREG|0644, st_size=40, ...}) = 0
2101  old_mmap(NULL, 40, PROT_READ, MAP_PRIVATE, 3, 0) = 0x40019000
2101  close(3)                          = 0
2101  open("/usr/share/locale/en_BE/LC_MESSAGES", O_RDONLY) = 3
2101  fstat64(3, {st_mode=S_IFDIR|0755, st_size=4096, ...}) = 0
2101  close(3)                          = 0
2101  open("/usr/share/locale/en_BE/LC_MESSAGES/SYS_LC_MESSAGES", O_RDONLY)
= 3
2101  fstat64(3, {st_mode=S_IFREG|0644, st_size=58, ...}) = 0
2101  old_mmap(NULL, 58, PROT_READ, MAP_PRIVATE, 3, 0) = 0x4001a000
2101  close(3)                          = 0
2101  open("/usr/share/locale/en_BE/LC_MONETARY", O_RDONLY) = 3
2101  fstat64(3, {st_mode=S_IFREG|0644, st_size=292, ...}) = 0
2101  old_mmap(NULL, 292, PROT_READ, MAP_PRIVATE, 3, 0) = 0x4001b000
2101  close(3)                          = 0
2101  open("/usr/share/locale/en_BE/LC_COLLATE", O_RDONLY) = 3
2101  fstat64(3, {st_mode=S_IFREG|0644, st_size=22592, ...}) = 0
2101  old_mmap(NULL, 22592, PROT_READ, MAP_PRIVATE, 3, 0) = 0x40155000
2101  close(3)                          = 0
2101  open("/usr/share/locale/en_BE/LC_TIME", O_RDONLY) = 3
2101  fstat64(3, {st_mode=S_IFREG|0644, st_size=2381, ...}) = 0
2101  old_mmap(NULL, 2381, PROT_READ, MAP_PRIVATE, 3, 0) = 0x4001c000
2101  close(3)                          = 0
2101  open("/usr/share/locale/en_BE/LC_NUMERIC", O_RDONLY) = 3
2101  fstat64(3, {st_mode=S_IFREG|0644, st_size=60, ...}) = 0
2101  old_mmap(NULL, 60, PROT_READ, MAP_PRIVATE, 3, 0) = 0x4001d000
2101  close(3)                          = 0
2101  open("/usr/share/locale/en_BE/LC_CTYPE", O_RDONLY) = 3
2101  fstat64(3, {st_mode=S_IFREG|0644, st_size=178720, ...}) = 0
2101  old_mmap(NULL, 178720, PROT_READ, MAP_PRIVATE, 3, 0) = 0x4015b000
2101  close(3)                          = 0
2101  ioctl(0, SNDCTL_TMR_TIMEBASE, {B38400 opost isig icanon echo ...}) = 0
2101  brk(0)                            = 0x8051000
2101  brk(0x8052000)                    = 0x8052000
2101  brk(0)                            = 0x8052000
2101  brk(0x8053000)                    = 0x8053000
2101  brk(0)                            = 0x8053000
2101  brk(0x8054000)                    = 0x8054000
2101  unlink("testing")                 = -1 EISDIR (Is a directory)
2101  open(".", O_RDONLY|O_LARGEFILE|O_DIRECTORY) = 3
2101  lstat64("testing", {st_mode=S_IFDIR|0755, st_size=4096, ...}) = 0
2101  chdir("testing")                  = 0
2101  lstat64(".", {st_mode=S_IFDIR|0755, st_size=4096, ...}) = 0
2101  open("/dev/null", O_RDONLY|O_NONBLOCK|O_DIRECTORY) = -1 ENOTDIR (Not a
directory)
2101  open(".", O_RDONLY|O_NONBLOCK|O_LARGEFILE|O_DIRECTORY) = 4
2101  fstat64(4, {st_mode=S_IFDIR|0755, st_size=4096, ...}) = 0
2101  fcntl64(4, F_SETFD, FD_CLOEXEC)   = 0
2101  brk(0)                            = 0x8054000
2101  brk(0x8055000)                    = 0x8055000
2101  getdents64(4, /* 3 entries */, 4096) = 80
2101  unlink("testing")                 = -1 EISDIR (Is a directory)
2101  lstat64("testing", {st_mode=S_IFDIR|0755, st_size=4096, ...}) = 0
2101  chdir("testing")                  = 0
2101  close(4)                          = 0
2101  lstat64(".", {st_mode=S_IFDIR|0755, st_size=4096, ...}) = 0
2101  open(".", O_RDONLY|O_NONBLOCK|O_LARGEFILE|O_DIRECTORY) = 4
2101  fstat64(4, {st_mode=S_IFDIR|0755, st_size=4096, ...}) = 0
2101  fcntl64(4, F_SETFD, FD_CLOEXEC)   = 0
2101  getdents64(4, /* 2 entries */, 4096) = 48
2101  getdents64(4, /* 0 entries */, 4096) = 0
2101  close(4)                          = 0
2101  chdir("..")                       = 0
2101  lstat64(".", {st_mode=S_IFDIR|0755, st_size=4096, ...}) = 0
2101  rmdir("testing")                  = -1 EBUSY (Device or resource busy)
2101  open("/usr/share/locale/en_BE/LC_MESSAGES/coreutils.mo", O_RDONLY)
= -1 ENOENT (No such file or directory)
2101  open("/usr/share/locale/en/LC_MESSAGES/coreutils.mo", O_RDONLY) = -1
ENOENT (No such file or directory)
2101  open("/usr/share/locale/en_US/LC_MESSAGES/coreutils.mo", O_RDONLY)
= -1 ENOENT (No such file or directory)
2101  write(2, "rm: ", 4)               = 4
2101  write(2, "cannot remove directory `testing"..., 41) = 41
2101  open("/usr/share/locale/en_BE/LC_MESSAGES/libc.mo", O_RDONLY) = -1
ENOENT (No such file or directory)
2101  open("/usr/share/locale/en/LC_MESSAGES/libc.mo", O_RDONLY) = -1 ENOENT
(No such file or directory)
2101  open("/usr/share/locale/en_US/LC_MESSAGES/libc.mo", O_RDONLY) = -1
ENOENT (No such file or directory)
2101  write(2, ": Device or resource busy", 25) = 25
2101  write(2, "\n", 1)                 = 1
2101  open(".", O_RDONLY|O_NONBLOCK|O_LARGEFILE|O_DIRECTORY) = 4
2101  fstat64(4, {st_mode=S_IFDIR|0755, st_size=4096, ...}) = 0
2101  fcntl64(4, F_SETFD, FD_CLOEXEC)   = 0
2101  brk(0)                            = 0x8055000
2101  brk(0x8056000)                    = 0x8056000
2101  getdents64(4, /* 3 entries */, 4096) = 80
2101  getdents64(4, /* 0 entries */, 4096) = 0
2101  close(4)                          = 0
2101  fchdir(3)                         = 0
2101  lstat64(".", {st_mode=S_IFDIR|0755, st_size=4096, ...}) = 0
2101  exit_group(1)                     = ?

**********************

Strace when i leave the share in konqueror:

************************

2253  execve("/bin/rm", ["rm", "-fr", "testing"], [/* 50 vars */]) = 0
2253  uname({sys="Linux", node="vm.kotnet.org", ...}) = 0
2253  brk(0)                            = 0x804f588
2253  open("/etc/ld.so.preload", O_RDONLY) = -1 ENOENT (No such file or
directory)
2253  open("/etc/ld.so.cache", O_RDONLY) = 3
2253  fstat64(3, {st_mode=S_IFREG|0644, st_size=45040, ...}) = 0
2253  old_mmap(NULL, 45040, PROT_READ, MAP_PRIVATE, 3, 0) = 0x40014000
2253  close(3)                          = 0
2253  open("/lib/libc.so.6", O_RDONLY)  = 3
2253  read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0\0Y\1\000"...,
1024) = 1024
2253  fstat64(3, {st_mode=S_IFREG|0755, st_size=1257316, ...}) = 0
2253  old_mmap(NULL, 4096, PROT_READ|PROT_WRITE,
MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x4001f000
2253  old_mmap(NULL, 1263268, PROT_READ|PROT_EXEC, MAP_PRIVATE, 3, 0) =
0x40020000
2253  mprotect(0x4014f000, 22180, PROT_NONE) = 0
2253  old_mmap(0x4014f000, 12288, PROT_READ|PROT_WRITE,
MAP_PRIVATE|MAP_FIXED, 3, 0x12f000) = 0x4014f000
2253  old_mmap(0x40152000, 9892, PROT_READ|PROT_WRITE,
MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x40152000
2253  close(3)                          = 0
2253  munmap(0x40014000, 45040)         = 0
2253  open("/usr/share/locale/locale-archive", O_RDONLY|O_LARGEFILE) = -1
ENOENT (No such file or directory)
2253  brk(0)                            = 0x804f588
2253  brk(0x8050588)                    = 0x8050588
2253  brk(0)                            = 0x8050588
2253  brk(0x8051000)                    = 0x8051000
2253  open("/usr/share/locale/locale.alias", O_RDONLY) = 3
2253  fstat64(3, {st_mode=S_IFREG|0644, st_size=2601, ...}) = 0
2253  old_mmap(NULL, 4096, PROT_READ|PROT_WRITE,
MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x40014000
2253  read(3, "# Locale name alias data base.\n#"..., 4096) = 2601
2253  read(3, "", 4096)                 = 0
2253  close(3)                          = 0
2253  munmap(0x40014000, 4096)          = 0
2253  open("/usr/share/locale/en_BE/LC_IDENTIFICATION", O_RDONLY) = 3
2253  fstat64(3, {st_mode=S_IFREG|0644, st_size=343, ...}) = 0
2253  old_mmap(NULL, 343, PROT_READ, MAP_PRIVATE, 3, 0) = 0x40014000
2253  close(3)                          = 0
2253  open("/usr/share/locale/en_BE/LC_MEASUREMENT", O_RDONLY) = 3
2253  fstat64(3, {st_mode=S_IFREG|0644, st_size=29, ...}) = 0
2253  old_mmap(NULL, 29, PROT_READ, MAP_PRIVATE, 3, 0) = 0x40015000
2253  close(3)                          = 0
2253  open("/usr/share/locale/en_BE/LC_TELEPHONE", O_RDONLY) = 3
2253  fstat64(3, {st_mode=S_IFREG|0644, st_size=55, ...}) = 0
2253  old_mmap(NULL, 55, PROT_READ, MAP_PRIVATE, 3, 0) = 0x40016000
2253  close(3)                          = 0
2253  open("/usr/share/locale/en_BE/LC_ADDRESS", O_RDONLY) = 3
2253  fstat64(3, {st_mode=S_IFREG|0644, st_size=133, ...}) = 0
2253  old_mmap(NULL, 133, PROT_READ, MAP_PRIVATE, 3, 0) = 0x40017000
2253  close(3)                          = 0
2253  open("/usr/share/locale/en_BE/LC_NAME", O_RDONLY) = 3
2253  fstat64(3, {st_mode=S_IFREG|0644, st_size=68, ...}) = 0
2253  old_mmap(NULL, 68, PROT_READ, MAP_PRIVATE, 3, 0) = 0x40018000
2253  close(3)                          = 0
2253  open("/usr/share/locale/en_BE/LC_PAPER", O_RDONLY) = 3
2253  fstat64(3, {st_mode=S_IFREG|0644, st_size=40, ...}) = 0
2253  old_mmap(NULL, 40, PROT_READ, MAP_PRIVATE, 3, 0) = 0x40019000
2253  close(3)                          = 0
2253  open("/usr/share/locale/en_BE/LC_MESSAGES", O_RDONLY) = 3
2253  fstat64(3, {st_mode=S_IFDIR|0755, st_size=4096, ...}) = 0
2253  close(3)                          = 0
2253  open("/usr/share/locale/en_BE/LC_MESSAGES/SYS_LC_MESSAGES", O_RDONLY)
= 3
2253  fstat64(3, {st_mode=S_IFREG|0644, st_size=58, ...}) = 0
2253  old_mmap(NULL, 58, PROT_READ, MAP_PRIVATE, 3, 0) = 0x4001a000
2253  close(3)                          = 0
2253  open("/usr/share/locale/en_BE/LC_MONETARY", O_RDONLY) = 3
2253  fstat64(3, {st_mode=S_IFREG|0644, st_size=292, ...}) = 0
2253  old_mmap(NULL, 292, PROT_READ, MAP_PRIVATE, 3, 0) = 0x4001b000
2253  close(3)                          = 0
2253  open("/usr/share/locale/en_BE/LC_COLLATE", O_RDONLY) = 3
2253  fstat64(3, {st_mode=S_IFREG|0644, st_size=22592, ...}) = 0
2253  old_mmap(NULL, 22592, PROT_READ, MAP_PRIVATE, 3, 0) = 0x40155000
2253  close(3)                          = 0
2253  open("/usr/share/locale/en_BE/LC_TIME", O_RDONLY) = 3
2253  fstat64(3, {st_mode=S_IFREG|0644, st_size=2381, ...}) = 0
2253  old_mmap(NULL, 2381, PROT_READ, MAP_PRIVATE, 3, 0) = 0x4001c000
2253  close(3)                          = 0
2253  open("/usr/share/locale/en_BE/LC_NUMERIC", O_RDONLY) = 3
2253  fstat64(3, {st_mode=S_IFREG|0644, st_size=60, ...}) = 0
2253  old_mmap(NULL, 60, PROT_READ, MAP_PRIVATE, 3, 0) = 0x4001d000
2253  close(3)                          = 0
2253  open("/usr/share/locale/en_BE/LC_CTYPE", O_RDONLY) = 3
2253  fstat64(3, {st_mode=S_IFREG|0644, st_size=178720, ...}) = 0
2253  old_mmap(NULL, 178720, PROT_READ, MAP_PRIVATE, 3, 0) = 0x4015b000
2253  close(3)                          = 0
2253  ioctl(0, SNDCTL_TMR_TIMEBASE, {B38400 opost isig icanon echo ...}) = 0
2253  brk(0)                            = 0x8051000
2253  brk(0x8052000)                    = 0x8052000
2253  brk(0)                            = 0x8052000
2253  brk(0x8053000)                    = 0x8053000
2253  brk(0)                            = 0x8053000
2253  brk(0x8054000)                    = 0x8054000
2253  unlink("testing")                 = -1 EISDIR (Is a directory)
2253  open(".", O_RDONLY|O_LARGEFILE|O_DIRECTORY) = 3
2253  lstat64("testing", {st_mode=S_IFDIR|0755, st_size=4096, ...}) = 0
2253  chdir("testing")                  = 0
2253  lstat64(".", {st_mode=S_IFDIR|0755, st_size=4096, ...}) = 0
2253  open("/dev/null", O_RDONLY|O_NONBLOCK|O_DIRECTORY) = -1 ENOTDIR (Not a
directory)
2253  open(".", O_RDONLY|O_NONBLOCK|O_LARGEFILE|O_DIRECTORY) = 4
2253  fstat64(4, {st_mode=S_IFDIR|0755, st_size=4096, ...}) = 0
2253  fcntl64(4, F_SETFD, FD_CLOEXEC)   = 0
2253  brk(0)                            = 0x8054000
2253  brk(0x8055000)                    = 0x8055000
2253  getdents64(4, /* 3 entries */, 4096) = 80
2253  unlink("testing")                 = -1 EISDIR (Is a directory)
2253  lstat64("testing", {st_mode=S_IFDIR|0755, st_size=4096, ...}) = 0
2253  chdir("testing")                  = 0
2253  close(4)                          = 0
2253  lstat64(".", {st_mode=S_IFDIR|0755, st_size=4096, ...}) = 0
2253  open(".", O_RDONLY|O_NONBLOCK|O_LARGEFILE|O_DIRECTORY) = 4
2253  fstat64(4, {st_mode=S_IFDIR|0755, st_size=4096, ...}) = 0
2253  fcntl64(4, F_SETFD, FD_CLOEXEC)   = 0
2253  getdents64(4, /* 2 entries */, 4096) = 48
2253  getdents64(4, /* 0 entries */, 4096) = 0
2253  close(4)                          = 0
2253  chdir("..")                       = 0
2253  lstat64(".", {st_mode=S_IFDIR|0755, st_size=4096, ...}) = 0
2253  rmdir("testing")                  = 0
2253  open(".", O_RDONLY|O_NONBLOCK|O_LARGEFILE|O_DIRECTORY) = 4
2253  fstat64(4, {st_mode=S_IFDIR|0755, st_size=4096, ...}) = 0
2253  fcntl64(4, F_SETFD, FD_CLOEXEC)   = 0
2253  getdents64(4, /* 2 entries */, 4096) = 48
2253  getdents64(4, /* 0 entries */, 4096) = 0
2253  close(4)                          = 0
2253  fchdir(3)                         = 0
2253  lstat64(".", {st_mode=S_IFDIR|0755, st_size=4096, ...}) = 0
2253  rmdir("testing")                  = 0
2253  exit_group(0)                     = ?



*************************

Hopefully it helped.

Sebastian

----- Original Message -----
From: "Stephan Kulow" <coolo@kde.org>
To: <blue@ulyssis.org>
Sent: Sunday, September 14, 2003 12:50 PM
Subject: [Bug 58045] deleting directory on samba server fails: Could not
remove directory /path/to/dir


> ------- You are receiving this mail because: -------
> You reported the bug, or are watching the reporter.
>
> http://bugs.kde.org/show_bug.cgi?id=58045
> coolo@kde.org changed:
>
>            What    |Removed                     |Added
> --------------------------------------------------------------------------
--
>          AssignedTo|neundorf@kde.org            |faure@kde.org
>           Component|smb                         |general
>
>
>
> ------- Additional Comments From coolo@kde.org  2003-09-14 12:50 -------
> we'd need some strace output.

Comment 6 Stephan Kulow 2003-09-14 14:59:57 UTC
well, Device or resource busy - that's the same you get with any other software 
when you put it in the directory. Question is: does it work when you remove it 
from within konqueror. Anything else is not a bug but the way it works. 
Comment 7 Sebastian 2003-09-14 15:18:40 UTC
Subject: Re:  deleting directory on samba server fails: Could not remove directory /path/to/dir         

No, i can't delete dirs from within konqueror on the samba server. I get the
same error: "Could not remove directory /the/directory". I can do it on
local disk, without any probs.
Exact steps:
1) mount samba share to a dir
2) go into this dir/share and create a new dir
3) try to delete the new dir without even going into it: with the above
error

So even newly created dirs (no process has entered this dir yet) can't be
deleted.
----- Original Message -----
From: "Stephan Kulow" <coolo@kde.org>
To: <blue@ulyssis.org>
Sent: Sunday, September 14, 2003 2:59 PM
Subject: [Bug 58045] deleting directory on samba server fails: Could not
remove directory /path/to/dir


> ------- You are receiving this mail because: -------
> You reported the bug, or are watching the reporter.
>
> http://bugs.kde.org/show_bug.cgi?id=58045
>
>
>
>
> ------- Additional Comments From coolo@kde.org  2003-09-14 14:59 -------
> well, Device or resource busy - that's the same you get with any other
software
> when you put it in the directory. Question is: does it work when you
remove it
> from within konqueror. Anything else is not a bug but the way it works.

Comment 8 Michael Binder 2004-05-15 10:43:35 UTC
I have the same problem with my Mandrake 10.0 and 9.2 box.

The samba shares are mounted via fstab. In konqueror I can't delete directories in the mounted share. But at the command line I can delete them with rm -R dirtodelete/ .

When I connect to the share via konqueror: smb://... I can delete the directories. Files are no problem. 

Mandrake 10.0:
samba-client-3.0.2a-3mdk
kdelibs-common-3.2-36mdk
kdebase-common-3.2-79mdk

$ ldd /usr/lib/kde3/kio_smb.so | grep smb 
libsmbclient.so.0 => /usr/lib/libsmbclient.so.0 (0x4137f000)


Mandrake 9.2:
samba-client-2.2.8a-13.1.92mdk
kdelibs-common-3.1.3-35.1.92mdk
kdebase-3.1.3-79.1.92mdk

thx,
Michael
Comment 9 Stephan Kulow 2004-05-15 11:13:34 UTC
try lsof or fuser to find out what process is still busy on the directory
Comment 10 Michael Binder 2004-05-19 10:46:43 UTC
Hi!

lsof told me that fam is accessing the directory.
So fam ist the problem. I deactivated fam and now I can delete to directories without trouble.

thank you,
Michael
Comment 11 Cornelius Wasmund 2005-03-10 18:59:25 UTC
Hi,

i can`t deleted a directory with full rights on a samba-share who was mounted in my local filesytem.

lsof shows me "kdeinit" which the directory blocks.

Workaround is kde-restart .... any better ideas?

thank you,

Cornelius
Comment 12 David Faure 2005-03-10 20:22:00 UTC
> lsof shows me "kdeinit" which the directory blocks.

What does "ps auxww" show about that kdeinit process? i.e. the full command-line. The process name itself doesn't tell much.
Comment 13 Cornelius Wasmund 2005-03-18 18:36:21 UTC
/home/KUHoepcke/samba/Service/Windows/Utilities/Datei-Utilities"
COMMAND   PID      USER   FD   TYPE DEVICE SIZE NODE NAME
kdeinit 10161 KUHoepcke  155r   DIR   0,25    0 
1299 /home/KUHoepcke/samba/Service/Windows/Utilities/Datei-Utilities
Comment 14 George Goldberg 2008-02-18 03:50:50 UTC
Is this bug still present in a recent KDE version, such as 3.5.9 or 4.0.1?
Comment 15 Dawit Alemayehu 2011-03-23 19:11:25 UTC
If this issue persists in KDE 4.0, please feel free to reopen.