What is monitor calibration?
Broadly, what you’re going to be doing is making your monitor’s output such that it will match that of the standard output of all other monitors and other media such as printers. Because all monitors are different due to the slightly different effects of wear and tear upon them, they must be individually calibrated at regular intervals throughout their lifetime. To do this, you’ll be conforming to the open standards developed by the ICC, the International Color Consortium, so that your monitor’s unique color profile may be first characterized, and then the color temperature and gamma levels tweaked accordingly. This is sometimes termed a WYSIWYG approach, or less opaquely, What You See Is What You Get.
There are two main settings you need to be concerned about: color temperature and gamma.
Before we begin
So, before you actually go ahead and start with the calibration process, there are a few things you should do to get the most out of the process. First, make sure that there is no glare on the computer screen, or any complex patterns or bright colors reflecting on its surface. You want as little interference from ambient light as possible, especially in your usual workplace.
Then, make sure that the screen is set to the highest resolution possible, and that the computer is in high color mode. While this may vary by distro somewhat, this will most likely be found under some variation of “Display Preferences." In Ubuntu, for instance, this is found under System => Preferences => Display Preferences.
If you’re using a monitor that is separate from the rest of the computer, there may be a way by which you can adjust these settings via dials and buttons, as opposed to using some sort of frontend software. This certainly makes the process easier, so see if this is an option before you begin.
Also keep in mind that the manufacturer often provides a default color profile for use with the product. While the color profile will of course change over time with age, this may be a good starting point.
It should also be noted that Linux distros were not exactly designed for this sort of attention to color management, so the tools available are not optimum. There is no central user control panel for color settings, so separate programs have to be downloaded and learned, amongst other issues.
Now, the remainder of the article will cover various methods by which one can calibrate the monitor. These methods can either be used in combination, or independently from each other.
Software: the visual approach
This may be a slightly more satisfying method of calibrating your monitor: software. While the pickings for Linux distros are pretty slim, there are a few out there:
LPROF is a program that characterizes a color profile for your computer, which is compatible with ICC version 2 and can thus be used with programs that utilize the color profile in calibration. It has an easy-to-use graphical interface. Check it out here on SourceForge.
Argyll is a command line tool, which can be used with more of the professional hardware calibrators. It’s quite difficult to use, though if you want precise, manual results, this may be the best option for you. It can characterize ICC profiles, as well as calibrate, and works with GNU. There is also a graphical frontend for Argyll known as dispcalGUI which is being actively developed.
Xcalib is a small, somewhat difficult-to-use monitor calibration program for Xfree86 or X.org. This may be used in conjunction with LPROF. Check it out here on SourceForge.
GAMMApage is, as the name implies, specific to adjusting gamma. A more detailed description may be found at Linux Softpedia here.
Hardware calibration devices
However… this is assuming you trust your eyes. There are products available, usually packaged with software, that will test your screen for you, and then calibrate the monitor to greater accuracy than what you can do with your eyes alone. These tend to be what professionals use when they calibrate their monitors. However, none of these products have software portions that are specific to Linux, so you’ll be forced to use an emulator like Wine. Even then, however, most of them lack the required drivers. There are numerous devices out on the market, termed colorimeters and spectrophotometeres, available at a variety of prices. The most promising one for Linux is called Spyder; here is an article discussing the difficulties in using it with Linux, appropriately titled “The Good and the Ugly."
For more information
For more information, there are a number of articles out there discussing this topic.
This article from Linux.com provides an excellent overview of calibration tools available for the X Windows environment.
Here is a post from Linux Tidbits providing an overview of various software available.
Wikipedia also has a respectable article on Linux color management, including links explaining many of the technical terms involved.