By following these steps, you will be able to share a printer from
your Ubuntu computer so that Windows XP and Windows 2000
computers can print to it. This document has been tested with
Ubuntu versions 5.10 and 6.06.
1) Install the printer on the Ubuntu computer
2) Open a terminal.
3) Modify /etc/cups/cupsd.conf with your favourite editor, for example
sudo gedit /etc/cups/cupsd.conf
or sudo nano -w /etc/cups/cupsd.conf
4) In this file, edit the first
Assuming that your network use adresses starting with "192.168.0."
you add the following: (you only need to modify the top level (first)
Location tag because other Location tags seem to inherit permissions)
Order Deny,Allow
Deny From All
Allow From 127.0.0.1
#Modify 192.168.0.* to match your configuration.
Allow From 192.168.0.* NOTE: I used 10.0.1.*
Also set which TCP port that the printer system will accept connections
on. In Ubuntu 5.10 (Breezy) add this line under the Network Options
part of the file (somewhere around line 420), or in Ubuntu 6.06 (Dapper)
add the following line to /etc/cups/cups.d/ports.conf:
Port 631
and comment out:
Listen 127.0.0.1:631 NOTE: mine is localhost:631, also comment this out
5) Save the file and exit the editor. Now restart the printing system with
this command:
sudo /etc/init.d/cupsys restart
6) Now add the printer to the Windows computer by using the Windows
"Add Printer" Wizard. Type in the following in the printer URL:
http://192.168.0.100:631/printers/Deskjet-940C
NOTE: mine is http://10.0.1.3:631/printers/Deskjet-3820
Replace "192.168.0.100" with the IP adress of the Ubuntu box. Replace
"Deskjet-940C" with your printer's name.
If you add this entry to C:\WINDOWS\system32\drivers\etc\hosts
NOTE: didn't do this
192.168.0.100 printer-server
replacing "192.168.0.100" with the IP adress of the Ubuntu box, then
you can use a URL like
http://printer-server:631/printers/Deskjet-940C
You should use the appropriate Windows printer driver for your printer. CategoryDocumentation