Here is my experience on installation of this damm printer
I've spent whole weekend doing this :-)
1) switch ON printer and plug in USB cable
# dmesg
will show you following line
...
usb 2-1: new full speed USB device using address 2
2) check if USB printer support is loaded into the kernel
# lsmod
...
...
usbcore 119012 6 uhci_hcd,ehci_hcd,usb_storage
...
look for a line containing "usbcore"
if USB Printer Device driver (usblp) not there load it
# modprobe usblp
or use more user friendly tool - modconf
# modconf (there select kernel/drivers/usb/class and then usblp)
try lsmod again
# lsmod
...
...
usbcore 119012 6 usblp,uhci_hcd,ehci_hcd,usb_storage
...
After all this operations
# dmesg
it will show you following lines
...
drivers/usb/class/usblp.c: usblp0: USB Bidirectional printer dev 2 if 0 alt 0 proto 2 vid 0x04F9 pid 0x0007
usbcore: registered new driver usblp
drivers/usb/class/usblp.c: v0.13: USB Printer Device Class driver
3) Now you can install CUPS (In my case without ESP GhostScript it was not working
So, install it too)
Cups is the Common Unix Printing System
# apt-get install cupsys
# apt-get install gs-esp
Now you need to add the driver for the printer
For instance in my case I got it from the following page
http://www.linuxprinting.org/show_pr...rother-HL-1250
Download the PPD file and put it into /usr/share/cups/models/
# cd /usr/share/cups/models/
# cp /home/sergey/Downloads/hl1250.ppd ./
Now restart the CUPS server
# /init.d/cupsys restart
4) It's time to print something. Open web browser on that machine and type localhost:631.
It should open admin panel for your printers. Login as root and add a printer
Select USB port #1.
Now try to print a test page, if it works, your are half way there.
5) Now let's try more advanced section.
Normally at home you have several computers in the network and it is quite convenient to have network printer service running at one of them. In my case this is a Linux machine. All the rest PCs are Windows base. So Samba sever should be tuned up to do the job.
You can edit smb.conf manually or you can take advantage of the web based configuration of samba – SWAT. Just open in the local browser following link. localhost:901
To configure samba for printing, you need to make sure the following config options are set in the
Code:
[global] section of /etc/samba/smb.conf:
load printers = yes
printing = cups
printcap name = cups
In the [printers] section, you should have something like the following:
Code:
[printers]
comment = All Printers
path = /var/spool/samba
browseable = no
public = yes
guest ok = yes
writeable = no
printable = yes
printer admin = root, @ntadmins
After you made all modification to smb.conf it is good idea to test configuration
Code:
# testparm
Load smb config files from /etc/samba/smb.conf
Processing section "[homes]"
Processing section "[printers]"
Processing section "[print$]"
Loaded services file OK.
...
...
Make sure that folders /var/spool/samba and /var/lib/samba/printers, otherwise you can end up with system which sees the printer but cannot do anything with it. Also don’t forget to change permission on these directories.
The directory must be owned by the superuser (root) user and group:
# chown root.root /var/spool/samba
Directory permissions should be set for public read-write with the sticky-bit set as shown:
# chmod a+rw TX /var/spool/samba
In my case I forgot to create var/spool/samba folder and all my attemts to connect to the printer where rejected (see below)
Code:
# smbclient //caiman/hl1250 -U root
Password:
Domain=[WIN] OS=[Unix] Server=[Samba 3.0.10-Debian]
tree connect failed: NT_STATUS_BAD_NETWORK_NAME
if everything is ok message will look like this
Code:
# smbclient //caiman/hl1250 -U root
Password:
Domain=[WIN] OS=[Unix] Server=[Samba 3.0.10-Debian]
smb: \>
If you are still experiencing problems try to look into logs
pico /var/log/samba/log.caiman
At this moment you are able to see printer from windows machine and if you click on it will ask to install printers.
If you know what is the model just select it
Now you are able to print test page from Windows
6) That was good but it looks a bit difficult for your relatives they know that there is printer in a house but not the model. So there is an option called Point and Print. In samba it requires an extra section in smb.conf
Code:
[print$]
comment = Printer Drivers
path = /var/lib/samba/printers
write list = sergey, @sergey
browseable = yes
guest ok = no
read only = yes
In essence this is the share where Windows looks for printers drivers. There are many ways how to place drivers there. You can try links below, but in my case these options were not working. Maybe you will be more lucky.
HOWTO Native Windows Printing with CUPS/Samba
http://gentoo-wiki.com/HOWTO_Native_...ith_CUPS/Samba
Point and Print in Samba
http://www.netadmintools.com/part258.html
My solution was following :
First I just connected the printer to the Windows machine and it installed drivers for me. Than I just located printer drivers folder
C:\WINDOWS\system32\spool\drivers\w32x86\3\
and copied them to folder on the Linux machine
/var/lib/samba/printers/3/W32X86.
And after reconnecting the printer to Linux machine printer was just accessible drivers were downloaded automaticaly from samba share. That is it. And it was working on all other PCs.
Code:
# ls -al /var/lib/samba/printers/W32X86/3
total 3320
drwxr-xr-x 2 root root 4096 Apr 9 10:41 .
drwxr-xr-x 3 sergey sergey 4096 Apr 9 10:41 ..
-rwxr--r-- 1 sergey sergey 32588 Apr 8 22:07 brhl1250.bud
-rwxr--r-- 1 sergey sergey 220 Apr 8 22:07 brhl1250.gpd
-rwxr--r-- 1 sergey sergey 23361 Apr 8 22:07 brhl125x.gpd
-rwxr--r-- 1 sergey sergey 8522 Apr 8 22:28 brohl125.inf
-rwxr--r-- 1 sergey sergey 758784 Apr 8 22:07 mdigraph.dll
-rwxr--r-- 1 sergey sergey 35328 Apr 8 22:07 mdiui.dll
-rwxr--r-- 1 sergey sergey 2516 Apr 8 22:28 oemhl99a.inf
-rwxr--r-- 1 sergey sergey 676864 Apr 8 22:07 pcl5eres.dll
-rwxr--r-- 1 sergey sergey 672768 Apr 8 22:07 pcl5ures.dll
-rwxr--r-- 1 sergey sergey 14362 Apr 8 22:07 stdnames.gpd
-rwxr--r-- 1 sergey sergey 698 Apr 8 22:07 ttfsub.gpd
-rwxr--r-- 1 sergey sergey 264704 Apr 8 22:07 unidrv.dll
-rwxr--r-- 1 sergey sergey 21225 Apr 8 22:07 unidrv.hlp
-rwxr--r-- 1 sergey sergey 197120 Apr 8 22:07 unidrvui.dll
-rwxr--r-- 1 sergey sergey 619520 Apr 8 22:07 unires.dll