Open Source Software in the Meadville Public Library
Especially today, with so many public libraries having funding difficulties and budgetary constraints, it is important for libraries to find ways to accomplish as much as they can with the money they have. Using Open Source software is one tool that libraries can use to make their dollar stretch. Although a library may have to expend some money on training staff in how to utilize Open Source technologies, or occasionally hiring a consultant to implement projects, overall it can save a library money on software costs, licensing fees, and hardware. At the Meadville Public Library (as well as the Crawford County Federated Library System, of which MPL is a part) we have used Open Source software in a number of ways to accomplish more with the funding we have, as in the projects described below. Most of the articles discussing Open Source in libraries tend to cover the OS software that is geared to meet libraries' needs in particular, such as MyLibrary, Koha, and the Internet Scout Project; however, in our library we tend to use it most to enhance our technological infrastructure, which is decidedly less glamorous but meets our needs.
Thin Clients: At MPL we had several older computers that were serving as Internet workstations for patrons. As the technological sophistication of the web increased, these computers, running old browsers on slow hardware, became increasingly outmoded for many online tasks. Instead of purchasing new, faster computers, we decided to replace them with thin clients running Linux. Thin Clients are computer terminals that get their operating system and software over a network from a server. Since all the software they are using is acquired over the network, they don't need as much hardware as a standard computer; they have no hard drives, and they don't need floppy or CD-ROM drives. We built the thin clients ourselves using inexpensive hardware (some of it reused from older computers we had sitting around), and got a relatively inexpensive computer for the server. We then used software from the Linux Terminal Server Project (LTSP) that would allow the server's operating system and software to be accessed and run by the thin clients. Since the software is being run on the server rather than the clients, the thin clients don't have to be very powerful—ours have 64 MB of RAM and 500 mHz processors. When it came time to upgrade, instead of replacing each workstation with faster equipment, we only had to replace the server with a machine that was more powerful and that had newer software. For more information on thin clients, see the article I wrote here: http://meadvillelibrary.org/os/ltsp . I also made a presentation on it with details about our server upgrade here: http://meadvillelibrary.org/os/lita-ltsp . The homepage for the Linux Terminal Server Project is http://www.ltsp.org.
Linux Router Project: When the rural libraries in the Crawford County Federated Library System started providing Internet access to the public, we needed an inexpensive way to share the dialup connection between all the computers in each particular library. We found the Linux Router Project, a floppy-based Linux distribution that can be used to turn an old computer into a router and firewall. We purchased several old 486s on Ebay, spending about $45 each. If we had bought a commercial router for each library, it would have cost us considerably more than that. We used those old computers for years, but soon the last one will be replaced with a more powerful computer that can provide filtering software as well, as all but one of our libraries have switched to high speed Internet access, and the last LRP box will probably be replaced by the time this article is published. The LRP, I believe is now officially dead. An alternative you might consider using is Coyote Linux, at http://coyotelinux.com.
Filtering Proxy Servers: We have replaced the Linux Router Project computers with inexpensive servers that serve as Internet routers, cacheing proxy servers, and filtering servers if the library wishes to filter their Internet connection. We have used many $199 Walmart Microtel systems for this purpose. We use the OpenBSD (http://www.openbsd.org) operating system on these servers, as its developers are focused on security, along with the Squid proxy server (http://www.squid-cache.org ). For filtering software, we use squidGuard (http://www.squidguard.org ), a URL-based filter that uses both blacklists of websites as well as expressions, as well as DansGuardian (http://www.dansguardian.org ), a keyword filter that examines the entire content of a website. Unlike commercial filters, these filters allow you complete control over what is being filtered. You have full access to the logs as well as the blacklists and expression lists that the filters use, and you can also make up your own. For more information on Open Source filtering software, I wrote an article for Open Source Schools on the subject, which is here: http://opensourceschools.org/article.php?story=20030401120601397 . I have a backup copy of the article on our server, here: http://meadvillelibrary.org/os/opensourcefiltering.html . We also presented a small hands-on conference on Open Source filtering in May 2002, and the materials from that conference are available here: http://www.meadvillelibrary.org/os/filtering/ . In the files there you will find information on installing and maintaining both squidGuard and DansGuardian.
Web/Email Server with Spam Filtering: We have our own web and email server, running the FreeBSD (http://www.freebsd.org) operating system. It uses the Apache web server, as well as the qmail email server (http://cr.yp.to/qmail.html ). We use sqwebmail (http://www.courier-mta.org/sqwebmail/) to provide a web-based interface for email account access, and the TMDA spam filter (http://www.tmda.net/). We also provide online access to our materials catalog on this server, with a PostgreSQL database that is updated every few months and a custom search interface, all designed by our consultant, Ben Bullock.
Wireless Server: We provide wireless Internet access to our patrons who wish to bring their own laptop into the library. On this server we used OpenBSD, the squid proxy, filtering by squidGuard, and authpf for user authentication.
Invisible Firewall: We used an old Sun Sparc 5 that we acquired on Ebay to create an invisible bridge to protect our network from intrusion. The machine has no IP addresses assigned to it, so it can't be hacked into from outside. OpenBSD was used as the operating system.
Scanning Project: MPL received an LSTA grant that allowed us to purchase scanning equipment, a Linux-based scanning workstation from Penguin Computing, and a Dell rackmount server to host the digital materials, using FreeBSD, Apache, and Greenstone (http://www.greenstone.org ), an Open Source digital collection tool which is also being utilized a number of organizations, including Project Gutenberg.
Tape Backup Server: We are using a Linux server and Amanda tape backup software (http://www.amanda.org) to remotely back up several of our servers and internal computers on a bi-weekly schedule.
CD-Rom Server: We are using Samba (http://www.samba.org), a networking program that allows sharing of files and printers from a Linux box to a Windows network and vice versa, on a Linux server to serve CD-Rom products to a couple of Windows computers dedicated to reference software. Information on how to set one up can be found here: http://www.tldp.org/HOWTO/CDServer-HOWTO .
Obituary Project: We are in the process of creating a web-based index to the newspaper obituaries we have on microfilm. We are using OpenBSD, Apache, PHP, and a PostgreSQL database to accomplish this.
Barcode Server: Our consultant wrote a graphical program for our libraries to use to create batches of barcode labels for periodicals. We decided to host it on a dedicated server (running FreeBSD and XFree86) so that our librarians could access it remotely via VNC (Virtual Network Computing), no matter what operating system they were using on their desktop.. The program can be used to generate several years' worth of barcodes for many magazines at once, and outputs MARC records that can be downloaded into a library's circ system, as well as Postscript files that can be used to print the labels.
Desktops: MPL's Director, John Brice, and I have been using Open Source on the desktop for several years now. We started out using Red Hat Linux, then Mandrake Linux, then I switched to FreeBSD. Recently, however, I have discovered Libranet (http://www.libranet.com/orig_index), an elegant Linux distribution based on Debian. It has a simple-to-use installation utility, beautiful font rendering, and a wonderful administration utility for post-install configuration and software installation called Adminmenu. It is not free, but is still Open Source and is not too expensive. Because it's Open Source, you only have to get one copy and can then install it on as many systems as you want. I have recently started using it on my desktop system, and will install it on John's soon. MPL's administrative assistant will also begin using it soon as well. We hope in the future to change more of the library staff computers to Linux, but at present it is difficult because our circ system will not work on Linux, and the absence of several essential programs to library functions, such as desktop publishing software (although there is one program available called Scribus which looks promising). There are already many Open Source productivity tools available, such as OpenOffice, an office suite with a word processor, spreadsheets, and presentation tools, among others.
The Future: In the future, we hope to integrate even more Open Source software into our libraries. We hope to replace our existing circulation system with an Open Source one such as Koha (http://www.koha.org). That would open the door for even more enhancements, such as replacing our existing circ computers with thin clients; actually, we really wouldn't have to replace them, just remove their existing network cards and replace them with network bootable ones, which would enable us to save a lot of money on hardware. We have found that using Open Source software in our library has allowed us to greatly expand the resources that we offer to the public as well as enhance our own internal functions.
Should You Try Open Source? I would recommend that any library at least looking into the open source option. You can start small: we began by installing Linux on a couple of spare computers and tinkering around with them when we had a few moments. If you want to try an Open Source operating system but are intimidated by the installation process, you can try Knoppix, a CD-based distribution available at (http://www.knopper.net/knoppix/index-en.html ). There is no installation process, but instead you just insert the CD into your computer and reboot. Just start small and keep an open mind.
For more presentations and materials on our Open Source projects, see http://www.meadvillelibrary.org/os.
This work is licensed under a  Creative Commons Attribution 3.0 United States License