Article: Print from openSUSE to Canon LBP6000 on Windows 7 / Windows 8 Server using SMB / Samba

Introduction: for a couple of years I wasn’t able to make my Canon LBP6000 work directly on openSUSE. And I also couldn’t print from openSUSE to the LBP6000 if I attached it to Windows (I tried XP, Vista & Win 7).

I just now tried openSUSE 12.3 and found that it talks to the printer on a Win 7 or 8 box so I better write it down here so I can make it work on the next versions of openSUSE.

I just muddled my way through this intuitively. So maybe there are some unnecessary or odd steps here, but it works for me (Yahoo!!!).

Download and unzip/install RPMs: Download the zip file from this link. Unzip to a folder and burrow down to find two RPMs cndrvcups-capt and cndrvcups-common. Put those in a folder and add the folder to Repositories in Yast and install the RPMs one at a time, NB first cndrvcups-common and second cndrvcups-capt.

Install Printer in CUPS: open the file /etc/cups/cupsd.conf and make changes to two stanzas to include the IP address of the Win 7 computer (e.g. 193.169.33.9)

# Restrict access to the server...
<Location />
  Order allow,deny
  Allow 127.0.0.2
  Allow 193.169.33.9
</Location>

# Restrict access to the admin pages...
<Location /admin>
  Order allow,deny
  Allow 193.169.33.9
</Location>

Set ccpd daemon to start at boot: GoTo Yast → Runlevels and activate (put a dot in) Expert Mode and find ccpd and put a Tick in B (for service to start at runlevel B). Click OK, exit. Restart cups with this command as root:

/etc/init.d/cups restart

.

Set Windows 7 Sharing: I went to Control Panel → Network & Sharing → Advanced, and set it to Business/Home and also these:

  • Turn on Network Discovery
  • Turn on File & Printer Sharing
  • Turn off Public Folder Sharing (probably not necessary)
  • Use 128 bit encryption
  • Turn off password protection
  • Allow Windows to manage etc

Now set the IP address to a fixed IP (e.g. 193.169.33.9) in Control Panel → Network & Sharing → Adapter Settings → R-click the icon → Properties → IPV4 Properties → Use the following address (e.g. 193.169.33.9) PLUS fill in the DNS servers (e.g. Google’s 8.8.8.8 and 8.8.4.4 or the Name Servers provided by your ISP).

I also went to Devices & Printers and R-click Canon and select Printer Properties and Sharing Tab and I Shared the printer. NB CHANGE THE NAME under the sharing tab so it has no spaces. I used CanonLBP6000 (no spaces). (remember the name).

Back to openSUSE and Adjust Samba: Make these changes in the samba config file smb.conf (e.g. kdesu kwrite /etc/samba/smb.conf).
Put these code lines in the [global] stanza:

printcap name = cups
cups options = raw
use client driver = yes

Make sure these two stanzas exist:

[printers]
comment = All Printers
path = /var/tmp
printable = Yes
create mask = 0777

[print$]
comment = Printer Drivers
path = /var/lib/samba/drivers
write list = @ntadmin root
force group = ntadmin
create mask = 0664
directory mask = 0775

Reboot or restart Samba. Voila!

Install Printer in CUPS: open a web browser at this address:

http://localhost:631

Make these steps:
Click the Administration Tab → Add Printer → LogIn iroot creds → select Windows Printer via Samba → Continue → in the address box put smb://193.169.33.9/CanonLBP6000 → Continue → fill in a name e.g. CanonNetOnWin7 → Continue → select canon → Continue → locate and click Canon LBP6000/LBP6018 CAPT (US) (en) and click Add Printer → then click Set Default Options.

Now test the printer: click Prinetrs Tab → CanonNetOnWin7 → Maintenance → Print Test Page.

Good Luck
Be well
swerdna

PS if your wondering why I don’t attach the printer directly to the openSUSE box, the reason is: I tried but it still won’t work as a local printer.

the LBP6000 does work as a local printer on openSUSE… that’s how I’m using it right now, but you need to use the connection port below as that’s what the canon ppd uses, then it works.
//localhost:59687

Excellent johnoshock. I’ll try it on the weekend