1<HTML>
2<HEAD>
3<TITLE> Samba FAQ: Compiling and installing Samba on a Unix host</TITLE>
4</HEAD>
5<BODY>
6<A HREF="sambafaq-1.html">Previous</A>
7<A HREF="sambafaq-3.html">Next</A>
8<A HREF="sambafaq.html#toc2">Table of Contents</A>
9<HR>
10<H2><A NAME="s2">2. Compiling and installing Samba on a Unix host</A></H2>
11
12<P>
13<A NAME="unix_install"></A> 
14</P>
15
16<H2><A NAME="ss2.1">2.1 I can't see the Samba server in any browse lists!</A></H2>
17
18<P>
19<A NAME="no_browse"></A> 
20
21See BROWSING.txt for more information on browsing.  BROWSING.txt can
22be found in the docs directory of the Samba source.</P> <P>If your GUI
23client does not permit you to select non-browsable servers, you may
24need to do so on the command line. For example, under Lan Manager you
25might connect to the above service as disk drive M: thusly:
26<BLOCKQUOTE><CODE>
27<PRE>
28   net use M: \\mary\fred
29</PRE>
30</CODE></BLOCKQUOTE>
31
32The details of how to do this and the specific syntax varies from
33client to client - check your client's documentation.</P>
34
35
36<H2><A NAME="ss2.2">2.2 Some files that I KNOW are on the server doesn't show up when I view the files from my client! </A></H2>
37
38<P> 
39<A NAME="missing_files"></A> 
40
41See the next question.</P>
42
43<H2><A NAME="ss2.3">2.3 Some files on the server show up with really wierd filenames when I view the files from my client! </A></H2>
44
45<P> 
46<A NAME="strange_filenames"></A> 
47
48If you check what files are not showing up, you will note that they
49are files which contain upper case letters or which are otherwise not
50DOS-compatible (ie, they are not legal DOS filenames for some reason).</P>
51<P>The Samba server can be configured either to ignore such files
52completely, or to present them to the client in "mangled" form. If you
53are not seeing the files at all, the Samba server has most likely been
54configured to ignore them.  Consult the man page smb.conf(5) for
55details of how to change this - the parameter you need to set is
56"mangled names = yes".</P>
57
58
59<H2><A NAME="ss2.4">2.4 My client reports "cannot locate specified computer" or similar</A></H2>
60
61<P>
62<A NAME="cant_see_server"></A> 
63
64This indicates one of three things: You supplied an incorrect server
65name, the underlying TCP/IP layer is not working correctly, or the
66name you specified cannot be resolved.</P>
67<P>After carefully checking that the name you typed is the name you
68should have typed, try doing things like pinging a host or telnetting
69to somewhere on your network to see if TCP/IP is functioning OK. If it
70is, the problem is most likely name resolution.</P>
71<P>If your client has a facility to do so, hardcode a mapping between the
72hosts IP and the name you want to use. For example, with Man Manager
73or Windows for Workgroups you would put a suitable entry in the file
74LMHOSTS. If this works, the problem is in the communication between
75your client and the netbios name server. If it does not work, then
76there is something fundamental wrong with your naming and the solution
77is beyond the scope of this document.</P>
78<P>If you do not have any server on your subnet supplying netbios name
79resolution, hardcoded mappings are your only option. If you DO have a
80netbios name server running (such as the Samba suite's nmbd program),
81the problem probably lies in the way it is set up. Refer to Section
82Two of this FAQ for more ideas.</P>
83<P>By the way, remember to REMOVE the hardcoded mapping before further
84tests :-)     </P>
85
86
87<H2><A NAME="ss2.5">2.5 My client reports "cannot locate specified share name" or similar</A></H2>
88
89<P> 
90<A NAME="cant_see_share"></A> 
91
92This message indicates that your client CAN locate the specified
93server, which is a good start, but that it cannot find a service of
94the name you gave.</P>
95<P>The first step is to check the exact name of the service you are
96trying to connect to (consult your system administrator). Assuming it
97exists and you specified it correctly (read your client's doco on how
98to specify a service name correctly), read on:</P>
99<P>
100<UL>
101<LI> Many clients cannot accept or use service names longer than eight characters.</LI>
102<LI> Many clients cannot accept or use service names containing spaces.</LI>
103<LI> Some servers (not Samba though) are case sensitive with service names.</LI>
104<LI> Some clients force service names into upper case.</LI>
105</UL>
106</P>
107
108
109<H2><A NAME="ss2.6">2.6 My client reports "cannot find domain controller", "cannot log on to the network" or similar </A></H2>
110
111<P> 
112<A NAME="cant_see_net"></A> 
113
114Nothing is wrong - Samba does not implement the primary domain name
115controller stuff for several reasons, including the fact that the
116whole concept of a primary domain controller and "logging in to a
117network" doesn't fit well with clients possibly running on multiuser
118machines (such as users of smbclient under Unix). Having said that,
119several developers are working hard on building it in to the next
120major version of Samba. If you can contribute, send a message to
121<A HREF="mailto:samba@samba.org">samba@samba.org</A> !</P>
122<P>Seeing this message should not affect your ability to mount redirected
123disks and printers, which is really what all this is about.</P>
124<P>For many clients (including Windows for Workgroups and Lan Manager),
125setting the domain to STANDALONE at least gets rid of the message.</P>
126
127
128<H2><A NAME="ss2.7">2.7 Printing doesn't work :-(</A></H2>
129
130<P> 
131<A NAME="no_printing"></A> 
132
133Make sure that the specified print command for the service you are
134connecting to is correct and that it has a fully-qualified path (eg.,
135use "/usr/bin/lpr" rather than just "lpr").</P>
136<P>Make sure that the spool directory specified for the service is
137writable by the user connected to the service. In particular the user
138"nobody" often has problems with printing, even if it worked with an
139earlier version of Samba. Try creating another guest user other than
140"nobody".</P>
141<P>Make sure that the user specified in the service is permitted to use
142the printer.</P>
143<P>Check the debug log produced by smbd. Search for the printer name and
144see if the log turns up any clues. Note that error messages to do with
145a service ipc$ are meaningless - they relate to the way the client
146attempts to retrieve status information when using the LANMAN1
147protocol.</P>
148<P>If using WfWg then you need to set the default protocol to TCP/IP, not
149Netbeui. This is a WfWg bug.</P>
150<P>If using the Lanman1 protocol (the default) then try switching to
151coreplus.  Also not that print status error messages don't mean
152printing won't work. The print status is received by a different
153mechanism.</P>
154
155
156<H2><A NAME="ss2.8">2.8 My programs install on the server OK, but refuse to work properly</A></H2>
157
158<P>
159<A NAME="programs_wont_run"></A> 
160
161There are numerous possible reasons for this, but one MAJOR
162possibility is that your software uses locking. Make sure you are
163using Samba 1.6.11 or later. It may also be possible to work around
164the problem by setting "locking=no" in the Samba configuration file
165for the service the software is installed on. This should be regarded
166as a strictly temporary solution.</P>
167<P>In earlier Samba versions there were some difficulties with the very
168latest Microsoft products, particularly Excel 5 and Word for Windows
1696. These should have all been solved. If not then please let Andrew
170Tridgell know via email at 
171<A HREF="mailto:samba@samba.org">samba@samba.org</A>.</P>
172
173
174<H2><A NAME="ss2.9">2.9 My "server string" doesn't seem to be recognised</A></H2>
175
176<P>
177<A NAME="bad_server_string"></A> 
178
179OR My client reports the default setting, eg. "Samba 1.9.15p4", instead
180of what I have changed it to in the smb.conf file.</P>
181<P>You need to use the -C option in nmbd. The "server string" affects
182what smbd puts out and -C affects what nmbd puts out.</P>
183<P>Current versions of Samba (1.9.16 +) have combined these options into
184the "server string" field of smb.conf, -C for nmbd is now obsolete.</P>
185
186
187<H2><A NAME="ss2.10">2.10 My client reports "This server is not configured to list shared resources" </A></H2>
188
189<P> 
190<A NAME="cant_list_shares"></A> 
191
192Your guest account is probably invalid for some reason. Samba uses the
193guest account for browsing in smbd.  Check that your guest account is
194valid.</P>
195<P>See also 'guest account' in smb.conf man page.</P>
196
197
198<H2><A NAME="ss2.11">2.11 Log message "you appear to have a trapdoor uid system" </A></H2>
199
200<P>
201<A NAME="trapdoor_uid"></A> 
202
203This can have several causes. It might be because you are using a uid
204or gid of 65535 or -1. This is a VERY bad idea, and is a big security
205hole. Check carefully in your /etc/passwd file and make sure that no
206user has uid 65535 or -1. Especially check the "nobody" user, as many
207broken systems are shipped with nobody setup with a uid of 65535.</P>
208<P>It might also mean that your OS has a trapdoor uid/gid system :-)</P>
209<P>This means that once a process changes effective uid from root to
210another user it can't go back to root. Unfortunately Samba relies on
211being able to change effective uid from root to non-root and back
212again to implement its security policy. If your OS has a trapdoor uid
213system this won't work, and several things in Samba may break. Less
214things will break if you use user or server level security instead of
215the default share level security, but you may still strike
216problems.</P>
217<P>The problems don't give rise to any security holes, so don't panic,
218but it does mean some of Samba's capabilities will be unavailable.
219In particular you will not be able to connect to the Samba server as
220two different uids at once. This may happen if you try to print as a
221"guest" while accessing a share as a normal user. It may also affect
222your ability to list the available shares as this is normally done as
223the guest user.</P>
224<P>Complain to your OS vendor and ask them to fix their system.</P>
225<P>Note: the reason why 65535 is a VERY bad choice of uid and gid is that
226it casts to -1 as a uid, and the setreuid() system call ignores (with
227no error) uid changes to -1. This means any daemon attempting to run
228as uid 65535 will actually run as root. This is not good!</P>
229
230
231<HR>
232<A HREF="sambafaq-1.html">Previous</A>
233<A HREF="sambafaq-3.html">Next</A>
234<A HREF="sambafaq.html#toc2">Table of Contents</A>
235</BODY>
236</HTML>
237