This is a big question.
The very short answer is that it is the protocol by which a lot of PC-related machines share files and printers and other informatiuon such as lists of available files and printers. Operating systems that support this natively include Windows NT, OS/2, and Linux and add on packages that achieve the same thing are available for DOS, Windows, VMS, Unix of all kinds, MVS, and more. Apple Macs and some Web Browsers can speak this protocol as well. Alternatives to SMB include Netware, NFS, Appletalk, Banyan Vines, Decnet etc; many of these have advantages but none are both public specifications and widely implemented in desktop machines by default.
The Common Internet Filesystem (CIFS) is what the new SMB initiative is called. For details watch http://samba.org/cifs.
Here is a very short list of what samba includes, and what it does. For many networks this can be simply summarised by "Samba provides a complete replacement for Windows NT, Warp, NFS or Netware servers."
For a much better overview have a look at the web site at http://samba.org/samba, and browse the user survey.
[global] workgroup = hoge server string = Samba Server coding system = EUC password level = 8 guest accout = guest status = yes dead time = 360 log file = /var/log/samba/log.%m log Level = 1 [homes] comment = Home Directories read only = no browseable = no create mode = 0655 [Public] comment = Public Directory path = /home/samba/ public = yes writable = yes create mode = 0655 write list = @users #[CD-ROM] #comment = WinServer CD-ROM Drive #path = /mnt/cdrom #public = yes #writable = no #printable = no
# /etc/rc.d/init.d/smb restart
# testparm | less
# ps ax | grep lpd 288 ? S 0:00 lpd
[global] ... load printers = yes ... [printers] comment = All Printers path = /var/spool/samba browseable = no # Set public = yes to allow user 'guest account' to print guest ok = no writable = yes printable = yes
canon BJC-80v:\
:sd=/var/spool/lpd/lp:\
:mx#0:\
:sh:\
:lp=/dev/lp1:
swat 901/tcp # Add swat service used via ined
swat stream tcp nowait.400 root /usr/sbin/swat swat
/etc/rc.d/init.d/inetd restart
[global] wins support = yes domain master = yes local master = yes preferred master= yes os level = 65
[global] wins support = no wins server = 192.168.2.1
[global] workgroup = hoge domain logons = yes security = user encrypt passwords = yes logon path = \\%N\%U\Profiles smb passwd file = /etc/samba/smbpasswd [homes] writable = yes browseable = no hide dot files = yes [Profiles] writable = yes browseable = no [netlogon] comment = Network Login Service path = /home/samba/netlogon writable = no share modes = no browseable = no [cdrom] comment = CD ROM path = /mnt/cdrom read only = yes public = yes writable = yes browseable = no hide dot files = yes
[global] workgroup = hoge security = share [share] path = /home/samba/ read only = yes public = yes
| Option | Description | Example |
|---|---|---|
| username | specifies the username to connect as. If this is not given then the environment variable USER is used. | username=hogeuser |
| password | specifies the SMB password. If not given then smbmount will prompt for a passeword, unless the guest option is given. | password=hogesecret |
| ro | mount read-only | ro |
| rw | mount read-write | rw |
mount -t smbfs -o username=hogeuser,password=hogesecret,ro //hoge-server/mp3 /home/mp3