Using Samba
Overview
Samba is a suite of software tools implementing the SMB protocol. With Samba, you can share files and printers from a Unix-based server to Windows-based clients. You can even control a Windows NT based domain with a Unix server, potentially saving thousands of dollars in software licensing fees and administration costs.
Using Samba takes you from your initial need for Samba in a heterogenous network to installation, through configuration, and ending up with performance tweaking. Most of the focus is on the server side, but there's information about the SMB protocol itself and client setup.
Note: This review is based upon a draft copy of the book. The final copy has been reorganized and some parts have been rewritten. Most of the information still applies.
What's Good?
As is Samba, Using Samba is Unix-variant agnostic, with installation tips for multiple OS's. This covers download sites, compilation, and even SWAT, the web-based configuration interface in Samba 2.0.x. The authors have a clear, clean style (as you'd expect from O'Reilly) and take a common-sense, practical approach to various issues such as security and configuration. The authors also focus on additional Samba utilties like smbclient and smbmount, which are useful for troubleshooting.
The chapter on tweaking for performance is excellent. More books deserve chapters like this. The authors go through the various bottlenecks and demonstrate how modifying one parameter affects the others. (I suspect the general principles are applicable elsewhere.)
The real gem of this book is chapter nine, the troubleshooting tree. If you're stuck with weird behavior and you have a deadline to meet, this chapter alone may be well worth the cover price. It starts by discussing Samba logs, moves into trace and tcpdump, spends pages and pages on an extremely detailed Fault Tree, and ends up with pointers to other resources.
What's not so good?
(These are really minor points. My recommendation is that if you're looking at Samba, you should read the sample chapter and then buy this book.)
The chapter on configuring Windows clients seemed a little out of place, given that this book promotes Samba as a replacement or alternative to a Windows server. That's pretty straightforward, and probably not why you'd buy a book about Samba. The NT Domain model discusison is valuable, though, given that a Samba server may have to act as a Domain Controller or a Master Browser, and that can have big implications.
Using Samba covers both versions 1.9.x and 2.0.x. It would have made more sense to me to stick with the latest stable version and cover it in detail. However, most of the options are the same between the two, and the differences are clearly marked. There are only a handful of places where this comes up. As I said, it's only a minor issue.
The Bottom Line
If you know you need Samba and want some help setting it up and configuring it, this is your book. If you're curious about what Samba can do for your network, flip through the first chapter and rest assured that this book will help you get things under control.
Purchase this book at fatbrain
Table of Contents
Preface
1. Learning the Samba
What is Samba?
What Can Samba Do For Me?
Getting Familiar with a SMB/CIFS Network
Microsoft Implementations
An Overview of the Samba Distribution
How Can I Get Samba?
What's New in Samba 2.0?
And That's Not All...
2. Installing Samba on a Unix System
Downloading the Samba Distribution
Configuring Samba
Compiling and Installing Samba
A Basic Samba Configuration File
Starting the Samba Daemons
Testing the Samba Daemons
3. Configuring Windows Clients
Setting Up Windows 95/98 Computers
Setting Up Windows NT 4.0 Computers
An Introduction to SMB/CIFS
4. Disk Shares
Learning the Samba Configuration File
Special Sections
Configuration File Options
Server Configuration
Disk Share Configuration
Networking Options with Samba
Virtual Servers
Logging Configuration Options
5. Browsing and Advanced Disk Shares
Browsing
Filesystem Differences
File Permissions and Attributes on MS-DOS and Unix
Name Mangling and Case
Locks and Oplocks
6. Users, Security, and Domains
Users and Groups
Controlling Access to Shares
Authentication Security
Passwords
Windows Domains
Logon Scripts
7. Printing and Name Resolution
Sending Print Jobs to Samba
Printing to Windows Client Printers
Name Resolution with Samba
8. Additional Samba Information
Supporting Programmers
Magic Scripts
Internationalization
WinPopup Messages
Recently Added Options
Miscellaneous Options
Backups with smbtar
9. Troubleshooting Samba
The Tool Bag
The Fault Tree
Extra Resources
A. Configuring Samba with SSL
B. Samba Performance Tuning
C. Samba Configuration Option Quick Reference
D. Summary of Samba Daemons and Commands
E. Downloading Samba with CVS
F. Sample Configuration File
Does the book cover 2.0.6? This is somewhat important, because smbmount has been changed to work with mount, and I'm still figuring out the best way to utilize this.
Secondly, I've heard that this book will be available online, in addition to dead tree format, for those who are cheap, or want to explore new economic models for content.
pooptruck
"The chapter on configuring Windows clients seemed a little out of place, given that this book promotes Samba as a replacement or alternative to a Windows server. That's pretty straightforward, and probably not why you'd buy a book about Samba."
I hope that I'm just reading this passage incorrectly, but as written, it makes no sense to me at all. Information on how to configure Windows clients is exactly why I'd consider purchasing a book on Samba. Samba is intended as a "a replacement or alternative to a Windows server", so of course there will be Windows clients connecting to it. Also, it is very likely that a Samba server will be dropped into a MS (NT, Win95, whatever) network environment, and will have to "play nice" with the exsisting network machines. Therefore, it is highly appropriate to have a section devoted to the configuration of Windows clients in the book. As someone who has not regularly used a MS-Windows OS in many years, I would surely appreciate having the reference on Windows clients to fall back on.
I read the sample chapter last night. I enjoyed the writing style and it really conveyed a lot of information to me quickly.
I'm approaching this from a Samba newbie standpoint so all the information was interesting and helpful. Experienced users might not find it so. But, I believe a program that is always evolving as Samba does and adding new configurations parameters will have few masters who don't use a reference book. I might not always have an answer, but I almost always know where to get one.
I almost wouldn't mind seeing a book about how to replace your NT server with Linux. Meaning, if I have an NT server running file serving, print serving, fax serving, and Exchange e-mail, what do I need to get on a Linux box to replace it wholesale so my users have no idea what just happened? Especially if I have Mac as well as Windows clients. I guess I'm talking about a small business server guide to using Linux instead of NT.
I do hope they keep this book up to date at the Samba site. With the constant changes some of this information gets old quickly.
I didn't think about it that way... My line of reasoning was that Samba allows you to replace a Windows server with a Unix box in an existing network.
If you have an existing network set up, your Windows clients are probably already configured. The assumption there is that anyone setting up Samba has already configured the clients for one server or another, and the configuration method is the same no matter what type of server they use. Of course, you can also set up a network from scratch, with absolutely no Windows servers, which renders that assumption invalid.
Thanks for the comment. Now I understand why that chapter was there!
--
QDMerge 0.4!
how to invest, a novice's guide
The licence is kind of interesting.
Read the whole story at http://www.oreilly.co m/catalog/samba/chapter/licenseinfo.html.
Hi!
Windows 9x users are still unable to obtain a user list from the samba server for user-level file sharing. I'm just curious as to what the stumbling blocks. Undocumented Windows calls? Crypto that hasn't been cracked yet? Fear of lawsuits from MS? What?
Then I wouldn't have had to buy the Sam's book "24 Hours of Samba Hell that will save you hundreds of dollars in Windows NT licenses - and your networked software will never know the difference" -- Paraphrased, obviously... :)
Joe
"Just remember,
Things could always be worse..
You could be veal."
Like the subject says. This book might be worth buying in print, but since it's not out (or even finished, apparantly) yet It'd be great to get online in the meantime.
So anybody know where?
where is the online version of the book?
This book was originally scheduled for some time around August and had essentially been completed then.
Maybe it has been updated to cover newer levels since then so as to avoid duplicating the 'Samba in 24 hours' information, but 2.0.6 is less that a week old so no chance there.
If in doubt, see how smbmount is documented - that is the item where the user interface has undergone major changes recently.
Mielipiteet omiani - Opinions personal, facts suspect.
I'm glad to see reviews of a draft copy of anything here on slashdot!
... (and nicely behind the curve with the reviews of older SciFi etc, too).
Ahead of the curve
Cool!
timothy
jrnl: http://tinyurl.com/c2l8yr / foes: http://tinyurl.com/ckjno5
The book has been adopted by the Samba Team as the "official" Samba book and we will strive to keep it up to date. O'Reilly have sent us the full sources for the book and we will be making it available online as soon as we can, we just need to work out some formatting and conversion issues. We also plan to make it directly accessible from SWAT. A huge thanks to O'Reilly for this great step forward in the documentation of Samba!
I bought a copy at Borders today.
We are trying to implement a single-login -- ie, NIS + NFS + etc -- procedure here in the lab and to add this facility to the windows users, what would be really apreciatted by those ( users would be able to mount their home dir everywhere, even in the windows boxes, avoding lost of data in the computers jungle and would need to remember one single password only ) and by the adm. ( that would have fewer places to take care of... )
Samba would be the perfect tool to this particular problem IFF it could use the system's password authentication scheme ( in our case, the NIS passwd DB ) instead of its own. I thought that there was an smb.conf option that would make it use the sys's passwd but it seems that there ins't such option!
Now, would any of the fine slashdotters help me out with this problem?
--- "I may be drunk, but in the morning I will be sober, while you will still be stupid and ugly." -Winston Churchill
Samba in 24 Hours is quite a good book IMO, it has some case studies and discusses most areas very well and has some reall nifty sample configs included
Configuration is a bit tricky though.
I would recommend this setup for no more than 5 computers, but maybe with tweaking it could be set up and stable on more systems.
The way I did it involves using a feature of Outlook 98/2000, namely Web Folders, in conjunction with Microsoft Mail (Although it could be made to run over any email service.)
What I found is that by using Web Folders you can send updates to calendars, tasks, contacts, etc. through email messages, which are intercepted and executed by Outlook in the background (the user never "sees" these emails, they are deleted by Outlook after being processed.)
Exchange is extremely expensive as a standalone product. I am working rapidly to move to Linux based servers, as I do network installs for small legal firms (1-2 partners and 2-3 assistants/paralegals.) They simply can't keep up with the licensing.
Exchange has been the biggest barrier to complete Linux migration thus far, but I've been somewhat successful with this implementation. See the article on my website here.
http://www.dragonflydynamix.com/jvlmnlaw.htm
Free music from Jack Merlot.
Is there really enough info and details about Samba to require a whole new Blue-spine O'Reilly book? Why couldn't it just be rolled into an expanded edition of "Networking Personal Computers With TCP/IP"? Actually, you'll want a copy of that book along with "Using Samba" in any case. Especially if you're wanting to bring online older hardware like MS-DOS and WFW systems.
O'Reilly "Open Sourced" the Network Administrator's Guide (by Olaf Kirsch?) and frankly, they didn't do very well.
I especially like the clause where another publisher can put out the book but must put a credit to O'Reilly on the outside cover.
The SAMBA BLACK BOOK will be the bible of them all.. It covers everything from A to Z... One bad thing.. It will be published in Janurary... I'm working on the French translation and the early edition is VERY VERY nice...
I THINK that lotus is planning on releasing a version of Notes server for linux, that could be a replacement, though not a drop in replacement. Other than that I'd suggest an IMAP server and replicating Exchanges other features (I don't use exchange, so I don't know all of them) such as Calendering and Colaboration and others with Web based apps (using php and mySQL and such).
Looking at the index, it does not appear to cover smbmount at all. I know that one of the authors (D C-B) has a Solaris background, not sure about the other two.
The new smbmount is really easy to use, I have not tried it with fstab yet. Once I do, it will go up in my home-page which covers this sort of stuff.
Mielipiteet omiani - Opinions personal, facts suspect.
I see Dave Collier-Brown already tacked a few questions above, so I'll deal with a few others.
OPEN-CONTENT LICENSE:
Some info about the open-content license:
1) About two months ago, Andrew Tridgell and Andy Oram (the editor) and myself agreed to publish this book under an open-content license. This was primarily at the behest of Andrew Tridgell--so be sure to send him and Jeremy Allison many pizzas as thanks.
2) The book went to print about a month ago. We tried to get as quick a turnaround time as possible, since this book has been delayed a couple of times already. Why was it delayed, you ask? Let's just say that Andrew Tridgell is a very thorough reviewer.
3) After the final edits went through, we sent the source in SGML format to the good people at samba.org. That was a couple of weeks ago. They are currently formatting it for online use, and they will also be maintaining it. When it becomes available, you can download it from samba.org.
DOES THE BOOK COVER 2.0.6?
No, it does not. At the time it went to print, 2.0.5 was the latest Samba release in existence.
WINDOWS CLIENT CONFIG CHAPTER
The reply is correct. You want to be able to configure Windows 95/98/NT Workstation to use with Samba because it masquerades as an NT server. However, because Samba and NT don't like to coexist, there are issues. (And, don't forget the dreaded encrypted password problem that all first-time Samba admins face). Topics like that are what this chapter tries to address... from the client side.
RE: I'LL BUY IT
Hey, if you want to write a book on doing exactly that, send a proposal to proposals@ora.com.
RE: GOOD LICENSE
You can thank Andy Oram at O'Reilly for that license. This is likely a harbinger for future O'Reilly books.
RE: PROVIDE USER LIST FOR WIN 9x
Samba 2.1 may provide some relief to your grief, although I do not know the exact mechanics yet. You can use Samba 2.1 beta right now for NT authentication, however. The "Users and Passwords" chapter explains how to do this.
RE: WHOLE NEW BOOK NEEDED
Yeah, I would think so. Samba is getting pretty big, and if you saw the size of SMB/CIFS (and know that there is no complete implementation in existence, according to Andrew Tridgell), you'd be aghast. I was.
Thanks for the comments, everyone!
- Robert Eckstein (O'Reilly and Associates)