summaryrefslogtreecommitdiff
path: root/docs
diff options
context:
space:
mode:
Diffstat (limited to 'docs')
-rw-r--r--docs/manpages-3/smb.conf.5.xml78
-rw-r--r--docs/smbdotconf/misc/include.xml12
-rw-r--r--docs/smbdotconf/misc/registryshares.xml16
3 files changed, 105 insertions, 1 deletions
diff --git a/docs/manpages-3/smb.conf.5.xml b/docs/manpages-3/smb.conf.5.xml
index 83fff41f80..ff527c1f53 100644
--- a/docs/manpages-3/smb.conf.5.xml
+++ b/docs/manpages-3/smb.conf.5.xml
@@ -712,6 +712,84 @@ chmod 1770 /usr/local/samba/lib/usershares
</refsect1>
<refsect1>
+ <title>REGISTRY-BASED CONFIGURATION</title>
+
+ <para>
+ Starting with Samba version 3.0.26, the capability to
+ store Samba configuration in the registry is available.
+ There are two levels of registry configuration.
+ </para>
+
+ <orderedlist continuation="restarts" inheritnum="ignore" numeration="arabic">
+ <listitem><para>Share definitions stored in registry are used.
+ This is triggered by setting the global parameter
+ <parameter>registry shares</parameter> to
+ <term>yes</term> in <term>smb.conf</term>.
+ </para>
+ <para>Note: Shares defined in <term>smb.conf</term> always take priority over
+ shares of the same name defined in registry.
+ </para></listitem>
+
+ <listitem><para>Global <term>smb.conf</term> options stored in
+ registry are used. This
+ is triggered by a new special meaning of the
+ parameter <parameter>include = registry</parameter> in
+ the [global] section of <term>smb.conf</term>.
+ This reads the content of
+ the global configuration section from the regsitry
+ and includes the result with the same priorities as
+ an include of a text file. Activation of global
+ registry options automatically activates registry
+ shares.
+ </para></listitem>
+ </orderedlist>
+
+ <para>
+ Even when global registry options are used, the initial source of
+ configuration is still the <term>smb.conf</term> file.
+ It is this possible though, to produce a registry-only configuration
+ with a minimal configuration file like this:
+<programlisting>
+ <smbconfsection name="[global]"/>
+ <smbconfoption name="include">registry</smbconfoption>
+</programlisting>
+ This is also currently the only supported configuration with global
+ registry options activated. More precisely, it is only supported to
+ specify options in <term>smb.conf</term> <emph>before</emph> the
+ occurrence of <parameter>include = registry</parameter>.
+ </para>
+
+ <para>
+ Caveat: To make registry-based configurations foolprof at least to a
+ certain extent, the use of <parameter>lock directory</parameter>
+ and <parameter>include</parameter> inside the registry
+ configuration has been disabled. Especially, by changing the
+ <parameter>lock directory</parameter> inside the registry
+ configuration, one would create a broken setup where the daemons
+ do not see the configuration they loaded once it is active. This
+ phenomenon can of course also be triggered by specifying
+ <parameter>lock directory</parameter> after the
+ <parameter>include = registry</parameter> directive. This is why
+ this type of configuration is classified "unsupported" above.
+ </para>
+
+ <para>
+ The registry configuration can be accessed with
+ tools like <term>regedit</term> or <term>net rpc
+ registry</term> in the key
+ <term>HKLM\Software\Samba\smbconf</term>.
+
+ More conveniently, the <term>conf</term> subcommand of the
+ <citerefentry><refentrytitle>net</refentrytitle>
+ <manvolnum>7</manvolnum></citerefentry> utility
+ offers a dedicated interface to read and write the
+ registry based configuration locally, i.e. directly
+ on the server.
+ </para>
+
+</refsect1>
+
+<refsect1>
<title>EXPLANATION OF EACH PARAMETER</title>
<samba:parameterlist>
diff --git a/docs/smbdotconf/misc/include.xml b/docs/smbdotconf/misc/include.xml
index 17ccea33c0..84e20dff89 100644
--- a/docs/smbdotconf/misc/include.xml
+++ b/docs/smbdotconf/misc/include.xml
@@ -1,6 +1,6 @@
<samba:parameter name="include"
context="G"
- type="string"
+ type="string"
hide="1"
xmlns:samba="http://www.samba.org/samba/DTD/samba-doc">
<description>
@@ -13,6 +13,16 @@
It takes the standard substitutions, except <parameter moreinfo="none">%u</parameter>,
<parameter moreinfo="none">%P</parameter> and <parameter moreinfo="none">%S</parameter>.
</para>
+
+ <para>
+ The parameter <parameter>include = registry</parameter> has
+ a special meaning: It does <emphasis>not</emphasis> include
+ a file named <term>registry</term> from the current working
+ directory, but instead reads the global configuration options
+ from the registry. See the section on registry-based
+ configuration for details. Note that this option
+ automatically activates registry shares.
+ </para>
</description>
<value type="default"></value>
diff --git a/docs/smbdotconf/misc/registryshares.xml b/docs/smbdotconf/misc/registryshares.xml
new file mode 100644
index 0000000000..5557661998
--- /dev/null
+++ b/docs/smbdotconf/misc/registryshares.xml
@@ -0,0 +1,16 @@
+<samba:parameter name="config file"
+ context="G"
+ type="bool"
+ advanced="1"
+ xmlns:samba="http://www.samba.org/samba/DTD/samba-doc">
+<description>
+ <para>
+ This turns on or off support for share definitions read from
+ registry. Shares in defined in <term>smb.conf</term> take
+ precedence over shares with the same name defined in
+ registry. See the section on registry-based configuration
+ for details.
+ </para>
+</description>
+<value type="example">/usr/local/samba/lib/smb.conf.%m</value>
+</samba:parameter>