Mailinglist Archive: opensuse (3138 mails)

< Previous Next >
Re: [SLE] Printer not working, /dev/lp0 missing - Please Help
  • From: Johannes Meixner <jsmeix@xxxxxxx>
  • Date: Mon, 20 Dec 2004 11:07:42 +0100 (CET)
  • Message-id: <Pine.LNX.4.58.0412201103480.19044@xxxxxxxxxxxxx>

Hello,

On Dec 18 21:32 Terry Eck wrote (shortened):
> Running SuSE 9.2.
> Printer is HP Laserjet 1100A.
...
> I notice that when I first boot the system there is a
> /dev/lp0 file.
> "crw-rw--- 1 root lp 6, 0 2004-12-18 21:16 /dev/lp0"
>
> In Yast at "Parallel printer connection" I specify /dev/lp0 as
> the first parallel port. When I "Test Printer Connection"
> it is suppose to print "Hello, world" on the printer. Well,
> /dev/lp0 changes to an ascii file ...

Whether or not /dev/lp* exists depends on the udev system.

For example on my workstation with only one parallel port:

root@host# mknod /dev/lp0 c 6 0

root@host# ls -l /dev/lp0
crw------- 1 root root 6, 0 2004-12-16 11:58 /dev/lp0

root@host# lsmod | egrep 'parport|^lp'
parport_pc 43968 1
lp 14856 0
parport 44616 2 parport_pc,lp

root@host# rmmod lp

root@host# ls -l /dev/lp0
/bin/ls: /dev/lp0: No such file or directory

root@host# echo -en '\r' >/dev/lp0

root@host# ls -l /dev/lp0
-rw------- 1 root root 1 2004-12-16 11:59 /dev/lp0

Now /dev/lp0 has become a normal file.
But when the lp module is loaded again the device node
is forced to be re-created by udev automatically:

root@host# modprobe lp

root@host# lsmod | egrep 'parport|^lp'
lp 14856 0
parport_pc 43968 1
parport 44616 2 lp,parport_pc

root@host# ls -l /dev/lp0
crw-rw---- 1 root lp 6, 0 2004-12-16 12:01 /dev/lp0

Note that the owner, group and permissions are now set by udev
to what is specified according to

root@host# grep ^lp /etc/udev/permissions.d/50-udev.permissions
lp*:root:lp:660


Summary:
It is crucial that the parport related kernel modules
are loaded correctly at boot time and that they are
not removed by some unknown process.


It may happen that the parallel port kernel modules
parport, parport_pc and lp are not loaded automatically
at boot time.
In this case add modprobe calls to /etc/init.d/boot.local


Regards
Johannes Meixner
--
SUSE LINUX Products GmbH, Maxfeldstrasse 5 Mail: jsmeix@xxxxxxx
90409 Nuernberg, Germany WWW: http://www.suse.de/

< Previous Next >
References