diff options
author | Jelmer Vernooij <jelmer@samba.org> | 2004-06-20 12:43:16 +0000 |
---|---|---|
committer | Gerald W. Carter <jerry@samba.org> | 2008-04-23 08:45:56 -0500 |
commit | 83a17815a7689f1f6f7ca57161a0e804277c75f9 (patch) | |
tree | e1cec10510da7038e843f71c9ba95a0e6bc5f494 /docs/Samba-HOWTO-Collection/msdfs.xml | |
parent | 9eb45e211cbc28bbd28837a17dcec3df29d6f455 (diff) | |
download | samba-83a17815a7689f1f6f7ca57161a0e804277c75f9.tar.gz samba-83a17815a7689f1f6f7ca57161a0e804277c75f9.tar.bz2 samba-83a17815a7689f1f6f7ca57161a0e804277c75f9.zip |
New structure for the docs:
- Same name for a doc everywhere (howto -> Samba-HOWTO-Collection, etc)
- Shorter and more clearly structured Makefile
- Make it possible to change the paths for the images
(This used to be commit 96f6c05f25acc8a9bb1977b8bd5cc97ce511b6b1)
Diffstat (limited to 'docs/Samba-HOWTO-Collection/msdfs.xml')
-rw-r--r-- | docs/Samba-HOWTO-Collection/msdfs.xml | 166 |
1 files changed, 166 insertions, 0 deletions
diff --git a/docs/Samba-HOWTO-Collection/msdfs.xml b/docs/Samba-HOWTO-Collection/msdfs.xml new file mode 100644 index 0000000000..e4a83b787a --- /dev/null +++ b/docs/Samba-HOWTO-Collection/msdfs.xml @@ -0,0 +1,166 @@ +<?xml version="1.0" encoding="iso-8859-1"?> +<!DOCTYPE book PUBLIC "-//OASIS//DTD DocBook XML V4.2//EN" + "http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd" [ + <!ENTITY % global_entities SYSTEM '../entities/global.entities'> + %global_entities; +]> + +<chapter id="msdfs"> + +<chapterinfo> + <author> + <firstname>Shirish</firstname><surname>Kalele</surname> + <affiliation> + <orgname>Samba Team & Veritas Software</orgname> + <address> + <email>samba@samba.org</email> + </address> + </affiliation> + </author> + &author.jht; + + <pubdate>12 Jul 2000</pubdate> +</chapterinfo> + +<title>Hosting a Microsoft Distributed File System Tree</title> + +<sect1> +<title>Features and Benefits</title> + + <para> + The Distributed File System (DFS) provides a means of separating the logical + view of files and directories that users see from the actual physical locations + of these resources on the network. It allows for higher availability, smoother + storage expansion, load balancing, and so on. + </para> + + <para> + For information about DFS, refer to the +<ulink url="http://www.microsoft.com/NTServer/nts/downloads/winfeatures/NTSDistrFile/AdminGuide.asp">Microsoft documentation</ulink>. + This document explains how to host a DFS tree on a UNIX machine (for DFS-aware + clients to browse) using Samba. + </para> + + <para> + A Samba server can be made a DFS server by setting the global + Boolean <smbconfoption><name>host msdfs</name></smbconfoption> + parameter in the &smb.conf; file. You designate a share as a DFS + root using the Share Level Boolean <smbconfoption><name>msdfs root</name></smbconfoption> parameter. A DFS root directory on Samba hosts DFS + links in the form of symbolic links that point to other servers. For example, a symbolic link + <filename>junction->msdfs:storage1\share1</filename> in the share directory acts + as the DFS junction. When DFS-aware clients attempt to access the junction link, + they are redirected to the storage location (in this case, <parameter>\\storage1\share1</parameter>). + </para> + + <para> + DFS trees on Samba work with all DFS-aware clients ranging from Windows 95 to 200x. + <link linkend="dfscfg">Following sample configuration</link> shows how to setup a DFS tree on a Samba server. + In the <filename>/export/dfsroot</filename> directory, you set up your DFS links to + other servers on the network. +<screen> +&rootprompt;<userinput>cd /export/dfsroot</userinput> +&rootprompt;<userinput>chown root /export/dfsroot</userinput> +&rootprompt;<userinput>chmod 755 /export/dfsroot</userinput> +&rootprompt;<userinput>ln -s msdfs:storageA\\shareA linka</userinput> +&rootprompt;<userinput>ln -s msdfs:serverB\\share,serverC\\share linkb</userinput> +</screen> +</para> + +<para> +<smbconfexample id="dfscfg"> +<title>smb.conf with DFS configured</title> +<smbconfsection>[global]</smbconfsection> +<smbconfoption><name>netbios name</name><value>&example.server.samba;</value></smbconfoption> +<smbconfoption><name>host msdfs </name><value>yes</value></smbconfoption> + +<smbconfsection>[dfs]</smbconfsection> +<smbconfoption><name>path</name><value>/export/dfsroot</value></smbconfoption> +<smbconfoption><name>msdfs root</name><value>yes</value></smbconfoption> +</smbconfexample> +</para> + + <para>You should set up the permissions and ownership of + the directory acting as the DFS root so that only designated + users can create, delete or modify the msdfs links. Also note + that symlink names should be all lowercase. This limitation exists + to have Samba avoid trying all the case combinations to get at + the link name. Finally, set up the symbolic links to point to the + network shares you want and start Samba.</para> + + <para>Users on DFS-aware clients can now browse the DFS tree + on the Samba server at \\samba\dfs. Accessing + links linka or linkb (which appear as directories to the client) + takes users directly to the appropriate shares on the network.</para> +</sect1> + +<sect1> +<title>Common Errors</title> + <itemizedlist> + <listitem><para>Windows clients need to be rebooted + if a previously mounted non-DFS share is made a DFS + root or vice versa. A better way is to introduce a + new share and make it the DFS root.</para> + </listitem> + + <listitem><para>Currently, there's a restriction that msdfs + symlink names should all be lowercase.</para> + </listitem> + + <listitem><para>For security purposes, the directory + acting as the root of the DFS tree should have ownership + and permissions set so only designated users can + modify the symbolic links in the directory.</para> + </listitem> + </itemizedlist> + + <sect2> + <title>MSDFS UNIX Path Is Case-Critical</title> + + <para> + A network administrator sent advice to the Samba mailing list + after a long sessions trying to determine why DFS was not working. + His advice is worth noting. + </para> + + <para><quote> + I spent some time trying to figure out why my particular + dfs root wasn't working. I noted in the documentation that + the symlink should be in all lowercase. It should be + amended that the entire path to the symlink should all be + in lowercase as well. + </quote></para> + + <para> + For example, I had a share defined as such: + + <screen> + [pub] + path = /export/home/Shares/public_share + msdfs root = yes + </screen> + + and I could not make my Windows 9x/Me (with the dfs client installed) + follow this symlink: + + <screen> + damage1 -> msdfs:damage\test-share + </screen> + </para> + + <para> + Running a debug level of 10 reveals: + + <programlisting> + [2003/08/20 11:40:33, 5] msdfs/msdfs.c:is_msdfs_link(176) + is_msdfs_link: /export/home/shares/public_share/* does not exist. + </programlisting> + + Curious. So I changed the directory name from .../Shares/... to + .../shares/... (along with my service definition) and it worked! + </para> + + </sect2> + +</sect1> + +</chapter> |