Playing host over Wi-Fi

Q My Hardy Heron desktop computer has two printers connected: an HP LaserJet that I use for correspondence and various business reports and an Epson photo printer that I use for my holiday snaps. Both work well, but I would like to be able to use them to print from my laptop that dual boots OpenSUSE and Windows XP, and my wife's laptop that runs XP only. Can I share these printers to Linux and Windows over my wireless network?

A Linux uses CUPS (Common Unix Printing System) for all its printing needs. By default most distros set it to work only with the local computer but it's a simple step to make it available over the network. Windows usually uses its SMB (Server Message Block) system to share files and printers, but it can also connect to printers using IPP, the Internet Printing Protocol, which CUPS uses. To make your desktop's printers available to the local network, either edit /etc/cups/cupsd.conf and change the line starting BrowseAllow to BrowseAllow @LOCAL or use the browser-based configuration.

Load http://localhost:631 into your browser, click on the Manager Server button and tick the box to share your published printers. Then go to the Printers section and check that each of your printers says published in Printer State. This way you can decide which printers are to be available. Turning to your laptop, running Linux, there are two ways to add the remote printers. The quickest is to edit /etc/cups/client.conf (create the file is it does not exist) and add

ServerName your.desktop.address

Where your.desktop.address can be an IP address or hostname. Now all your published printers are immediately available to all programs using CUPS forprinting. The only real disadvantage of this method is that all your printers must be connected to the same computer. If you want to use printers attached to different computers, you need to add them individually, either by using the CUPS web interface on the laptop or your distro's configuration tools. The standard way of printing to a Linux printer from Windows has been to use Samba, and this is essential if you still use Windows 9x. More recent version of Windows can work with IPP. Fire up the Windows Add Printer Wizard from wherever your version of Windows hides it in the control panel and tell it you want to use a network printer. When it asks you if you want to browse for a printer, take the option to enter a URL, enter it in the form

http://hostname:631/printers/printername

where hostname is the name of your desktop computer and printername is the name given it in CUPS. Then you will be asked for a driver, if there is none for your printer model, select a PostScript driver, CUPS will take care of the translation. Finally, right-click on the new printer's icon, go to Properties and print a test page to make sure all is well.

Back to the list