Previous Next Table of Contents

## 2. General Information

All about Samba - what it is, how to get it, related sources of information, how to understand the numbering scheme, pizza details.

## 2.1 What is Samba?

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) and CIFS (Common Internet Filesystem) protocols. Initially written for Unix, Samba now also runs on Netware, OS/2, VMS, StratOS and Amigas. Ports to BeOS and other operating systems are underway. Samba gives the capability for these operating systems to behave much like a LAN Server, Windows NT Server or Pathworks machine, only with added functionality and flexibility designed to make life easier for administrators.

This means that using Samba you can share a server's disks and printers to many sorts of network clients, including Lan Manager, Windows for Workgroups, Windows NT, Linux, OS/2, and AIX. There is also a generic client program supplied as part of the Samba suite which gives a user on the server an ftp-like interface to access filespace and printers on any other SMB/CIFS servers.

SMB has been implemented over many protocols, including XNS, NBT, IPX, NetBEUI and TCP/IP. Samba only uses TCP/IP. This is not likely to change although there have been some requests for NetBEUI support.

Many users report that compared to other SMB implementations Samba is more stable, faster, and compatible with more clients. Administrators of some large installations say that Samba is the only SMB server available which will scale to many tens of thousands of users without crashing. The easy way to test these claims is to download it and try it for yourself!

The suite is supplied with full source code under the GNU Public License. The GPL means that you can use Samba for whatever purpose you wish (including changing the source or selling it for money) but under all circumstances the source code must be made freely available. A copy of the GPL must always be included in any copy of the package.

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.

## 2.2 What is the current version of Samba?

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.org/pub/samba/alpha/change-log

For more information see What do the version numbers mean?

## 2.3 Where can I get it?

The Samba suite is available via anonymous ftp from samba.org and many mirror sites. You will get much faster performance if you use a mirror site. 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. Most Linux distributions, for example, do contain Samba binaries for that platform. The VMS, OS/2, Netware and Amiga and other ports typically have binaries made available.

A special case is vendor-provided binary packages. Samba binaries and default configuration files are put into packages for a specific operating system. RedHat Linux and Sun Solaris (Sparc and x86) is already included, and others such as OS/2 may follow. All packages are in the directory:

/pub/samba/Binary_Packages/"OS_Vendor"

## 2.4 What do the version numbers mean?

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. When major changes are made the version number is increased. For example, the transition from 1.9.16 to 1.9.17. However, this version number will not appear immediately and people should continue to use 1.9.15 for production systems (see next point.)
2. Just after major changes are made the software is considered unstable, and a series of alpha releases are distributed, for example 1.9.16alpha1. These are for testing by those who know what they are doing. The "alpha" in the filename will hopefully scare off those who are just looking for the latest version to install.
3. When Andrew thinks that the alphas have stabilised to the point where he would recommend new users install it, he renames it to the same version number without the alpha, for example 1.9.17.
4. Inevitably bugs are found in the "stable" releases and minor patch levels are released which give us the pXX series, for example 1.9.17p2.

So the progression goes:

                    1.9.16p10       (production)
                    1.9.16p11       (production)
                    1.9.17alpha1    (test sites only)
                      :
                    1.9.17alpha20   (test sites only)
                    1.9.17          (production)
                    1.9.17p1        (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.

## 2.5 Where can I go for further information?

There are a number of places to look for more information on Samba, including:

- Two mailing lists devoted to discussion of Samba-related matters. See below for subscription information.
- The newsgroup comp.protocols.smb, which has a great deal of discussion about Samba.
- The WWW site 'SAMBA Web Pages' at http://samba.org/samba/ includes:
  - Links to man pages and documentation, including this FAQ
  - A comprehensive survey of Samba users
  - A searchable hypertext archive of the Samba mailing list
  - Links to Samba source code, binaries, and mirrors of both
  - This FAQ and the rest in its family

## 2.6 How do I subscribe to the Samba Mailing Lists?

Send email to listproc@samba.org. 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, it sometimes confuses the list processor.

The samba list is a digest list - every eight hours or so it sends 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. There are thousands of people on this list.

If you stop being interested in Samba, please send another email to listproc@samba.org. 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.

## 2.7 Something's gone wrong - what should I do?

# *** IMPORTANT! *** #

DO NOT post messages on mailing lists or in newsgroups until you have carried out the first three steps given here!

1. 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.
2. Read the man pages for smbd, nmbd and smb.conf, looking for topics that relate to what you are trying to do.
3. 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:".
4. If you need urgent help and are willing to pay for it see Paid Support.

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. When you post be sure to include a good description of your environment and your problem.

If you successfully solve a problem, please mail the FAQ maintainer a succinct description of the symptom, the problem and the solution, so that an explanation can be incorporated into the next version.

## 2.8 How do I submit patches or bug reports?

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@samba.org. Do not send patches to Andrew Tridgell or any other individual, they may be lost if you do.

Patch format ------------

If you are sending a patch to fix a problem then please don't just use standard diff format. As an example, samba received this patch from someone:

382a #endif .. 381a #if !defined(NEWS61)

How are we supposed to work out what this does and where it goes? These sort of patches only work if we both have identical files in the first place. The Samba sources are constantly changing at the hands of multiple developers, so it doesn't work.

Please use either context diffs or (even better) unified diffs. You get these using "diff -c4" or "diff -u". If you don't have a diff that can generate these then please send manualy commented patches to I know what is being changed and where. Most patches are applied by hand so the info must be clear.

This is a basic guideline that will assist us with assessing your problem more efficiently :

Machine Arch: Machine OS: OS Version: Kernel:

Compiler: Libc Version:

Samba Version:

Network Layout (description):

What else is on machine (services, etc):

Some extras :

- what you did and what happened
- relevant parts of a debugging output file with debuglevel higher. If you can't find the relevant parts, please ask before mailing huge files.
- anything else you think is useful to trace down the bug

## 2.9 What if I have an URGENT message for the developers?

If you have spotted something very serious and believe that it is important to contact the developers quickly send a message to samba-urgent@samba.org. This will be processed more quickly than mail to samba. Please think carefully before using this address. An example of its use might be to report a security hole.

Examples of things not to send to samba-urgent include problems getting Samba to work at all and bugs that cannot potentially cause damage.

## 2.10 What if I need paid-for support?

Samba has a large network of consultants who provide Samba support on a commercial basis. The list is included in the package in ../Support.txt, and the latest version will always be on the main samba ftp site. Any company in the world can request that the samba team include their details in Support.txt so we can give no guarantee of their services.

## 2.11 Pizza supply details

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.

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.
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.
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 :-)
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.

Previous Next Table of Contents