This is an old revision of the document!
Warning!
This print service is intended for use on low bandwith networks – like internet connections or GSM connections. You won't need it inside normal networks – except for the case that you want to use printers which are directly connected to the (thin-)clients. X2goprint can be used with x2goserver-one, x2goserver-home and x2goserver (full features).
You'll need a running cups printing server to use X2goprint. You can use an existing cups server on your network or you can install a cups server on the same machine X2goserver is running on. The x2go cups engine is installed this way (in this example on the same machine):
# apt-get install cups-x2go
In any case, you'll need to install x2goprint on every server running X2goserver. You can install it by executing:
# apt-get install x2goprint
The package “x2goprint” will add an user to the system and will configure the sudoers daemon by extending the file /etc/sudoers. After the installation, you are able to add a new printer to the cups system named “x2goprinter”. As device you should select the “Virtual x2go Printer”(vendor: “generic”/model: “Generic CUPS-X2GO Printer”). You may configure further options by editing the file “/etc/cups/cups-x2go.conf”.
If you would like to run X2goserver and the cups service on different machines, you'll need to generate a pair of SSH keys. Please make sure that you are logged in as user “root” on the system running the cups service and add the following folders:
# mkdirhier /root/.x2go/ssh/.x2goprint/
Now you can generate the keys:
# ssh-keygen -N "" -t dsa -f /root/.x2go/ssh/.x2goprint/id_dsa
The public part of the key (/root/.x2go/ssh/.x2goprint/id_dsa.pub) needs to be added to the x2goprint user's “authorized_keys” file on the x2goserver(s). You can do this with your favourite editor. Please make sure, that you've chosen the right user and system:
x2goprint@localhost:~$ cat id_dsa-pub >> ~/.ssh/authorized_keys
Every x2goserver running X2goprint needs to be known by the cups server. Regarding your name resolution type, you'll need to add the host names for example to the local /etc/hosts file. Please test if you are able to reach the x2goservers by entering the following command:
# ssh -i /root/.x2go/ssh/.x2goprint/id_dsa x2goprint@x2goserver1 # ssh -i /root/.x2go/ssh/.x2goprint/id_dsa x2goprint@x2goserver2