Ken Hough's Website
What about printers, scanners and other peripheral hardware?
Setting up and managing printers should be done via CUPS. This is installed by default and should be accessed via a browser using the address 'localhost:631'. Note the colon between 'localhost' and '631'. Not an obvious way to doing things, but is actually quite easy to do and is very effective!
CUPS can also manage print queues. Use it to pause printing, delete jobs from a print queue, or move jobs up/down in a queue.
When printing via 'Gimp' use "Print with Gutenprint..."
Most scanners are supported under Linux. Scanning can be done from 'Gimp' via "File">"Create">"Xsane">"Device dialogue". The system should then look for your scanner, set it up, and then display the Xsane application windows.
USB and parallel port printers and scanners will be recognised. My 22 year old HP Laserjet printer and 18 year old A4 sized Epson ink-jet printer work 100% under Linux. These are both parallel port devices.
My Epson Perfection 2400 PHOTO flatbed scanner is a USN device and also works very well under Linux.
USB memory cards, external USB hard drives, and external USB CD/DVD drives should all work without any need for user intervention.
Digital cameras can also be connected, but access will be limited to reading and writing image files. Unfortunately, control of these cameras via the USB port requires specialised Windows only based software that is produced by the camera manufacturers. I find it convenient to manage images from my Canon and Pentax digital SLR cameras via Linux.
Some more specialised devices might need changes/additions to be made to configuration files. For example, to be able to use my Hauppauge Win TV Nova digital TV card, I did have to make some changes to a couple of configuration files. ALL configuration files under Linux are in plain text, so this was not difficult, and details of the changes that were needed were easily found via an Internet search.
If you have any queries concerning compatibility of Linux with hardware, have a look at: