My normal weapon of choice is Debian, but I keep running across "version too old" type issues, so I decided to use a small (NUC) computer to do my day-to-day admin and use Debian on serious dev box.
Every-time I setup a new box I have issues with printing. For a number of years I've sidestepped dealing with this but using my NAS to hold the USB printer then connecting to everything indirectly. Sadly the NAS supplier dropped USB printer support, with zero notice. Now once again I'm forced to address this issue of printer config.
The simple case:
You have just one computer and all the printers just plug straight in (USB) or offer a direct network connection . This case is easy, use use the GUI on
http://localhost:631.
The more complex case:
You have many computers and many printers. My solution was to "connect" all the printers to a single box (in my case a ZOTAC ZBOX running Debian) .
Before you start make sure your user has "lp" (not [just] lpadmin) in it's group set, e.g.
Otherwise odd things break.
So on the the Debain box I just added each of the printers, via the GUI (Above)
On the print server, you need to make the services available, in /etc/cups/cupsd.conf:
# Only listen for connections from the local machine.
#Listen localhost:631
# Allow connections from anywhere
Listen 0.0.0.0:631
...
# Restrict access to the server...
<Location />
Order allow,deny
Allow @LOCAL
</Location>
# Restrict access to the admin pages...
<Location /admin>
Order allow,deny
Allow @LOCAL
</Location>
Then on the kubuntu box I simply do:
The first name (after -p) is the name (you want to use) of the printer (queue) on this system, the string after the -v can be obtained by typing:
This, apparently, does something I've always thought was the way printing should work. The print server has the right drivers for each printer, no reason every client needs to know this, it just passes the file to the print server unmolested and lets the server sort it out. This means each time you install a new box, you don't need to mess around trying to find print drivers etc.
An even easier way:
What the above does is queue the files on the client machine and forwards to the print server as an when it's available . Alternatively you can simply queue the file directly on the print server. This has a side-effect that if the print server is down , you can't print. If that's OK with you simply, create a file: /etc/cups/client.conf
with contents like:
WARNING; I've not tried this technique, see http://www.cups.org/doc/sharing.html for details.
Every-time I setup a new box I have issues with printing. For a number of years I've sidestepped dealing with this but using my NAS to hold the USB printer then connecting to everything indirectly. Sadly the NAS supplier dropped USB printer support, with zero notice. Now once again I'm forced to address this issue of printer config.
The simple case:
You have just one computer and all the printers just plug straight in (USB) or offer a direct network connection . This case is easy, use use the GUI on
http://localhost:631.
The more complex case:
You have many computers and many printers. My solution was to "connect" all the printers to a single box (in my case a ZOTAC ZBOX running Debian) .
Before you start make sure your user has "lp" (not [just] lpadmin) in it's group set, e.g.
Code:
usermod -a -G lp MYUSER
So on the the Debain box I just added each of the printers, via the GUI (Above)
On the print server, you need to make the services available, in /etc/cups/cupsd.conf:
# Only listen for connections from the local machine.
#Listen localhost:631
# Allow connections from anywhere
Listen 0.0.0.0:631
...
# Restrict access to the server...
<Location />
Order allow,deny
Allow @LOCAL
</Location>
# Restrict access to the admin pages...
<Location /admin>
Order allow,deny
Allow @LOCAL
</Location>
Then on the kubuntu box I simply do:
Code:
sudo lpadmin -p zboxPDF -E -v ipp://zbox.local:631/printers/PDF -m everywhere sudo lpadmin -p brother -E -v ipp://zbox.local:631/printers/brother -m everywhere sudo lpadmin -p sister -E -v ipp://zbox.local:631/printers/sister -m everywhere sudo lpadmin -p epson -E -v ipp://zbox.local:631/printers/epson -m everywhere
Code:
$ ippfind ipp://NUC.local:631/printers/brother ipp://zbox.local:631/printers/brother ipp://NUC.local:631/printers/epson ipp://zbox.local:631/printers/epson ipp://NUC.local:631/printers/sister ipp://zbox.local:631/printers/sister ipp://NUC.local:631/printers/zboxPDF ipp://zbox.local:631/printers/PDF
An even easier way:
What the above does is queue the files on the client machine and forwards to the print server as an when it's available . Alternatively you can simply queue the file directly on the print server. This has a side-effect that if the print server is down , you can't print. If that's OK with you simply, create a file: /etc/cups/client.conf
with contents like:
ServerName server








It was a 9 pin dot matrix printer that could take 12" or 18" greenbar and was bidirectional. 10 or 15 lines per minute. Noisy. $5,000 retail. Profit: $2,500. Sold it to a farmer along with the newly released VISICALC spread sheet program. The next week I sold a similar rig to a crop duster who saw the farmer's computer. I was the 2nd highest paid teacher in the district, second only to the wrestling coach, and my take home was $700/mo. My share of the computer sales was 1/2 the profit. So, in two days of sales I made $2,400, almost 4X what I made teaching for a month. That continued through 1979 and into the spring of 1980, when Apple sent a tech to give me "Apple Tech Training". I resigned my teaching position that spring and began selling & servicing Apples full time. My service area became most of Nebraska and Southern South Dakota, with forays into Eastern Colorado. I got a private pilot license to make travel quicker for the 12 state contract I acquired to sell SAVVY, a natural language DBMS written in Forth. In 1993 I sold over $1M worth of SAVVY components for Apple and IBM PCs.
Comment