INLS 90: Linux and Samba Independent Study - Final Paper (Samba)

 

Introduction

In many ways, Samba was the goal that made learning Linux possible. In order to install and configure Samba, I knew I needed to get Linux working with the network, and I needed to eliminate services like FTP and telnet, that made the machine vulnerable to attack. It wasn’t until the last six days of the summer semester that I finally felt comfortable enough with Linux to begin playing with Samba. As I introduced in the Linux module previously, I was interested in Samba as a way to provide stable fileshare capability for a small office--without exorbitant expense. At the same time I was also wanted to investigate this Open Source movement that I had heard a bit about, but that I had never really experienced. I know I am a child of DOS and Windows--I believe in paying for software--so it was strange to see my fileshare research pointing to software that I could download off the Internet for free. I’d experienced cheap freeware games before and they were pretty crappy, so I couldn’t believe that any piece of freely distributed software could compete with a behemoth like Windows NT. However, I began to learn that the predominate characteristic that differentiates the two groups (Linux and Windows) was not the difference between free and expensive software but the difference between open and closed source. With open source, anyone can configure a program to their own needs, or fix a bug and then give that improvement back to the community. With closed source, it’s like purchasing a car with the hood welded shut: you can’t trick it out to make it run faster, and you can’t fix it when it breaks down.

 

Background

"Samba is a suite of Unix applications that speak SMB (Server Message Block)," developed by Andrew Tridgell in Canberra, Australia. He began writing the precursor to Samba the same year Linus Torvalds was starting work on Linux in 1991. SMB is a way that DOS and Windows machines share data. Samba extends SMB to Unix, allowing Unix to seamlessly integrate with a pre-existing Windows network. Unix/Linux machines have a longstanding reputation for performing the duties of a robust server, and with the recent popularity of Linux, a modest fileserver can be created at a miniscule cost when compared to Windows NT. Samba can also provide print serving and WINS name server resolution--virtually everything you would expect from an expensive piece of server software, except that Samba is free.

 

Summary

Samba is very easy to get working with a general Linux background. Seeing as though I spent the majority of the semester developing that background, when I arrived at Samba I got it working in a matter of minutes, closely following the O’Reilly Book, Using Samba. Since my interests simply dealt with setting up a shared drive on a Linux box that my Windows 98 laptop could access and write to, I found the procedure very simple. The only problem that occurred was that Windows 98 implemented password encryption, that Samba did not by default. However with a utility provided, solving the problem was simple. With that said, setting up the share on the Linux side is only a matter of editing a configuration file, /etc/smb.conf. All that it takes to add a new shared folder is its name in brackets and a path to the folder. In order to hone and optimize Samba, it really takes a good overall grasp of the various options that one can invoke in the smb.conf file. This experience of configuring a program by editing a simple file is very representative of the Linux experience. On one hand digesting a long script with loops and conditions is not exactly user friendly, but the smb.conf file was very simple to work with, especially having the Using Samba book to explain every option under the sun. Samba now comes with a Web Administration interface, but I found it much easier to plunk around the file with vi. In a day I had read most of the Using Samba book, and I had a well-configured fileshare set up on my desktop that my laptop could access, running Windows 98.

 

Conclusion

I think setting up Samba was a model for the types of services one can run off of a Linux box. With the proper background and reference, it is very easy to configure a program by editing a short text file. I also gained a strong confidence in the open source movement’s ability to create robust software applications. Whereas that hypothetical freeware computer game gets disregarded once everyone’s played it, these free open source programs like Samba, Linux, and Apache are needed for the critical day to day operations of a innumerable servers around the world. With the source open and accessible, even if Linus or Andrew falls off the earth, there will be a horde of system administrators there to continue and coordinate their work--not because they’ve been brainwashed to do so, but because they use and need these programs every day.