See the meta FAQ on CIFS and SMB if you don't have any idea what these protocols are.
CIFS and SMB are implemented by the main Samba fileserving daemon, smbd.
nmbd speaks a limited amount of CIFS (...) but is mostly concerned with
NetBIOS. NetBIOS is
So, provided you have got Samba correctly installed and running you have
all three of these protocols. Some operating systems already come with
stacks for all or some of these, such as SCO Unix, OS/2 and
At the last count, Samba runs on about 40 operating systems! This section looks at general questions about running Samba on the different platforms. Issues specific to particular operating systems are dealt with in elsewhere in this document.
Many of the ports have been done by people outside the Samba team keen to get the advantages of Samba. The Samba team is currently trying to bring as many of these ports as possible into the main source tree and integrate the documentation. Samba is an integration tool, and so it has been made as easy as possible to port. The platforms most widely used and thus best tested are Linux and SunOS.
This migration has not been completed yet. This means that some
documentation is on web sites
There are two main families of Samba ports, Unix and other. The Unix ports cover anything that remotely resembles Unix and includes some extremely old products as well as best-sellers, tiny PCs to massive multiprocessor machines supporting hundreds of thousands of users. Samba has been run on more than 30 Unix and Unix-like operating systems.
../UNIX-SMB.txt describes some of the issues that confront a SMB implementation on unix, and how Samba copes with them. They may help people who are looking at unix<->PC interoperability.
There is great variation between Unix implementations, especially those
not adhering to the Common Unix Specification agreed to in 1996. Things
that can be quite tricky are
There are also some considerable advantages conferred on Samba running
under Unix compared to, say, Windows NT or LAN Server. Unix has
At time of writing, the Makefile claimed support for:
More recently Samba has been ported to a number of operating systems which can provide a BSD Unix-like implementation of TCP/IP sockets. These include OS/2, Netware, VMS, StratOS, Amiga and MVS. BeOS, Windows NT and several others are being worked on but not yet available for use.
Home pages for these ports are:
Files, printers, CD ROMs and other local devices. Network devices,
including networked filesystems and remote printer queues. Other devices
1.4) Configuring SHARES 1.4.1) Homes service 1.4.2) Public services 1.4.3) Application serving 1.4.4) Team sharing a Samba resource
1.5) Printer configuration 1.5.1) Berkeley LPR/LPD systems 1.5.2) ATT SysV lp systems 1.5.3) Using a private printcap file 1.5.4) Use of the smbprint utility 1.5.5) Printing from Windows to Unix 1.5.6) Printing from Unix to Windows
See also ../BROWSING.txt
1.6) Name resolution issues 1.6.1) LMHOSTS file and when to use it 1.6.2) configuring WINS (support, server, proxy) 1.6.3) configuring DNS proxy
1.7) Problem Diagnosis 1.8) What NOT to do!!!!
3.2) Browse list managment 3.3) Name resolution mangement
SMB encryption is ...
...in ../ENCRYPTION.txt there is...
Samba compiled with libdes - enabling encrypted passwords
See BROWSING.txt for more information on browsing. Browsing.txt can also be found in the docs directory of the Samba source.
If your GUI client does not permit you to select non-browsable servers, you may need to do so on the command line. For example, under Lan Manager you might connect to the above service as disk drive M: thusly:
The details of how to do this and the specific syntax varies from client to client - check your client's documentation.
net use M: \\mary\fred
See the next question.
If you check what files are not showing up, you will note that they are files which contain upper case letters or which are otherwise not DOS-compatible (ie, they are not legal DOS filenames for some reason).
The Samba server can be configured either to ignore such files completely, or to present them to the client in "mangled" form. If you are not seeing the files at all, the Samba server has most likely been configured to ignore them. Consult the man page smb.conf(5) for details of how to change this - the parameter you need to set is "mangled names = yes".
This indicates one of three things: You supplied an incorrect server name, the underlying TCP/IP layer is not working correctly, or the name you specified cannot be resolved.
After carefully checking that the name you typed is the name you should have typed, try doing things like pinging a host or telnetting to somewhere on your network to see if TCP/IP is functioning OK. If it is, the problem is most likely name resolution.
If your client has a facility to do so, hardcode a mapping between the hosts IP and the name you want to use. For example, with Man Manager or Windows for Workgroups you would put a suitable entry in the file LMHOSTS. If this works, the problem is in the communication between your client and the netbios name server. If it does not work, then there is something fundamental wrong with your naming and the solution is beyond the scope of this document.
If you do not have any server on your subnet supplying netbios name resolution, hardcoded mappings are your only option. If you DO have a netbios name server running (such as the Samba suite's nmbd program), the problem probably lies in the way it is set up. Refer to Section Two of this FAQ for more ideas.
By the way, remember to REMOVE the hardcoded mapping before further tests :-)
This message indicates that your client CAN locate the specified server, which is a good start, but that it cannot find a service of the name you gave.
The first step is to check the exact name of the service you are trying to connect to (consult your system administrator). Assuming it exists and you specified it correctly (read your client's doco on how to specify a service name correctly), read on:
Nothing is wrong - Samba does not implement the primary domain name controller stuff for several reasons, including the fact that the whole concept of a primary domain controller and "logging in to a network" doesn't fit well with clients possibly running on multiuser machines (such as users of smbclient under Unix). Having said that, several developers are working hard on building it in to the next major version of Samba. If you can contribute, send a message to email@example.com !
Seeing this message should not affect your ability to mount redirected disks and printers, which is really what all this is about.
For many clients (including Windows for Workgroups and Lan Manager), setting the domain to STANDALONE at least gets rid of the message.
Make sure that the specified print command for the service you are connecting to is correct and that it has a fully-qualified path (eg., use "/usr/bin/lpr" rather than just "lpr", if you happen to be using Unix).
Make sure that the spool directory specified for the service is writable by the user connected to the service.
Make sure that the user specified in the service is permitted to use the printer.
Check the debug log produced by smbd. Search for the printer name and see if the log turns up any clues. Note that error messages to do with a service ipc$ are meaningless - they relate to the way the client attempts to retrieve status information when using the LANMAN1 protocol.
If using WfWg then you need to set the default protocol to TCP/IP, not Netbeui. This is a WfWg bug.
If using the Lanman1 protocol (the default) then try switching to coreplus. Also not that print status error messages don't mean printing won't work. The print status is received by a different mechanism.
There are numerous possible reasons for this, but one MAJOR possibility is that your software uses locking. Make sure you are using Samba 1.6.11 or later. It may also be possible to work around the problem by setting "locking=no" in the Samba configuration file for the service the software is installed on. This should be regarded as a strictly temporary solution.
In earlier Samba versions there were some difficulties with the very latest Microsoft products, particularly Excel 5 and Word for Windows 6. These should have all been solved. If not then please let Andrew Tridgell know via email at firstname.lastname@example.org.
OR My client reports the default setting, eg. "Samba 1.9.15p4", instead of what I have changed it to in the smb.conf file.
You need to use the -C option in nmbd. The "server string" affects what smbd puts out and -C affects what nmbd puts out.
Current versions of Samba (1.9.16 +) have combined these options into the "server string" field of smb.conf, -C for nmbd is now obsolete.
Your guest account is probably invalid for some reason. Samba uses the guest account for browsing in smbd. Check that your guest account is valid.
See also 'guest account' in smb.conf man page.
The user "nobody" often has problems with printing, even if it worked with an earlier version of Samba. Try creating another guest user other than "nobody".
This can have several causes. It might be because you are using a uid or gid of 65535 or -1. This is a VERY bad idea, and is a big security hole. Check carefully in your /etc/passwd file and make sure that no user has uid 65535 or -1. Especially check the "nobody" user, as many broken systems are shipped with nobody setup with a uid of 65535.
It might also mean that your OS has a trapdoor uid/gid system :-)
This means that once a process changes effective uid from root to another user it can't go back to root. Unfortunately Samba relies on being able to change effective uid from root to non-root and back again to implement its security policy. If your OS has a trapdoor uid system this won't work, and several things in Samba may break. Less things will break if you use user or server level security instead of the default share level security, but you may still strike problems.
The problems don't give rise to any security holes, so don't panic, but it does mean some of Samba's capabilities will be unavailable. In particular you will not be able to connect to the Samba server as two different uids at once. This may happen if you try to print as a "guest" while accessing a share as a normal user. It may also affect your ability to list the available shares as this is normally done as the guest user.
Complain to your OS vendor and ask them to fix their system.
Note: the reason why 65535 is a VERY bad choice of uid and gid is that it casts to -1 as a uid, and the setreuid() system call ignores (with no error) uid changes to -1. This means any daemon attempting to run as uid 65535 will actually run as root. This is not good!
Samba for OS/2
Samba for OS/390 MVS
Samba for Amiga
There is a mailing list for Samba on the Amiga.
Send an email to email@example.com with the word subscribe in the message. The list server will use the address in the Reply-To: or From: header field, in that order.
Send an email to firstname.lastname@example.org with the word unsubscribe in the message. The list server will use the address in the Reply-To: or From: header field, in that order. If you are unsure which address you are subscribed with, look at the headers. You should see a "From " (no colon) or Return-Path: header looking something like
where myname=my.domain gives you the address email@example.com. This also means that I will always be able to find out which address is causing bounces, for example. List archive.
Messages sent to the list are archived in HTML. See the mailing list home page at http://www.gbar.dtu.dk/~c948374/Amiga/Samba/mailinglist/
Samba for Stratus VOS