1 <html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>Chapter 17. Hosting a Microsoft Distributed File System tree on Samba</title><link rel="stylesheet" href="samba.css" type="text/css"><meta name="generator" content="DocBook XSL Stylesheets V1.60.1"><link rel="home" href="index.html" title="SAMBA Project Documentation"><link rel="up" href="optional.html" title="Part III. Advanced Configuration"><link rel="previous" href="InterdomainTrusts.html" title="Chapter 16. Interdomain Trust Relationships"><link rel="next" href="printing.html" title="Chapter 18. Classical Printing Support"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center">Chapter 17. Hosting a Microsoft Distributed File System tree on Samba</th></tr><tr><td width="20%" align="left"><a accesskey="p" href="InterdomainTrusts.html">Prev</a> </td><th width="60%" align="center">Part III. Advanced Configuration</th><td width="20%" align="right"> <a accesskey="n" href="printing.html">Next</a></td></tr></table><hr></div><div class="chapter" lang="en"><div class="titlepage"><div><div><h2 class="title"><a name="msdfs"></a>Chapter 17. Hosting a Microsoft Distributed File System tree on Samba</h2></div><div><div class="author"><h3 class="author"><span class="firstname">Shirish</span> <span class="surname">Kalele</span></h3><div class="affiliation"><span class="orgname">Samba Team & Veritas Software<br></span><div class="address"><p><br>
2 <tt class="email"><<a href="mailto:samba@samba.org">samba@samba.org</a>></tt><br>
3 </p></div></div></div></div><div><p class="pubdate">12 Jul 2000</p></div></div><div></div></div><div class="toc"><p><b>Table of Contents</b></p><dl><dt><a href="msdfs.html#id2933279">Features and Benefits</a></dt><dt><a href="msdfs.html#id2934931">Common Errors</a></dt></dl></div><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="id2933279"></a>Features and Benefits</h2></div></div><div></div></div><p>
4 The Distributed File System (or DFS) provides a means of separating the logical
5 view of files and directories that users see from the actual physical locations
6 of these resources on the network. It allows for higher availability, smoother
7 storage expansion, load balancing etc.
9 For information about DFS, refer to
10 <a href="http://www.microsoft.com/NTServer/nts/downloads/winfeatures/NTSDistrFile/AdminGuide.asp" target="_top">
11 Microsoft documentation at http://www.microsoft.com/NTServer/nts/downloads/winfeatures/NTSDistrFile/AdminGuide.asp</a>.
13 This document explains how to host a DFS tree on a Unix machine (for DFS-aware
14 clients to browse) using Samba.
16 To enable SMB-based DFS for Samba, configure it with the <i class="parameter"><tt>--with-msdfs</tt></i>
17 option. Once built, a Samba server can be made a DFS server by setting the global
18 boolean <a href="smb.conf.5.html#HOSTMSDFS" target="_top"><i class="parameter"><tt> host msdfs</tt></i></a>
19 parameter in the <tt class="filename">smb.conf </tt> file. You designate a share as a DFS
20 root using the share level boolean <a href="smb.conf.5.html#MSDFSROOT" target="_top"><i class="parameter"><tt>
21 msdfs root</tt></i></a> parameter. A DFS root directory on Samba hosts DFS
22 links in the form of symbolic links that point to other servers. For example, a symbolic link
23 <tt class="filename">junction->msdfs:storage1\share1</tt> in the share directory acts
24 as the DFS junction. When DFS-aware clients attempt to access the junction link,
25 they are redirected to the storage location (in this case, \\storage1\share1).
27 DFS trees on Samba work with all DFS-aware clients ranging from Windows 95 to 200x.
29 Here's an example of setting up a DFS tree on a Samba server.
30 </p><pre class="programlisting">
37 path = /export/dfsroot
39 </pre><p>In the /export/dfsroot directory we set up our dfs links to
40 other servers on the network.</p><pre class="screen">
41 <tt class="prompt">root# </tt><b class="userinput"><tt>cd /export/dfsroot</tt></b>
42 <tt class="prompt">root# </tt><b class="userinput"><tt>chown root /export/dfsroot</tt></b>
43 <tt class="prompt">root# </tt><b class="userinput"><tt>chmod 755 /export/dfsroot</tt></b>
44 <tt class="prompt">root# </tt><b class="userinput"><tt>ln -s msdfs:storageA\\shareA linka</tt></b>
45 <tt class="prompt">root# </tt><b class="userinput"><tt>ln -s msdfs:serverB\\share,serverC\\share linkb</tt></b>
46 </pre><p>You should set up the permissions and ownership of
47 the directory acting as the DFS root such that only designated
48 users can create, delete or modify the msdfs links. Also note
49 that symlink names should be all lowercase. This limitation exists
50 to have Samba avoid trying all the case combinations to get at
51 the link name. Finally set up the symbolic links to point to the
52 network shares you want, and start Samba.</p><p>Users on DFS-aware clients can now browse the DFS tree
53 on the Samba server at \\samba\dfs. Accessing
54 links linka or linkb (which appear as directories to the client)
55 takes users directly to the appropriate shares on the network.</p></div><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="id2934931"></a>Common Errors</h2></div></div><div></div></div><div class="itemizedlist"><ul type="disc"><li><p>Windows clients need to be rebooted
56 if a previously mounted non-dfs share is made a dfs
57 root or vice versa. A better way is to introduce a
58 new share and make it the dfs root.</p></li><li><p>Currently there's a restriction that msdfs
59 symlink names should all be lowercase.</p></li><li><p>For security purposes, the directory
60 acting as the root of the DFS tree should have ownership
61 and permissions set so that only designated users can
62 modify the symbolic links in the directory.</p></li></ul></div></div></div><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="InterdomainTrusts.html">Prev</a> </td><td width="20%" align="center"><a accesskey="u" href="optional.html">Up</a></td><td width="40%" align="right"> <a accesskey="n" href="printing.html">Next</a></td></tr><tr><td width="40%" align="left" valign="top">Chapter 16. Interdomain Trust Relationships </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right" valign="top"> Chapter 18. Classical Printing Support</td></tr></table></div></body></html>