3.0.25b: smbclient cannot rename files in dfs roots

Thomas Bork tombork at web.de
Tue Jul 24 19:41:38 GMT 2007


Hi @all,

smbclient from 3.0.25b cannot rename files in DFS roots, no matter, 
which os version holds the shares for the DFS root:

smb: \sambatest\> dir
   .                                  DA        0  Tue Jul 24 20:55:46 2007
   ..                                 DA        0  Tue Jul 24 20:55:46 2007
   test1.txt                           A        0  Tue Jul 24 20:55:15 2007
   äöü€.txt                                     0  Sun Sep 25 13:29:03 2005

                 38154 blocks of size 4194304. 12479 blocks available
smb: \sambatest\> rename test1.txt test.txt
NT_STATUS_OBJECT_PATH_NOT_FOUND renaming files

 From log.smbd (against XP SP2 which holds the share):

[2007/07/24 21:24:35, 5] smbd/filename.c:unix_convert(147)
   unix_convert called on file "sambatest/test1.txt"
[2007/07/24 21:24:35, 5] smbd/filename.c:unix_convert(246)
   unix_convert begin: name = sambatest/test1.txt, dirpath = , start = 
sambatest/test1.txt
[2007/07/24 21:24:35, 5] smbd/statcache.c:stat_cache_add(140)
   stat_cache_add: Added entry (83fa540:sizea) SAMBATEST -> sambatest
[2007/07/24 21:24:35, 5] smbd/dir.c:OpenDir(1078)
   OpenDir: Can't open sambatest. No such file or directory
[2007/07/24 21:24:35, 3] smbd/filename.c:scan_directory(586)
   scan dir didn't open dir [sambatest]
[2007/07/24 21:24:35, 5] smbd/filename.c:unix_convert(440)
   New file test1.txt
[2007/07/24 21:24:35, 5] smbd/msdfs.c:is_msdfs_link(319)
   is_msdfs_link: sambatest/test1.txt does not exist.
[2007/07/24 21:24:35, 5] smbd/msdfs.c:is_msdfs_link(337)
   is_msdfs_link: sambatest -> msdfs:tb3\sambatest
[2007/07/24 21:24:35, 4] smbd/msdfs.c:dfs_path_lookup(444)
   dfs_path_lookup: Redirecting \testeisneu\dfs1\sambatest\test1.txt 
because parent sambatest is dfs link
[2007/07/24 21:24:35, 3] smbd/msdfs.c:dfs_redirect(531)
   dfs_redirect: Redirecting \testeisneu\dfs1\sambatest\test1.txt
[2007/07/24 21:24:35, 3] smbd/error.c:error_packet_set(106)
   error packet at smbd/trans2.c(3266) cmd=50 (SMBtrans2) 
NT_STATUS_PATH_NOT_COVERED
[...]
[2007/07/24 21:24:35, 4] smbd/vfs.c:vfs_ChDir(665)
   vfs_ChDir to /samba_dfs/dfs1
[2007/07/24 21:24:35, 5] smbd/filename.c:unix_convert(147)
   unix_convert called on file "sambatest/test1.txt"
[2007/07/24 21:24:35, 5] smbd/filename.c:unix_convert(246)
   unix_convert begin: name = sambatest/test1.txt, dirpath = , start = 
sambatest/test1.txt
[2007/07/24 21:24:35, 5] smbd/statcache.c:stat_cache_add(140)
   stat_cache_add: Added entry (8400928:sizea) SAMBATEST -> sambatest
[2007/07/24 21:24:35, 5] smbd/dir.c:OpenDir(1078)
   OpenDir: Can't open sambatest. No such file or directory
[2007/07/24 21:24:35, 3] smbd/filename.c:scan_directory(586)
   scan dir didn't open dir [sambatest]
[2007/07/24 21:24:35, 5] smbd/filename.c:unix_convert(440)
   New file test1.txt
[2007/07/24 21:24:35, 5] smbd/msdfs.c:is_msdfs_link(319)
   is_msdfs_link: sambatest/test1.txt does not exist.
[2007/07/24 21:24:35, 5] smbd/msdfs.c:is_msdfs_link(337)
   is_msdfs_link: sambatest -> msdfs:tb3\sambatest
[2007/07/24 21:24:35, 4] smbd/msdfs.c:dfs_path_lookup(444)
   dfs_path_lookup: Redirecting \testeisneu\dfs1\sambatest\test1.txt 
because parent sambatest is dfs link
[2007/07/24 21:24:35, 4] smbd/vfs.c:vfs_ChDir(665)
   vfs_ChDir to /tmp
[2007/07/24 21:24:35, 3] smbd/msdfs.c:setup_dfs_referral(944)
   setup_dfs_referral: Path \testeisneu\dfs1\sambatest to alternate 
path(s): \tb3\sambatest.


The dfs root is on the same machine as smbclient:

[dfs1]
  msdfs root = yes
  writeable = yes
  browseable = yes
  path = /samba_dfs/dfs1


testeisneu # cd /samba_dfs
testeisneu # ls -l
total 13
drwxr-xr-x  2 root root  1024 Jul 24 21:05 dfs1
drwx------  2 root root 12288 Jul 24 21:05 lost+found
testeisneu # cd dfs1
testeisneu # ls -l
total 0
lrwxrwxrwx  1 root root 19 Jul 24 21:05 sambatest -> msdfs:tb3\sambatest
testeisneu # mount | grep samba_dfs
/usr/local/share/samba/dfs_root.img on /samba_dfs type ext3 
(ro,loop=/dev/loop0)


I can remove test1.txt:

testeisneu # smbclient //testeisneu/dfs1 -Utb%xxx
Domain=[TESTEISNEU] OS=[Unix] Server=[Samba 3.0.25b-for-eisfair-1]
smb: \> dir
   .                                   D        0  Tue Jul 24 21:05:20 2007
   ..                                  D        0  Tue Jul 24 21:05:20 2007
   sambatest                           D        0  Tue Jul 24 21:05:20 2007

                 2011 blocks of size 1024. 967 blocks available
smb: \> cd sambatest
smb: \sambatest\> dir
   .                                  DA        0  Tue Jul 24 20:55:46 2007
   ..                                 DA        0  Tue Jul 24 20:55:46 2007
   test1.txt                           A        0  Tue Jul 24 20:55:15 2007
   äöü€.txt                                     0  Sun Sep 25 13:29:03 2005

                 38154 blocks of size 4194304. 12479 blocks available
smb: \sambatest\> rm test1.txt
smb: \sambatest\> dir
   .                                  DA        0  Tue Jul 24 21:37:43 2007
   ..                                 DA        0  Tue Jul 24 21:37:43 2007
   äöü€.txt                                     0  Sun Sep 25 13:29:03 2005

                 38154 blocks of size 4194304. 12479 blocks available
smb: \sambatest\>



der tom


More information about the samba-technical mailing list