1 | <html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>Chapter 42. How to Compile Samba</title><link rel="stylesheet" href="../samba.css" type="text/css"><meta name="generator" content="DocBook XSL Stylesheets V1.74.0"><link rel="home" href="index.html" title="The Official Samba 3.0.x HOWTO and Reference Guide"><link rel="up" href="Appendix.html" title="Part VI. Reference Section"><link rel="prev" href="Appendix.html" title="Part VI. Reference Section"><link rel="next" href="Portability.html" title="Chapter 43. Portability"></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 42. How to Compile Samba</th></tr><tr><td width="20%" align="left"><a accesskey="p" href="Appendix.html">Prev</a> </td><th width="60%" align="center">Part VI. Reference Section</th><td width="20%" align="right"> <a accesskey="n" href="Portability.html">Next</a></td></tr></table><hr></div><div class="chapter" lang="en"><div class="titlepage"><div><div><h2 class="title"><a name="compiling"></a>Chapter 42. How to Compile Samba</h2></div><div><div class="author"><h3 class="author"><span class="firstname">Jelmer</span> <span class="othername">R.</span> <span class="orgname">The Samba Team</span> <span class="surname">Vernooij</span></h3><div class="affiliation"><span class="orgname">The Samba Team<br></span><div class="address"><p><code class="email"><<a class="email" href="mailto:jelmer@samba.org">jelmer@samba.org</a>></code></p></div></div></div></div><div><div class="author"><h3 class="author"><span class="firstname">John</span> <span class="othername">H.</span> <span class="orgname">Samba Team</span> <span class="surname">Terpstra</span></h3><div class="affiliation"><span class="orgname">Samba Team<br></span><div class="address"><p><code class="email"><<a class="email" href="mailto:jht@samba.org">jht@samba.org</a>></code></p></div></div></div></div><div><div class="author"><h3 class="author"><span class="firstname">Andrew</span> <span class="orgname">Samba Team</span> <span class="surname">Tridgell</span></h3><div class="affiliation"><span class="orgname">Samba Team<br></span><div class="address"><p><code class="email"><<a class="email" href="mailto:tridge@samba.org">tridge@samba.org</a>></code></p></div></div></div></div><div><p class="pubdate"> 22 May 2001 </p></div><div><p class="pubdate"> 18 March 2003 </p></div><div><p class="pubdate"> June 2005 </p></div></div></div><div class="toc"><p><b>Table of Contents</b></p><dl><dt><span class="sect1"><a href="compiling.html#id2687532">Access Samba Source Code via Subversion</a></span></dt><dd><dl><dt><span class="sect2"><a href="compiling.html#id2687538">Introduction</a></span></dt><dt><span class="sect2"><a href="compiling.html#id2687579">Subversion Access to samba.org</a></span></dt></dl></dd><dt><span class="sect1"><a href="compiling.html#id2687771">Accessing the Samba Sources via rsync and ftp</a></span></dt><dt><span class="sect1"><a href="compiling.html#id2687845">Verifying Samba's PGP Signature</a></span></dt><dt><span class="sect1"><a href="compiling.html#id2687983">Building the Binaries</a></span></dt><dd><dl><dt><span class="sect2"><a href="compiling.html#id2688221">Compiling Samba with Active Directory Support</a></span></dt></dl></dd><dt><span class="sect1"><a href="compiling.html#startingSamba">Starting the smbd nmbd and winbindd</a></span></dt><dd><dl><dt><span class="sect2"><a href="compiling.html#id2688491">Starting from inetd.conf</a></span></dt><dt><span class="sect2"><a href="compiling.html#id2688711">Alternative: Starting smbd as a Daemon</a></span></dt></dl></dd></dl></div><p>
|
---|
2 | You can obtain the Samba source file from the
|
---|
3 | <a class="ulink" href="http://samba.org/" target="_top">Samba Web site</a>. To obtain a development version,
|
---|
4 | you can download Samba from Subversion or using <code class="literal">rsync</code>.
|
---|
5 | </p><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="id2687532"></a>Access Samba Source Code via Subversion</h2></div></div></div><div class="sect2" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="id2687538"></a>Introduction</h3></div></div></div><p>
|
---|
6 | <a class="indexterm" name="id2687546"></a>
|
---|
7 | Samba is developed in an open environment. Developers use a
|
---|
8 | Subversion to “<span class="quote">checkin</span>” (also known as
|
---|
9 | “<span class="quote">commit</span>”) new source code. Samba's various Subversion branches can
|
---|
10 | be accessed via anonymous Subversion using the instructions
|
---|
11 | detailed in this chapter.
|
---|
12 | </p><p>
|
---|
13 | This chapter is a modified version of the instructions found at the
|
---|
14 | <a class="ulink" href="http://samba.org/samba/subversion.html" target="_top">Samba</a> Web site.
|
---|
15 | </p></div><div class="sect2" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="id2687579"></a>Subversion Access to samba.org</h3></div></div></div><p>
|
---|
16 | The machine samba.org runs a publicly accessible Subversion
|
---|
17 | repository for access to the source code of several packages,
|
---|
18 | including Samba, rsync, distcc, ccache, and jitterbug. There are two main ways
|
---|
19 | of accessing the Subversion server on this host.
|
---|
20 | </p><div class="sect3" lang="en"><div class="titlepage"><div><div><h4 class="title"><a name="id2687593"></a>Access via ViewCVS</h4></div></div></div><p>
|
---|
21 | <a class="indexterm" name="id2687601"></a>
|
---|
22 | You can access the source code via your favorite WWW browser. This allows you to access
|
---|
23 | the contents of individual files in the repository and also to look at the revision
|
---|
24 | history and commit logs of individual files. You can also ask for a diff
|
---|
25 | listing between any two versions on the repository.
|
---|
26 | </p><p>
|
---|
27 | Use the URL
|
---|
28 | <a class="ulink" href="http://viewcvs.samba.org/" target="_top">http://viewcvs.samba.org/</a>.
|
---|
29 | </p></div><div class="sect3" lang="en"><div class="titlepage"><div><div><h4 class="title"><a name="id2687628"></a>Access via Subversion</h4></div></div></div><p>
|
---|
30 | <a class="indexterm" name="id2687636"></a>
|
---|
31 | You can also access the source code via a normal Subversion client. This gives you much more control over what
|
---|
32 | you can do with the repository and allows you to check out whole source trees and keep them up to date via
|
---|
33 | normal Subversion commands. This is the preferred method of access if you are a developer and not just a
|
---|
34 | casual browser.
|
---|
35 | </p><p>In order to be able to download the Samba sources off Subversion, you need
|
---|
36 | a Subversion client. Your distribution might include one, or you can download the
|
---|
37 | sources from <a class="ulink" href="http://subversion.tigris.org/" target="_top">http://subversion.tigris.org/</a>.
|
---|
38 | </p><p>
|
---|
39 | To gain access via anonymous Subversion, use the following steps.
|
---|
40 | </p><div class="procedure"><a name="id2687670"></a><p class="title"><b>Procedure 42.1. Retrieving Samba using Subversion</b></p><ol type="1"><li><p>
|
---|
41 | Install a recent copy of Subversion. All you really need is a
|
---|
42 | copy of the Subversion client binary.
|
---|
43 | </p></li><li><p>
|
---|
44 | Run the command
|
---|
45 | </p><pre class="screen">
|
---|
46 | <strong class="userinput"><code>svn co svn://svnanon.samba.org/samba/trunk samba</code></strong>.
|
---|
47 | </pre><p>
|
---|
48 | </p><p>
|
---|
49 | This will create a directory called <code class="filename">samba</code> containing the
|
---|
50 | latest Samba source code (usually the branch that is going to be the next major release). This
|
---|
51 | currently corresponds to the 3.1 development tree.
|
---|
52 | </p><p>
|
---|
53 | Subversion branches other then trunk can be obtained by adding branches/BRANCH_NAME to the URL you check
|
---|
54 | out. A list of branch names can be found on the “<span class="quote">Development</span>” page of the Samba Web site. A
|
---|
55 | common request is to obtain the latest 3.0 release code. This could be done by using the following command:
|
---|
56 | </p><pre class="screen">
|
---|
57 | <strong class="userinput"><code>svn co svn://svnanon.samba.org/samba/branches/SAMBA_3_0 samba_3</code></strong>.
|
---|
58 | </pre><p>
|
---|
59 | </p></li><li><p>
|
---|
60 | Whenever you want to merge in the latest code changes, use the following command from within the Samba
|
---|
61 | directory:
|
---|
62 | </p><pre class="screen">
|
---|
63 | <strong class="userinput"><code>svn update</code></strong>
|
---|
64 | </pre><p>
|
---|
65 | </p></li></ol></div></div></div></div><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="id2687771"></a>Accessing the Samba Sources via rsync and ftp</h2></div></div></div><p>
|
---|
66 | <a class="indexterm" name="id2687779"></a>
|
---|
67 | <a class="indexterm" name="id2687786"></a>
|
---|
68 | <em class="parameter"><code>pserver.samba.org</code></em> also exports unpacked copies of most parts of the Subversion tree
|
---|
69 | at the Samba <a class="ulink" href="ftp://pserver.samba.org/pub/unpacked" target="_top">pserver</a> location and also
|
---|
70 | via anonymous rsync at the Samba <a class="ulink" href="rsync://pserver.samba.org/ftp/unpacked/" target="_top">rsync</a> server location. I recommend using rsync rather
|
---|
71 | than ftp, because rsync is capable of compressing data streams, but it is also more useful than FTP because
|
---|
72 | during a partial update it will transfer only the data that is missing plus a small overhead. See <a class="ulink" href="http://rsync.samba.org/" target="_top">the rsync home page</a> for more info on rsync.
|
---|
73 | </p><p>
|
---|
74 | The disadvantage of the unpacked trees is that they do not support automatic
|
---|
75 | merging of local changes as Subversion does. <code class="literal">rsync</code> access is most convenient
|
---|
76 | for an initial install.
|
---|
77 | </p></div><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="id2687845"></a>Verifying Samba's PGP Signature</h2></div></div></div><p>
|
---|
78 | <a class="indexterm" name="id2687853"></a>
|
---|
79 | <a class="indexterm" name="id2687860"></a>
|
---|
80 | It is strongly recommended that you verify the PGP signature for any source file before
|
---|
81 | installing it. Even if you're not downloading from a mirror site, verifying PGP signatures
|
---|
82 | should be a standard reflex. Many people today use the GNU GPG tool set in place of PGP.
|
---|
83 | GPG can substitute for PGP.
|
---|
84 | </p><p>
|
---|
85 | With that said, go ahead and download the following files:
|
---|
86 | </p><pre class="screen">
|
---|
87 | <code class="prompt">$ </code><strong class="userinput"><code>wget http://us1.samba.org/samba/ftp/samba-3.0.20.tar.asc</code></strong>
|
---|
88 | <code class="prompt">$ </code><strong class="userinput"><code>wget http://us1.samba.org/samba/ftp/samba-pubkey.asc</code></strong>
|
---|
89 | </pre><p>
|
---|
90 | <a class="indexterm" name="id2687908"></a>
|
---|
91 | The first file is the PGP signature for the Samba source file; the other is the Samba public
|
---|
92 | PGP key itself. Import the public PGP key with:
|
---|
93 | </p><pre class="screen">
|
---|
94 | <code class="prompt">$ </code><strong class="userinput"><code>gpg --import samba-pubkey.asc</code></strong>
|
---|
95 | </pre><p>
|
---|
96 | and verify the Samba source code integrity with:
|
---|
97 | </p><pre class="screen">
|
---|
98 | <code class="prompt">$ </code><strong class="userinput"><code>gzip -d samba-3.0.20.tar.gz</code></strong>
|
---|
99 | <code class="prompt">$ </code><strong class="userinput"><code>gpg --verify samba-3.0.20.tar.asc</code></strong>
|
---|
100 | </pre><p>
|
---|
101 | </p><p>
|
---|
102 | If you receive a message like, “<span class="quote">Good signature from Samba Distribution Verification Key...,</span>”
|
---|
103 | then all is well. The warnings about trust relationships can be ignored. An
|
---|
104 | example of what you would not want to see would be:
|
---|
105 | </p><pre class="screen">
|
---|
106 | gpg: BAD signature from “<span class="quote">Samba Distribution Verification Key</span>”
|
---|
107 | </pre><p>
|
---|
108 | </p></div><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="id2687983"></a>Building the Binaries</h2></div></div></div><p>
|
---|
109 | <a class="indexterm" name="id2687991"></a>
|
---|
110 | <a class="indexterm" name="id2687998"></a>
|
---|
111 | After the source tarball has been unpacked, the next step involves
|
---|
112 | configuration to match Samba to your operating system platform.
|
---|
113 | If your source directory does not contain the <code class="literal">configure</code> script,
|
---|
114 | it is necessary to build it before you can continue. Building of
|
---|
115 | the configure script requires the correct version of the autoconf
|
---|
116 | tool kit. Where the necessary version of autoconf is present,
|
---|
117 | the configure script can be generated by executing the following:
|
---|
118 | </p><pre class="screen">
|
---|
119 | <code class="prompt">root# </code> cd samba-3.0.20/source
|
---|
120 | <code class="prompt">root# </code> ./autogen.sh
|
---|
121 | </pre><p>
|
---|
122 | </p><p>
|
---|
123 | <a class="indexterm" name="id2688040"></a>
|
---|
124 | To build the binaries, run the program <strong class="userinput"><code>./configure
|
---|
125 | </code></strong> in the source directory. This should automatically
|
---|
126 | configure Samba for your operating system. If you have unusual
|
---|
127 | needs, then you may wish to first run:
|
---|
128 | </p><pre class="screen">
|
---|
129 | <code class="prompt">root# </code><strong class="userinput"><code>./configure --help</code></strong>
|
---|
130 | </pre><p>
|
---|
131 | </p><p>
|
---|
132 | This will help you to see what special options can be enabled. Now execute
|
---|
133 | <strong class="userinput"><code>./configure</code></strong> with any arguments it might need:
|
---|
134 | </p><pre class="screen">
|
---|
135 | <code class="prompt">root# </code><strong class="userinput"><code>./configure <em class="replaceable"><code>[... arguments ...]</code></em></code></strong>
|
---|
136 | </pre><p>
|
---|
137 | </p><p>
|
---|
138 | <a class="indexterm" name="id2688105"></a>
|
---|
139 | Execute the following create the binaries:
|
---|
140 | </p><pre class="screen">
|
---|
141 | <code class="prompt">root# </code> <strong class="userinput"><code>make</code></strong>
|
---|
142 | </pre><p>
|
---|
143 | Once it is successfully compiled, you can execute the command shown here to
|
---|
144 | install the binaries and manual pages:
|
---|
145 | </p><pre class="screen">
|
---|
146 | <code class="prompt">root# </code> <strong class="userinput"><code>make install</code></strong>
|
---|
147 | </pre><p>
|
---|
148 | </p><p>
|
---|
149 | Some people prefer to install binary files and man pages separately. If this is
|
---|
150 | your wish, the binary files can be installed by executing:
|
---|
151 | </p><pre class="screen">
|
---|
152 | <code class="prompt">root# </code> <strong class="userinput"><code>make installbin</code></strong>
|
---|
153 | </pre><p>
|
---|
154 | The man pages can be installed using this command:
|
---|
155 | </p><pre class="screen">
|
---|
156 | <code class="prompt">root# </code> <strong class="userinput"><code>make installman</code></strong>
|
---|
157 | </pre><p>
|
---|
158 | </p><p>
|
---|
159 | Note that if you are upgrading from a previous version of Samba the old
|
---|
160 | versions of the binaries will be renamed with an “<span class="quote">.old</span>” extension.
|
---|
161 | You can go back to the previous version by executing:
|
---|
162 | </p><pre class="screen">
|
---|
163 | <code class="prompt">root# </code> <strong class="userinput"><code>make revert</code></strong>
|
---|
164 | </pre><p>
|
---|
165 | As you can see from this, building and installing Samba does not need to
|
---|
166 | result in disaster!
|
---|
167 | </p><div class="sect2" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="id2688221"></a>Compiling Samba with Active Directory Support</h3></div></div></div><p>
|
---|
168 | In order to compile Samba with ADS support, you need to have installed
|
---|
169 | on your system:
|
---|
170 | </p><div class="itemizedlist"><ul type="disc"><li><p>
|
---|
171 | The MIT or Heimdal Kerberos development libraries
|
---|
172 | (either install from the sources or use a package).
|
---|
173 | </p></li><li><p>
|
---|
174 | The OpenLDAP development libraries.
|
---|
175 | </p></li></ul></div><p>
|
---|
176 | If your Kerberos libraries are in a nonstandard location, then
|
---|
177 | remember to add the configure option
|
---|
178 | <code class="option">--with-krb5=<em class="replaceable"><code>DIR</code></em></code>.
|
---|
179 | </p><p>
|
---|
180 | After you run configure, make sure that the
|
---|
181 | <code class="filename">include/config.h</code> it generates contain lines like this:
|
---|
182 | </p><pre class="programlisting">
|
---|
183 | #define HAVE_KRB5 1
|
---|
184 | #define HAVE_LDAP 1
|
---|
185 | </pre><p>
|
---|
186 | </p><p>
|
---|
187 | If it does not, configure did not find your KRB5 libraries or
|
---|
188 | your LDAP libraries. Look in <code class="filename">config.log</code> to figure
|
---|
189 | out why and fix it.
|
---|
190 | </p><div class="sect3" lang="en"><div class="titlepage"><div><div><h4 class="title"><a name="id2688286"></a>Installing the Required Packages for Debian</h4></div></div></div><p>On Debian, you need to install the following packages:</p><p>
|
---|
191 | </p><div class="itemizedlist"><ul type="disc"><li><p>libkrb5-dev</p></li><li><p>krb5-user</p></li></ul></div><p>
|
---|
192 | </p></div><div class="sect3" lang="en"><div class="titlepage"><div><div><h4 class="title"><a name="id2688313"></a>Installing the Required Packages for Red Hat Linux</h4></div></div></div><p>On Red Hat Linux, this means you should have at least: </p><p>
|
---|
193 | </p><div class="itemizedlist"><ul type="disc"><li><p>krb5-workstation (for kinit)</p></li><li><p>krb5-libs (for linking with)</p></li><li><p>krb5-devel (because you are compiling from source)</p></li></ul></div><p>
|
---|
194 | </p><p>in addition to the standard development environment.</p><p>If these files are not installed on your system, you should check the installation
|
---|
195 | CDs to find which has them and install the files using your tool of choice. If in doubt
|
---|
196 | about what tool to use, refer to the Red Hat Linux documentation.</p></div><div class="sect3" lang="en"><div class="titlepage"><div><div><h4 class="title"><a name="id2688358"></a>SuSE Linux Package Requirements</h4></div></div></div><p>
|
---|
197 | SuSE Linux installs Heimdal packages that may be required to allow you to build
|
---|
198 | binary packages. You should verify that the development libraries have been installed on
|
---|
199 | your system.
|
---|
200 | </p><p>
|
---|
201 | SuSE Linux Samba RPMs support Kerberos. Please refer to the documentation for
|
---|
202 | your SuSE Linux system for information regarding SuSE Linux specific configuration.
|
---|
203 | Additionally, SuSE is very active in the maintenance of Samba packages that provide
|
---|
204 | the maximum capabilities that are available. You should consider using SuSE-provided
|
---|
205 | packages where they are available.
|
---|
206 | </p></div></div></div><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="startingSamba"></a>Starting the <span class="application">smbd</span> <span class="application">nmbd</span> and <span class="application">winbindd</span></h2></div></div></div><p>
|
---|
207 | <a class="indexterm" name="id2688412"></a>
|
---|
208 | You must choose to start <span class="application">smbd</span>, <span class="application">winbindd</span> and <span class="application">nmbd</span> either as daemons or from
|
---|
209 | <span class="application">inetd</span>. Don't try to do both! Either you can put
|
---|
210 | them in <code class="filename"> inetd.conf</code> and have them started on demand by
|
---|
211 | <span class="application">inetd</span> or <span class="application">xinetd</span>, or you
|
---|
212 | can start them as daemons either from the command-line or in
|
---|
213 | <code class="filename">/etc/rc.local</code>. See the man pages for details on the
|
---|
214 | command line options. Take particular care to read the bit about what user
|
---|
215 | you need to have to start Samba. In many cases, you must be root.
|
---|
216 | </p><p>
|
---|
217 | The main advantage of starting <span class="application">smbd</span> and <span class="application">nmbd</span> using the recommended daemon method
|
---|
218 | is that they will respond slightly more quickly to an initial connection request.
|
---|
219 | </p><div class="sect2" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="id2688491"></a>Starting from inetd.conf</h3></div></div></div><a class="indexterm" name="id2688497"></a><div class="note" style="margin-left: 0.5in; margin-right: 0.5in;"><h3 class="title">Note</h3><p>The following will be different if
|
---|
220 | you use NIS, NIS+, or LDAP to distribute services maps.</p></div><p>Look at your <code class="filename">/etc/services</code>.
|
---|
221 | What is defined at port 139/tcp? If nothing is defined,
|
---|
222 | then add a line like this:</p><pre class="programlisting">netbios-ssn 139/tcp</pre><p>Similarly for 137/udp, you should have an entry like:</p><pre class="programlisting">netbios-ns 137/udp</pre><p>
|
---|
223 | Next, edit your <code class="filename">/etc/inetd.conf</code> and add two lines like this:
|
---|
224 | </p><pre class="programlisting">
|
---|
225 | netbios-ssn stream tcp nowait root /usr/local/samba/sbin/smbd smbd
|
---|
226 | netbios-ns dgram udp wait root /usr/local/samba/sbin/nmbd nmbd
|
---|
227 | </pre><p>
|
---|
228 | </p><a class="indexterm" name="id2688560"></a><p>
|
---|
229 | The exact syntax of <code class="filename">/etc/inetd.conf</code>
|
---|
230 | varies between UNIXes. Look at the other entries in inetd.conf
|
---|
231 | for a guide.
|
---|
232 | </p><p>
|
---|
233 | <a class="indexterm" name="id2688580"></a>
|
---|
234 | Some distributions use xinetd instead of inetd. Consult the
|
---|
235 | xinetd manual for configuration information.
|
---|
236 | </p><div class="note" style="margin-left: 0.5in; margin-right: 0.5in;"><h3 class="title">Note</h3><p>Some UNIXes already have entries like netbios_ns
|
---|
237 | (note the underscore) in <code class="filename">/etc/services</code>.
|
---|
238 | You must edit <code class="filename">/etc/services</code> or
|
---|
239 | <code class="filename">/etc/inetd.conf</code> to make them consistent.
|
---|
240 | </p></div><div class="note" style="margin-left: 0.5in; margin-right: 0.5in;"><h3 class="title">Note</h3><p>
|
---|
241 | <a class="indexterm" name="id2688618"></a>
|
---|
242 | On many systems you may need to use the
|
---|
243 | <a class="link" href="smb.conf.5.html#INTERFACES" target="_top">interfaces</a> option in <code class="filename">smb.conf</code> to specify
|
---|
244 | the IP address and netmask of your interfaces. Run
|
---|
245 | <span class="application">ifconfig</span> as root if you do
|
---|
246 | not know what the broadcast is for your net. <span class="application">nmbd</span> tries
|
---|
247 | to determine it at runtime, but fails on some UNIXes.
|
---|
248 | </p></div><div class="warning" style="margin-left: 0.5in; margin-right: 0.5in;"><h3 class="title">Warning</h3><p>
|
---|
249 | Many UNIXes only accept around five parameters on the command
|
---|
250 | line in <code class="filename">inetd.conf</code>. This means you shouldn't
|
---|
251 | use spaces between the options and arguments, or you should use
|
---|
252 | a script and start the script from <code class="literal">inetd</code>.
|
---|
253 | </p></div><p>
|
---|
254 | Restart <span class="application">inetd</span>, perhaps just send it a HUP,
|
---|
255 | like this:
|
---|
256 | <a class="indexterm" name="id2688686"></a>
|
---|
257 | </p><pre class="screen">
|
---|
258 | <code class="prompt">root# </code><strong class="userinput"><code>killall -HUP inetd</code></strong>
|
---|
259 | </pre><p>
|
---|
260 | </p></div><div class="sect2" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="id2688711"></a>Alternative: Starting <span class="application">smbd</span> as a Daemon</h3></div></div></div><p>
|
---|
261 | <a class="indexterm" name="id2688726"></a>
|
---|
262 | <a class="indexterm" name="id2688732"></a>
|
---|
263 | To start the server as a daemon, you should create a script something
|
---|
264 | like this one, perhaps calling it <code class="filename">startsmb</code>.
|
---|
265 | </p><pre class="programlisting">
|
---|
266 | #!/bin/sh
|
---|
267 | /usr/local/samba/sbin/smbd -D
|
---|
268 | /usr/local/samba/sbin/winbindd -D
|
---|
269 | /usr/local/samba/sbin/nmbd -D
|
---|
270 | </pre><p>
|
---|
271 | Make it executable with <code class="literal">chmod +x startsmb</code>.
|
---|
272 | </p><p>
|
---|
273 | You can then run <code class="literal">startsmb</code> by hand or execute
|
---|
274 | it from <code class="filename">/etc/rc.local</code>.
|
---|
275 | </p><p>
|
---|
276 | To kill it, send a kill signal to the processes <span class="application">nmbd</span> and <span class="application">smbd</span>.
|
---|
277 | </p><div class="note" style="margin-left: 0.5in; margin-right: 0.5in;"><h3 class="title">Note</h3><p>
|
---|
278 | If you use the SVR4-style init system, you may like to look at the
|
---|
279 | <code class="filename">examples/svr4-startup</code> script to make Samba fit
|
---|
280 | into that system.
|
---|
281 | </p></div><div class="sect3" lang="en"><div class="titlepage"><div><div><h4 class="title"><a name="id2688810"></a>Starting Samba for Red Hat Linux</h4></div></div></div><p>
|
---|
282 | Red Hat Linux has not always included all Samba components in the standard installation.
|
---|
283 | So versions of Red Hat Linux do not install the winbind utility, even though it is present
|
---|
284 | on the installation CDROM media. Check to see if the <code class="literal">winbindd</code> is present
|
---|
285 | on the system:
|
---|
286 | </p><pre class="screen">
|
---|
287 | <code class="prompt">root# </code> ls /usr/sbin/winbindd
|
---|
288 | /usr/sbin/winbindd
|
---|
289 | </pre><p>
|
---|
290 | This means that the appropriate RPM package was installed. The following response means
|
---|
291 | that it is not installed:
|
---|
292 | </p><pre class="screen">
|
---|
293 | /bin/ls: /usr/sbin/winbind: No such file or directory
|
---|
294 | </pre><p>
|
---|
295 | In this case, it should be installed if you intend to use <code class="literal">winbindd</code>. Search
|
---|
296 | the CDROM installation media for the samba-winbind RPM and install it following Red Hat
|
---|
297 | guidelines.
|
---|
298 | </p><p>
|
---|
299 | The process for starting Samba will now be outlined. Be sure to configure Samba's <code class="filename">smb.conf</code>
|
---|
300 | file before starting Samba. When configured, start Samba by executing:
|
---|
301 | </p><pre class="screen">
|
---|
302 | <code class="prompt">root# </code> service smb start
|
---|
303 | <code class="prompt">root# </code> service winbind start
|
---|
304 | </pre><p>
|
---|
305 | These steps will start <span class="application">nmbd</span>, <span class="application">smbd</span> and <span class="application">winbindd</span>.
|
---|
306 | </p><p>
|
---|
307 | To ensure that these services will be automatically restarted when the system is rebooted
|
---|
308 | execute:
|
---|
309 | </p><pre class="screen">
|
---|
310 | <code class="prompt">root# </code> chkconfig smb on
|
---|
311 | <code class="prompt">root# </code> chkconfig winbind on
|
---|
312 | </pre><p>
|
---|
313 | Samba will be started automatically at every system reboot.
|
---|
314 | </p></div><div class="sect3" lang="en"><div class="titlepage"><div><div><h4 class="title"><a name="id2688933"></a>Starting Samba for Novell SUSE Linux</h4></div></div></div><p>
|
---|
315 | Novell SUSE Linux products automatically install all essential Samba components in a default installation.
|
---|
316 | Configure your <code class="filename">smb.conf</code> file, then execute the following to start Samba:
|
---|
317 | </p><pre class="screen">
|
---|
318 | <code class="prompt">root# </code> rcnmb start
|
---|
319 | <code class="prompt">root# </code> rcsmb start
|
---|
320 | <code class="prompt">root# </code> rcwinbind start
|
---|
321 | </pre><p>
|
---|
322 | Now execute these commands so that Samba will be started automatically following a system
|
---|
323 | reboot:
|
---|
324 | </p><pre class="screen">
|
---|
325 | <code class="prompt">root# </code> chkconfig nmb on
|
---|
326 | <code class="prompt">root# </code> chkconfig smb on
|
---|
327 | <code class="prompt">root# </code> chkconfig winbind on
|
---|
328 | </pre><p>
|
---|
329 | The Samba services will now be started automatically following a system reboot.
|
---|
330 | </p></div></div></div></div><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="Appendix.html">Prev</a> </td><td width="20%" align="center"><a accesskey="u" href="Appendix.html">Up</a></td><td width="40%" align="right"> <a accesskey="n" href="Portability.html">Next</a></td></tr><tr><td width="40%" align="left" valign="top">Part VI. Reference Section </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right" valign="top"> Chapter 43. Portability</td></tr></table></div></body></html>
|
---|