Sunday, November 4

Wireless Printing with Samba

Ancient printer (Possibly from Cretaceous Period)

Note: This guide assumes that you have setup a printer to work correctly on Windows XP and are running a wireless LAN.

In the past I have had some issues with print drivers with Debian. It's no secret that Linux print drivers are far inferior to their Windows counterparts (It's not their fault print drivers are typically released for Windows and not Linux). When I began to look into setting up a networked wireless printer, I was prepared for a disaster. Jumping from one OS to another with incompatible drivers is all too familiar. To my delight however, the setup for a networked printing almost went without a hitch!

The first thing I had to do here was demand my printer to share it's printing services to other computers on the network. I navigated to Control Panel>Printers and Faxes>View Installed Printers. Now I right clicked on my printer (An Epson Stylus CX4800. I know you're jealous) and selected "Properties". Clicking the "Sharing" tab revealed the network sharing option I had been looking for. I selected "Share this printer" and named it "epson_cx4800" (You can name your printer whatever you like. I had my Epson Stylus CX4800 so I named it accordingly). After clicking OK, I demand Windows XP to share it's printing services with computers on my network.

Again, I went into Control Panel but this time selected Network and Internet Connections>Setup or Change your home or small office network. I hit next the first few steps until I was prompted for a connection method. Here I selected the option that my computer connected to the internet through a gateway and proceeded. This next step asked me the name I wanted to call my computer and it's description. Since this was, for all intentional purposes, my main desktop computer, I decided to call it "MAIN". The description does not matter, but I called it "OFFICE" anyways. For the name of my network (or Workgroup name), I left it as a default "MSHOME" (The name of your network doesn't matter as long as you remember what it is). The step afterwards was what I was looking for. Windows asked if I wanted to turn on file and printer sharing. I selected to turn it on and finished the rest of the setup.

Now on goz (my vostro 1500), I navigated to System>Administration>Printing to check out the state of the network. When I selected Windows Printer (SMB), I received a nice prompt asking me for a password to connect to the Workgroup I had setup a minute ago in Windows. It suggested that I put in a password, but I left the options blank and hit connect. For hosts, I hit the down arrow and was pleased to find "MAIN" was in there as well as my laptop "GOZ". Unfortunately, when I hit the down arrow for printer, nothing showed up. I figured that since the network seemed to be talking to both computers, I might as well try to input my printer's name. So I casually typed in "epson_cx4800" expecting the whole application crash. When it didn't, I gladly selected my printer from the vast list of supported drivers (If you are looking for an obscure driver that is not supported, try looking here for a supporting driver). I clicked apply and....nothing happened. Nothing bad I suppose, but nothing good either.

Then, it hit me. I probably didn't install Samba in the first place. After a breif facepalm, I grabbed it from the repository:


>sudo apt-get install samba


I also grabbed a few utilities as well to diagnose the problem from a terminal:


>sudo apt-get install smbclient smbfs


After they installed, I was prompted to give the Workgroup name of my network. I type in "MSHOME" and clicked "No" for the next step (DHCP for WINS wasn't necessary for my network). Next, I ran smbclient to list the shared devices on "MAIN", my desktop:


>sudo smbclient -L MAIN


It took a minute, but eventually spat out what I wanted to see:


>Domain=[MAIN] OS=[Windows 5.1] Server=[Windows 2000 LAN Manager]
>
> Sharename Type Comment
> --------- ---- -------
> epson_cx4800 Printer EPSON Stylus CX4800 Series


Cool. So I tried to add a printer again. I went through the exact same steps as before, added my printer driver, clicked apply and it worked! A printer appeared and said it was ready to print. I sent a test print through and everything seemed to work smoothly.

While this install went smoothly, I am sure not everyone will have it as easy as I did. I have read that some HP printers aren't even supported for wireless networked printing! I can try to address some common issues, though. If smbclient has trouble finding your shared devices, make sure they are correctly setup through Windows and aren't being blocked by a personal firewall. If you do have a firewall, check through the preferences to enable shared networking. There are far too many possible issues that can arise from this kind of install so I suggest trying my method first (since it is a quite simple approach) and diagnosing problems/errors that arise from it by posting here or by searching google for help.

1 comment:

Anonymous said...
This comment has been removed by a blog administrator.