File / print servers

Overview

Network booting

UNIX file sharing

Printing under Linux

Windows file and print sharing

Samba

General file sharing

Source code sharing

 

Overview

There are many ways to share resources over a LAN. Your main concern will be what the client side is running since most server operating systems (especially Linux) support almost all types of clients (UNIX, Windows, MAC, Novell, etc.). You will also need to take into account the type of files you are sharing, are they simply data files, work documents, source code, network boot files, or?

Network booting

tftp 

tftp is used by everything from X windows terminals to Cisco routers when booting to get their initial boot files and configuration data.

UNIX file sharing

NFS

NFS is the most universal method of file sharing supported by UNIX in general. Almost every UNIX OS (Linux, *BSD, Sun, etc.) supports NFS. There are also commercial NFS clients and servers for Windows. NFS is ideal for sharing out user home directories and other real time" filesystems.

rsync

rsync is the ideal method for synchronizing large amounts of data that isn't time critical (i.e. for ftp site mirroring). It uses an extremely efficient algorithm to find files that are newer (or gone), and then retrieves them, it also has several nice security features.

Printing under Linux

There are a variety of print daemons for Linux but they generally emulate lpd (the original).

lpd

lpd is the age-old line printer daemons (when all you ever printed was text) which allows for the usage and sharing of printers. 

CUPS

Common UNIX Printing System (CUPS), is GPL licensed and version 1.0 just came out. CUPS is available from: http://www.cups.org/. 

LPRng

LPR next generation, an alternative to the stock LPR.

pdq

Windows file and print sharing

Samba

SMB (server message block) is the current windows file sharing protocol. Samba does an incredible job of providing all the services required to properly share windows files (such as Primary and Backup Domain Controller services). You can also provide windows access to printers through Samba, and using smbclient access Windows printers.

General file sharing

There are also a number of generic file sharing methods that support multiple types of clients and servers.

Coda

An advanced network filesystem, not very fun to implement. http://www.coda.cs.cmu.edu/.

Drall 

An https-based system for sharing files among machines securely. You can get it from: http://www.edlund.org/hacks/drall/index.html.

AFS

A high end, commercial file sharing protocol suitable for large installations with high security and performance requirements.

Source code sharing

CVS

CVS is used to centrally maintain source code in a repository, and to allow people to make modifications, with an emphasis on the ability to roll back changes, get an old "snapshot" and so on. It is very popular for large software projects.

Back

Security Portal

Written by