Dot Matrix Printer Support

I migrated my Samba server, which also ran Cups, from Centos 6 to Rocky Linux 8. On Centos 6 I installed and managed all my printers via the lpadmin command. Examples bellow:

lpadmin -p hpljm4345 -E -v socket://10.0.1.20:9100 -P /usr/share/ppd/cupsfilters/pxlmono.ppd

lpadmin -p hpcljm477 -E -v socket://10.0.1.25:9100 -P /usr/share/ppd/cupsfilters/pxlcolor.ppd

When I tried the following:
lpadmin -p epsonlq2090 -E -v lpd://10.0.1.26/lp1 -P /usr/share/ppd/cupsfilters/textonly.ppd

Only to find out that the textonly.ppd is nowhere to be found. I copied the textonly.ppd from Centos 6 and tried to use it but things got a little weird. When I tried to install this printer via gnome it seems that 3rd party parallel port print servers are not supported anymore. Has anyone come across this problem?

I have solved the problem temporally by using a Windows machine as a print server but I would prefer do it via my Samba server. Windows does not offer the functionality of Cups.

The first two examples are for laserjet, and the third one is for epson. Are you saying the first two still work in Rocky 8.x?

I managed to install all three examples and was able to print from them. I had to remove the Epson printer from a multi-port print server to a single-port one. The only problem now is to have them show up as Samba shares. Not having much luck there.

The sequence I go through to install printers via the command line is as follows:

lpadmin -p hpljm3027mfp -E -v socket://10.0.1.29:9100 -P /usr/share/ppd/cupsfilters/pxlmono.ppd
lpadmin -p hpljm3027mfp -o printer-is-shared=true
lpadmin -p hpljm3027mfp -o printer-error-policy=retry-job

I have since learned that the -P option to install the ppd files has deprecated as well as the use of the ppd files themselves.

I still can’t get printer samba shares to show up. Here are portions the relevant configuation files.

smb.conf

[printers]
        comment = All Printers
        path = /var/spool/samba
        browseable = yes
        guest ok = yes
        printable = yes
        create mask = 0700

cupsd.conf

MaxLogSize 1m
LogLevel warn
# Allow remote access
Port 631
Listen /var/run/cups/cups.sock
# Listen 10.0.1.10
Browsing On
BrowseLocalProtocols dnssd
DefaultAuthType Basic
WebInterface Yes
IdleExitTimeout 0
<Location />
  # Allow remote administration...
  Order allow,deny
  Allow from @LOCAL
  # Allow localhost
  # Allow from 10.0.*
</Location>
....

I have commented out lines I have tried without any sucess.

We print from 16bit MS-DOS Applications and map our printer shares to lpt ports. Listing samba shares should look like this.

Old Server:

Shared resources at \\tollana

Share name      Type   Used as  Comment
---------------------------------------------------------------
accounts        Disk   K:       Accounts
canonicmf26001  Print           canonicmf26001
canonicmf42001  Print           canonicmf42001
john            Disk   H:       Home Directories
database        Disk   Q:       Database Tables
dispatch        Disk   U:       Dispatch
dosapps         Disk   O:       Dos Applications
epsonfx2190     Print           epsonfx2190
epsonlq2090     Print  LPT1     epsonlq2090
epsonlx300      Print           epsonlx300
hpcljm477       Print           hpcljm477
hplj1200        Print           hplj1200
hpljm248        Print           hpljm248
hpljm2727esc    Print           hpljm2727esc
hpljm428        Print           HP LaserJet M428
hpljm4345       Print  LPT3     hpljm4345
hpljp2055       Print           hpljp2055
hpljp3005       Print           hpljp3005
multimedia      Disk   M:       Multimedia
netlogon        Disk            Network Logon Service
pservxmedia1    Print  LPT2     epsonlx350
public          Disk   P:       Shared Public Access
quickbooksdata  Disk            QuickBooks Company Files
software        Disk   S:       Software
workarea        Disk   I:       Office Access

But on the new server this is all I get:

Shared resources at \\tollana

Share name      Type  Used as  Comment
---------------------------------------------------------------
accounts        Disk  K:       Accounts
john            Disk  H:       Home Directories
database        Disk  Q:       Database Tables
dispatch        Disk  U:       Dispatch
dosapps         Disk  O:       Dos Applications
multimedia      Disk  M:       Multimedia
netlogon        Disk           Network Logon Service
public          Disk  P:       Shared Public Access
quickbooksdata  Disk           QuickBooks Company Files
software        Disk  S:       Software
workarea        Disk  I:       Office Access

What am I missing here?

This is a bit scary, my printer shares, out of the blue are showing up. I didn’t do anything they just showed up. They were not there this morning.

This is the kind of stuff that can drive you crazy. How do I figure out what happened here. I’m going to restart the server.

I’m mostly a command line person. After installing and configuring my samba server I kept listing my shares via the Windows command line. As I mentioned before, the printer shares failed to show up then yesterday out of the blue the appeared. It was a bit scary but things just don’t show up out of the blue on computers, so I began to retrace my steps.

I realize that there was one thing I did differently yesterday; I use the windows explorer to access the shares list. As usual the disk shares were there including the “Printers” share which is listed as a “System Folder.” Now, when listing shares via the windows command line this share does not appear. I went ahead and clicked this share just out of curiosity. I didn’t expect to find anything there and I was right, but I realize that after moving back up from that share was when the printer shares appeared.

This doesn’t make a lot of sense to me. Maybe someone with more knowledge of Samba can enlighten me.

One more thing, when I first tried to use one of the printer shares I got an “access denied” error message. I did some digging around and found out that I had to grant full access, including the sticky bit, to the “/var/spool/samba” directory. By the way these permissions are the same as the “/tmp” directory. This is the default in Centos 6.

I hope this can help someone else.

This topic was automatically closed 60 days after the last reply. New replies are no longer allowed.