All about Samba - what it is, how to get it, related sources of information, how to understand the version numbering scheme, pizza details
Samba is a suite of programs which work together to allow clients to access to a server's filespace and printers via the SMB (Server Message Block) protocol. Initially written for Unix, Samba now also runs on Netware, OS/2 and VMS.
In practice, this means that you can redirect disks and printers to Unix disks and printers from Lan Manager clients, Windows for Workgroups 3.11 clients, Windows NT clients, Linux clients and OS/2 clients. There is also a generic Unix client program supplied as part of the suite which allows Unix users to use an ftp-like interface to access filespace and printers on any other SMB servers. This gives the capability for these operating systems to behave much like a LAN Server or Windows NT Server machine, only with added functionality and flexibility designed to make life easier for administrators.
The components of the suite are (in summary):
The suite is supplied with full source (of course!) and is GPLed.
The primary creator of the Samba suite is Andrew Tridgell. Later versions incorporate much effort by many net.helpers. The man pages and this FAQ were originally written by Karl Auer.
At time of writing, the current version was 1.9.17. If you want to be sure check the bottom of the change-log file. ftp://samba.anu.edu.au/pub/samba/alpha/change-log
For more information see What do the version numbers mean?
The Samba suite is available via anonymous ftp from samba.anu.edu.au. The latest and greatest versions of the suite are in the directory:
/pub/samba/
Development (read "alpha") versions, which are NOT necessarily stable and which do NOT necessarily have accurate documentation, are available in the directory:
/pub/samba/alpha
Note that binaries are NOT included in any of the above. Samba is distributed ONLY in source form, though binaries may be available from other sites. Recent versions of some Linux distributions, for example, do contain Samba binaries for that platform.
It is not recommended that you run a version of Samba with the word "alpha" in its name unless you know what you are doing and are willing to do some debugging. Many, many people just get the latest recommended stable release version and are happy. If you are brave, by all means take the plunge and help with the testing and development - but don't install it on your departmental server. Samba is typically very stable and safe, and this is mostly due to the policy of many public releases.
How the scheme works:
1.9.15p7 (production) 1.9.15p8 (production) 1.9.16alpha1 (test sites only) : 1.9.16alpha20 (test sites only) 1.9.16 (production) 1.9.16p1 (production)The above system means that whenever someone looks at the samba ftp site they will be able to grab the highest numbered release without an alpha in the name and be sure of getting the current recommended version.
Many different platforms have run Samba successfully. The platforms most widely used and thus best tested are Linux and SunOS.
At time of writing, the Makefile claimed support for:
There are a number of places to look for more information on Samba, including:
Send email to listproc@samba.anu.edu.au. Make sure the subject line is blank, and include the following two lines in the body of the message:
subscribe samba Firstname Lastname
subscribe samba-announce Firstname Lastname
Obviously you should substitute YOUR first name for "Firstname" and
YOUR last name for "Lastname"! Try not to send any signature stuff, it
sometimes confuses the list processor.
The samba list is a digest list - every eight hours or so it regurgitates a single message containing all the messages that have been received by the list since the last time and sends a copy of this message to all subscribers.
If you stop being interested in Samba, please send another email to listproc@samba.anu.edu.au. Make sure the subject line is blank, and include the following two lines in the body of the message:
unsubscribe samba
unsubscribe samba-announce
The From: line in your message MUST be the same address you used when
you subscribed.
DO NOT post messages on mailing lists or in newsgroups until you have carried out the first three steps given here!
Firstly, see if there are any likely looking entries in this FAQ! If you have just installed Samba, have you run through the checklist in DIAGNOSIS.txt? It can save you a lot of time and effort. DIAGNOSIS.txt can also be found in the docs directory of the Samba distribution.
Secondly, read the man pages for smbd, nmbd and smb.conf, looking for topics that relate to what you are trying to do.
Thirdly, if there is no obvious solution to hand, try to get a look at the log files for smbd and/or nmbd for the period during which you were having problems. You may need to reconfigure the servers to provide more extensive debugging information - usually level 2 or level 3 provide ample debugging info. Inspect these logs closely, looking particularly for the string "Error:".
Fourthly, if you still haven't got anywhere, ask the mailing list or newsgroup. In general nobody minds answering questions provided you have followed the preceding steps. It might be a good idea to scan the archives of the mailing list, which are available through the Samba web site described in the previous section.
If you successfully solve a problem, please mail the FAQ maintainer a succinct description of the symptom, the problem and the solution, so I can incorporate it in the next version.
If you make changes to the source code, _please_ submit these patches so that everyone else gets the benefit of your work. This is one of the most important aspects to the maintainence of Samba. Send all patches to samba-bugs@samba.anu.edu.au. Do not send patches to Andrew Tridgell or any other individual, they may be lost if you do.
Those who have registered in the Samba survey as "Pizza Factory" will already know this, but the rest may need some help. Andrew doesn't ask for payment, but he does appreciate it when people give him pizza. This calls for a little organisation when the pizza donor is twenty thousand kilometres away, but it has been done.
Method 1: Ring up your local branch of an international pizza chain and see if they honour their vouchers internationally. Pizza Hut do, which is how the entire Canberra Linux Users Group got to eat pizza one night, courtesy of someone in the US
Method 2: Ring up a local pizza shop in Canberra and quote a credit card number for a certain amount, and tell them that Andrew will be collecting it (don't forget to tell him.) One kind soul from Germany did this.
Method 3: Purchase a pizza voucher from your local pizza shop that has no international affiliations and send it to Andrew. It is completely useless but he can hang it on the wall next to the one he already has from Germany :-)
Method 4: Air freight him a pizza with your favourite regional flavours. It will probably get stuck in customs or torn apart by hungry sniffer dogs but it will have been a noble gesture.