|
Sams Teach Yourself Samba in 24 Hours |
||||||||||||||
|
Hour 1: Introduction to Samba |
||||||||||||||
|
You might be familiar with some of the solutions used in the past to let Windows clients access remote files or printers. At one site where I worked, the only remote access to files was through FTP. Remote printing was done by saving your file to a floppy and going to the remote machine (which was affectionately known as "Sneakernet"). Although this sort of simplistic setup has its advantages (that is, it's simple), today's users need remote access that allows for work of a more collaborative nature.
During the late 1980s, several companies began to develop a Network File System client for PCs that became known as PC-NFS. Many sites embraced it as a way to integrate PCs with existing UNIX-based infrastructures.
Existing NFS servers required no software modifications to serve PC-NFS clients. Authentication of clients was performed by a daemon, usually called pcnfsd or rpc.pcnfsd, running on one server. The clients would send an authentication request to the pcnfsd server. If successful, the server would then send back the user's UNIX uid that could be used in all subsequent NFS requests.
Figure 1.1 illustrates how PCs can be connected to existing NFS servers. Only a single UNIX machine is necessary to handle the authentication of the PC clients. The PCs become somewhat of a second class citizen in this type of setup.
Figure
1.1
Existing NFS servers and single pcnfsd server topology.
Two issues basically arose with PC-NFS software. The first was the limitations in the NFS protocol itself to handle things such as file locking. File locking was implemented differently on the Windows file systems and UNIX file systems (NFS' original target). NFS used a separate process to implement file locking that sometimes led to problems.
For example, if the lock daemon died or if the synchronization between the NFS daemon and the lock daemon were lost, the PC clients would be unable to do necessary file locking. Samba implements the SMB specifications for file locking and even opportunistic locking, commonly called oplocks. Silicon Graphics recently implemented oplock support in the Irix kernel so that data integrity is preserved even if Samba and another UNIX process access the file concurrently. The second problem was the lack of native support within PC operating systems. Microsoft has chosen the NetBIOS and SMB protocols to build its network model. As a result, no additional software is needed on the client to connect to a Samba server other than the operating system itself. To connect to an NFS server, extra client software was needed. In previous times when hard disks were smaller, this extra bulk was an issue.
The native SMB support has several advantages, one being that users are assured that the necessary client to connect to a Samba server will work correctly with new versions of the operating system. Also, on upgrading the operating system, users receive the latest network client software. In the case of NFS software, it is necessary to upgrade the PC-NFS client separately, which was sometimes problematic.
Perhaps one of the biggest advantages is financial. Licensing fees for NFS clients can add up quickly, especially for sites with large networks. And let's be honest, is there anyone who really likes tracking client licensing?
Using Samba eliminates these problems.
Today, many networks have already integrated PC servers into their infrastructures (if not replacing other operating systems altogether). The traditional solution this time is simply to add more Windows NT Servers. This is not always a cost-effective path for all sites. One solution--using Samba and one of the free PC UNIX operating systems such as Linux--enables administrators to leverage the advantage of low-cost, commodity hardware while still providing the stability and services necessary for their PC clients.
|
Sams Teach Yourself Samba in 24 Hours |
||||||||||||||
|
Hour 1: Introduction to Samba |
||||||||||||||
|
© Copyright Macmillan USA. All rights reserved.