SAMBA: Integrating UNIX and Windows
Author: John D. Blair
Publisher: Specialized Systems Consultants, Inc.
Price: $29.95 US
Reviewer: Dan Wilder
Samba, a subject of previous articles in LJ, is a software package that lets a UNIX or Linux system provide file and print services for Windows clients, including Windows for WorkGroups, Windows 95, Windows NT, and OS-2 and, for that matter, UNIX using smbclient or Linux using that or the Linux SMB file system. It earns lots of interoperability points for Linux, allowing a Linux system to earn its keep as a file server in a Windows shop, instead of the more costly, and perhaps less robust, Windows NT server.
For some years I have administered such a Samba installation. From that experience, I can say with great enthusiasm that Samba is a fine package—proof that free software can achieve commercial-or-better quality. Once installed, it is simple and easy to use; so much so, I've even seen Samba used to share user home directories between Linux hosts. Unfortunately, the ones who witness my enthusiasm for this software too often say, “Yes, it sounds great, if only I could manage to configure it.”
Samba configuration, especially the initial configuration, is not always a breeze. While sample configuration files, offering good starting points, are provided in the source tree, there remain many parameters to set or tune. These parameters reflect in part the significant complexity underlying Microsoft networking, and in part the difficulties of mapping the Microsoft file system and security model to the UNIX models, with their corresponding wealth of alternate solutions that offer various tradeoffs.
There is a lot of information in Samba's man pages and source tree /docs directory. However, this information isn't highly integrated, notwithstanding some nice HTML pages, and it is by no means complete.
When I first installed Samba, there was less information than now but it was still substantial. It took me a week of browsing through it, off and on, before I was ready to attempt my first Samba configuration. I remember thinking several times as I struggled to master this information and the gaps in it, “I wish there was a good book on Samba.” Now there is.
Written by John D. Blair, who has been made a member of the Samba team, all the snippets of information in the Samba source tree are combined in a single volume. (The Samba Team helped out by providing last minute information and editing.) More, lots of information that never found its way to the source tree is collected here. For example, Chapter 2 gives an introduction to SMB (service message block networking protocol), including some discussion of protocol details. This chapter contributes much toward understanding the context in which Samba operates.
Well-organized and well-indexed, this book guides the reader through a UNIX-eye tour of Windows networking concepts, terms and history, past the unpacking and building of the package, and into the complexities of configuring, testing and troubleshooting an installation. The Table of Contents, nine pages long, contains enough detail to avoid many trips to the extensive index.
You will find discussions of network service browsing, name resolution, performance, authentication and access control, name mangling, multiple subnets, a very thorough chapter on problem diagnosis, and a whole chapter at the end devoted to the SMB file system.
Chapters 5 and 6 talk about the configuration parameters found in the main Samba configuration file, /etc/smb.conf. Perhaps the most important chapters for the working system administrator, each begins with an outline and its own index. This is a nice touch and potentially saves a lot of flipping back and forth to the main index or the Table of Contents. Options are grouped in these chapters by goal, rather than alphabetically as in the man pages, helping the reader draw connections between related options. Much of my week of browsing, when I first installed this software, was devoted to drawing connections between options.
The book comes complete with a CD-ROM containing Samba-1.9.18. This may be helpful for evaluating Samba; however, if you find this software useful, you should check the web site. At the time of writing this review (March), Samba-1.9.18p3 was current. No doubt a few more patches will be released between now and the time you read it.
Mr. Blair apparently felt obligated to include information on using both 1.9.17, which required the U.S. export-controlled DES library, libdes, and 1.9.18, which includes exportable limited-DES hashing code. You may already be familiar with the peculiar U.S. laws regarding export of encryption software. Even encryption software featuring the venerable and well-known DES algorithms, software written outside the US and freely available around the globe, is affected by these laws.
The Samba team has found a solution that may avoid the issue. Samba now includes the DES algorithm, in the form of a dedicated implementation used only to calculate a hash value as its output—this value cannot easily be deciphered to provide the original input. This method is apparently exempt from classification as encryption software. In any case, there are no obvious export restrictions on the present version, and the necessity of obtaining a DES library to link Samba against is avoided.
Having encryption support is nice, as it avoids multiple re-entry of passwords when signing onto NT. Without it, Samba shares that are marked for automatic network mount on NT login will result in your being asked to enter your password repeatedly, a situation that becomes quite frustrating. With encrypted password support, if you use the same Samba password on the server and locally on your NT system, you'll be prompted for your password only once when you sign on to NT.
The book covers the use of libdes with Samba-1.9.17, at some length, in several places. In each, there are words which sound like afterthoughts, to the effect that none of this is necessary with 1.9.18. I'd rather have seen this 1.9.17 information moved out of the way to an Appendix.
This is a minor blemish, however. I have enjoyed reading this book in its galley proofs, and it has helped me in a recent upgrade of several Linux systems from Samba-1.9.16 to the current version. I look forward to obtaining this book in its final printed form.
I believe SAMBA: Integrating UNIX and Windows will be of great assistance to those who like to get started with a good book. Use of the Samba software, combined with the information contained in this book, will enable Linux to continue to establish a foothold in mostly-Windows shops for use as a file server.
Practical Task Scheduling Deployment
July 20, 2016 12:00 pm CDT
One of the best things about the UNIX environment (aside from being stable and efficient) is the vast array of software tools available to help you do your job. Traditionally, a UNIX tool does only one thing, but does that one thing very well. For example, grep is very easy to use and can search vast amounts of data quickly. The find tool can find a particular file or files based on all kinds of criteria. It's pretty easy to string these tools together to build even more powerful tools, such as a tool that finds all of the .log files in the /home directory and searches each one for a particular entry. This erector-set mentality allows UNIX system administrators to seem to always have the right tool for the job.
Cron traditionally has been considered another such a tool for job scheduling, but is it enough? This webinar considers that very question. The first part builds on a previous Geek Guide, Beyond Cron, and briefly describes how to know when it might be time to consider upgrading your job scheduling infrastructure. The second part presents an actual planning and implementation framework.
Join Linux Journal's Mike Diehl and Pat Cameron of Help Systems.
Free to Linux Journal readers.Register Now!
- SUSE LLC's SUSE Manager
- Murat Yener and Onur Dundar's Expert Android Studio (Wrox)
- My +1 Sword of Productivity
- Tech Tip: Really Simple HTTP Server with Python
- Non-Linux FOSS: Caffeine!
- Managing Linux Using Puppet
- Returning Values from Bash Functions
- Rogue Wave Software's Zend Server
- Doing for User Space What We Did for Kernel Space
- Google's SwiftShader Released
With all the industry talk about the benefits of Linux on Power and all the performance advantages offered by its open architecture, you may be considering a move in that direction. If you are thinking about analytics, big data and cloud computing, you would be right to evaluate Power. The idea of using commodity x86 hardware and replacing it every three years is an outdated cost model. It doesn’t consider the total cost of ownership, and it doesn’t consider the advantage of real processing power, high-availability and multithreading like a demon.
This ebook takes a look at some of the practical applications of the Linux on Power platform and ways you might bring all the performance power of this open architecture to bear for your organization. There are no smoke and mirrors here—just hard, cold, empirical evidence provided by independent sources. I also consider some innovative ways Linux on Power will be used in the future.Get the Guide