printing over the network

David Fletcher kubuntu-users at
Sat Oct 20 18:33:08 UTC 2007

On Saturday 20 Oct 2007, Harold Hartley wrote:
> I will try and explain what I'm trying to do.
> I have a dell laptop with windowsXP on it and my desktop runs ubuntu 
> 7.10 now...
> My printer in connected to the ubuntu desktop.
> I would like to be able to print to the printer from my laptop to my 
> desktop which has the printer attached.
> I can't seem to find anything on my searches about how to make this work.
> Can someone out there that either has done it or knows where to find the 
> info I need please let me know.
> Thank you.
> Harold

You need to use CUPS, and make sure port 631 is open if you're firewalled.

The XP machine needs the printer set up with the Internet printing option, 
pointed at the IP address of the Linux machine using the generic postscript 
driver. I kept notes on how I did this with a headless server at work, which 
I've attached. If you need more, I've got other bits and pieces such as a 
ready hacked windoze ppd file to get it to print A2.

Hope this helps.



FACT - Millions of people worldwide continue to pay money to the richest 
person in the world to use his products, even though perfectly good software 
is given away completely free of charge by the open source community! I can't 
understand it either.

Registered Linux user number 393408

I use and recommend the email service at 1 & 1
For domain registration, email and web hosting please visit:
Registered Linux user number 393408

I use and recommend the email service at 1 & 1
For domain registration, email and web hosting please visit:
-------------- next part --------------
Ubuntu "Dapper Drake" server:-

Make sure the BIOS setup is for a headless server i.e. it won't boot
error without a keyboard attached.

Copies of the modified files are in this zip file

Do a basic install of the server
The procedure I followed is in this article:-
except I've not enabled root login.

Configure the network interfaces
sudo vi /etc/network/interfaces

Restart the network
sudo /etc/init.d/networking restart

Edit hosts and add the server IP address
sudo vi /etc/hosts

Edit the sources file
sudo vi /etc/apt/sources.list

Update the server
sudo apt-get update
sudo apt-get upgrade

Install the SSH daemon for remote access
sudo apt-get install ssh openssh-server

Shut down the server, disconnect the keyboard, mouse, monitor.
Power up the server.
Log in via the network using SSH, Putty etc.

If still following the article, ignore all the stuff about quotas and samba.

Install the Common Unix Printing System
sudo apt-get install cupsys cupsys-client cupsys-driver-gimpprint defoma fontconfig foomatic-db foomatic-filters libcupsimage2 libexpat1 libfontconfig1 libfreetype6 libjpeg62 libpaper1 libpng12-0 libslp1 libtiff4 patch perl perl-modules ttf-bitstream-vera ucf

The following was taken from:-

To enable remote administrative access, edit the CUPS configuration files browse.conf, cupsd.conf and ports.conf to make them look like the included files. The originals are also included for comparison.
Restart the CUPS daemon
sudo /etc/init.d/cupsys restart

It should now be possible to use a web browser to remotely log in to and configure the server:-

Note that in order to work with windows it seems to be necessary to add all printers to classes, then print to a class.

The rest is up to you!

If using Netgear PS101 network print servers it may be necessary to flash the firmware to get it to work with Linux servers. Notes are published here:-
Then, in CUPS, address the printer as lpd://PrintServerIPAddress/P1

Windows XP desktops:-

With a text editor, open C:\WINDOWS\system32\drivers\etc\hosts and add a hostname and the IP address of the print server.

Click Start->ControlPanel and select Printers and Faxes.
Click Add a Printer->Next, Network Printer->Next.
Select "Connect to a printer on the Internet or on a home or office network:"
In the URL box, enter http://hostname:631/classes/classname and click the next button.
Select on the left, Manufacturer Generic, and on the right, MS Publisher Imagesetter and click OK.
This driver selection sends out Postscript, i.e. it cares not what the manufacturer or model of the printer is. It just needs to know what the paper size is.

If paper size larger than A3 e.g. A2 is needed, a "hack" is necessary.
Look in C:\WINDOWS\system32\spool\drivers\w32x86\3 Delete MSGENBW.BPD and edit MSGENBW.PPD to add the A2 or whatever other missing paper size is needed. See the included example. The deleted MSGENBW.BPD will then be rebuilt from the new MSGENBW.PPD when the driver is used.

More information about the kubuntu-users mailing list