In this post I'll describe how to configure Samba to redirect a share to another server. A typical example when this might be useful is as follows. You have a share, say \\server\work that you need to migrate to new hardware, so that it becomes \\newserver\work. However, you don't want all your users to remember that the files are at a new location. You'd like your users to continue using the old address \\server\work and be transparently redirected to \\newserver\work. This is possible with MS DFS (distributed filesystem) support via
msdfs proxy directive. It seems like a more obscure directive not very well documented and described, so I'll try to report my experience with it.
The first thing to do is to enable MS DFS in Samba on the global level by specifying:
host msdfs = true
[global]section of smb.conf.
Then in the section for your share, you remove the
path directive and insert two MS DFS-related directives,
msdfs root and
Note a few things about this configuration:
[work] msdfs root = true msdfs proxy = \newserver\work
- You MUST NOT have the
pathdirective in the share definition
- The value of
msdfs proxydirective is the new location of the share to redirect to; notice though, that's a single backslash in the beginning of the value, NOT the double backslash you could have expected!
That's all, now \\server\work transparently redirects to \\newserver\work. Clients may need to be rebooted to start working properly with the redirected share. In my experience, clients can't access the share right after the reconfiguration, but it starts working after some time (not sure how much time) or after the client reboots.