CUPS mantém silenciosamente o não compartilhamento de minhas impressoras - por quê?

2

Estou em um mundo de dor no momento em relação à impressão, mas descobri um problema ultra-específico que parece ser a raiz de todos os meus outros problemas.

O CUPS está silenciosamente não compartilhando minhas impressoras. Eu paro o CUPS, altero manualmente /etc/cups/printers.conf para dizer "Shared Yes" para cada impressora, inicio o CUPS e dentro de ~ 2 minutos O arquivo printers.conf é reescrito.

Eu não posso explicar esse comportamento.

Eu tentei usar outros métodos (isto é: em vez de editar diretamente o printers.conf) para compartilhar as impressoras, como:

cupsctl --share-printers
lpadmin -p SPDIALTO35501 -o printer-is-shared=true

Eles parecem não ter efeito algum.

Alguém pode me ajudar? Eu incluí o máximo possível de detalhes úteis sobre o meu ambiente e configuração.

lpoptions -p SPDIALTO35501 saída:

auth-info-required=none copies=1 device-uri=lpd://192.168.7.5 
finishings=3 job-hold-until=no-hold job-priority=50 
job-sheets=none,none marker-change-time=1429565893 
marker-colors=#000000,none,none,none,none marker-levels=-1,-1,-1,-1,-1
marker-names='Black\ Toner,,,,Waste\ Toner' 
marker-types=toner,unknown,unknown,unknown,wasteToner number-up=1 
printer-info=SPDIALTO35501 printer-is-accepting-jobs=true 
printer-is-shared=false printer-location 
printer-make-and-model='Local Raw Printer' 
printer-state=3 printer-state-change-time=1429565893 
printer-state-reasons=none printer-type=2228230 
printer-uri-supported=ipp://localhost:631/printers/SPDIALTO35501

SO: versão CentOS Linux 6.0 (final)

VERSÃO DOS COPOS: cups.x86_64 1: 1.4.2-35.el6

O SElinux está desativado.

Meu arquivo cupsd.conf parece correto para mim, mas confesso que não sou especialista. Aqui está:

MaxLogSize 0
LogLevel debug
SystemGroup sys root
# Allow remote access
Port 631
Listen /var/run/cups/cups.sock
# Enable printer sharing and shared printers.
Browsing On
BrowseOrder allow,deny
BrowseAllow all
BrowseRemoteProtocols CUPS
BrowseAddress @LOCAL
BrowseLocalProtocols CUPS dnssd
DefaultAuthType Basic
<Location />
  # Allow shared printing...
  Order allow,deny
  Allow all
</Location>
<Location /admin>
  Order allow,deny
  Allow ALL
</Location>
<Location /admin/conf>
  AuthType Default
  Require user @SYSTEM
  Order allow,deny
  Allow ALL
</Location>
<Policy default>
  <Limit Send-Document Send-URI Hold-Job Release-Job Restart-Job Purge-Jobs Set-Job-Attributes Create-Job-Subscription Renew-Subscription Cancel-Subscription Get-Notifications Reprocess-Job Cancel-Current-Job Suspend-Current-Job Resume-Job CUPS-Move-Job CUPS-Get-Document>
    Require user @OWNER @SYSTEM
    Order deny,allow
  </Limit>
  <Limit CUPS-Add-Modify-Printer CUPS-Delete-Printer CUPS-Add-Modify-Class CUPS-Delete-Class CUPS-Set-Default CUPS-Get-Devices>
    AuthType Default
    Require user @SYSTEM
    Order deny,allow
  </Limit>
  <Limit Pause-Printer Resume-Printer Enable-Printer Disable-Printer Pause-Printer-After-Current-Job Hold-New-Jobs Release-Held-New-Jobs Deactivate-Printer Activate-Printer Restart-Printer Shutdown-Printer Startup-Printer Promote-Job Schedule-Job-After CUPS-Accept-Jobs CUPS-Reject-Jobs>
    AuthType Default
    Require user @SYSTEM
    Order deny,allow
  </Limit>
  <Limit Cancel-Job CUPS-Authenticate-Job>
    Require user @OWNER @SYSTEM
    Order deny,allow
  </Limit>
  <Limit All>
    Order deny,allow
  </Limit>
</Policy>
<Policy authenticated>
  <Limit Create-Job Print-Job Print-URI>
  AuthType Default
  Order deny,allow
</Limit>
  <Limit Send-Document Send-URI Hold-Job Release-Job Restart-Job Purge-Jobs Set-Job-Attributes Create-Job-Subscription Renew-Subscription Cancel-Subscription Get-Notifications Reprocess-Job Cancel-Current-Job Suspend-Current-Job Resume-Job CUPS-Move-Job CUPS-Get-Document>
AuthType Default
Require user @OWNER @SYSTEM
Order deny,allow
  </Limit>
  <Limit CUPS-Add-Modify-Printer CUPS-Delete-Printer CUPS-Add-Modify-Class CUPS-Delete-Class CUPS-Set-Default>
  AuthType Default
  Require user @SYSTEM
  Order deny,allow
    </Limit>
  <Limit Pause-Printer Resume-Printer Enable-Printer Disable-Printer Pause-Printer-After-Current-Job Hold-New-Jobs Release-Held-New-Jobs Deactivate-Printer Activate-Printer Restart-Printer Shutdown-Printer Startup-Printer Promote-Job Schedule-Job-After CUPS-Accept-Jobs CUPS-Reject-Jobs>
    AuthType Default
    Require user @SYSTEM
    Order deny,allow
      </Limit>
  <Limit Cancel-Job CUPS-Authenticate-Job>
      AuthType Default
      Require user @OWNER @SYSTEM
      Order deny,allow
        </Limit>
  <Limit All>
        Order deny,allow
          </Limit>
</Policy>

Um exemplo de entrada do meu arquivo printers.conf:

<DefaultPrinter SPDIALTO35501>
Info SPDIALTO35501
DeviceURI lpd://192.168.7.5
State Idle
StateTime 1429565893
Type 6
Accepting Yes
Shared No
JobSheets none none
QuotaPeriod 0
PageLimit 0
KLimit 0
OpPolicy default
ErrorPolicy retry-job
Attribute marker-colors \#000000,none,none,none,none
Attribute marker-levels -1,-1,-1,-1,-1
Attribute marker-names Black Toner,,,,Waste Toner
Attribute marker-types toner,unknown,unknown,unknown,wasteToner
Attribute marker-change-time 1429565893
</Printer>

EDITAR:

Foi-me perguntado se verifiquei os arquivos de log. Eu fiz, mas realmente não vejo nada significativo para mim. Aqui está uma versão ligeiramente recortada de / var / log / cups / error_log:

I [21/Apr/2015:11:27:48 -0600] Listening to 0.0.0.0:631 (IPv4)
I [21/Apr/2015:11:27:48 -0600] Listening to :::631 (IPv6)
I [21/Apr/2015:11:27:48 -0600] Listening to /var/run/cups/cups.sock (Domain)
I [21/Apr/2015:11:27:48 -0600] Remote access is enabled.
D [21/Apr/2015:11:27:48 -0600] Added auto ServerAlias vdb2
D [21/Apr/2015:11:27:48 -0600] Added auto ServerAlias localhost6.localdomain6
D [21/Apr/2015:11:27:48 -0600] Added auto ServerAlias localhost6
I [21/Apr/2015:11:27:48 -0600] Loaded configuration file "/etc/cups/cupsd.conf"
I [21/Apr/2015:11:27:48 -0600] Using default TempDir of /var/spool/cups/tmp...
I [21/Apr/2015:11:27:48 -0600] Configured for up to 100 clients.
I [21/Apr/2015:11:27:48 -0600] Allowing up to 100 client connections per host.
I [21/Apr/2015:11:27:48 -0600] Using policy "default" as the default!
I [21/Apr/2015:11:27:48 -0600] Full reload is required.
I [21/Apr/2015:11:27:48 -0600] Loaded MIME database from "/usr/share/cups/mime" and "/etc/cups": 35 types, 41 filters...

[outras impressoras cortadas; todos eles se comportam exatamente da mesma forma]

D [21/Apr/2015:11:27:48 -0600] Loading printer SPDIALTO35501...
D [21/Apr/2015:11:27:48 -0600] cupsdMarkDirty(P-----)
D [21/Apr/2015:11:27:48 -0600] load_ppd: Loading /etc/cups/ppd/SPDIALTO35501.ppd...
D [21/Apr/2015:11:27:48 -0600] cupsdRegisterPrinter(p=0x7f2af8603410(SPDIALTO35501))
D [21/Apr/2015:11:27:48 -0600] cupsdMarkDirty(P-----)
D [21/Apr/2015:11:27:48 -0600] load_ppd: Loading /etc/cups/ppd/SPDIALTO35501.ppd...
D [21/Apr/2015:11:27:48 -0600] cupsdRegisterPrinter(p=0x7f2af8603410(SPDIALTO35501))
I [21/Apr/2015:11:27:48 -0600] Loading job cache file "/var/cache/cups/job.cache"...
D [21/Apr/2015:11:27:48 -0600] [Job 38077] Loading from cache...

[muitos trabalhos, como 500ish, são carregados do cache]

I [21/Apr/2015:11:27:48 -0600] Full reload complete.
I [21/Apr/2015:11:27:48 -0600] Cleaning out old temporary files in "/var/spool/cups/tmp"...
I [21/Apr/2015:11:27:48 -0600] Listening to 0.0.0.0:631 on fd 7...
I [21/Apr/2015:11:27:48 -0600] Listening to :::631 on fd 8...
I [21/Apr/2015:11:27:48 -0600] Listening to /var/run/cups/cups.sock on fd 9...
I [21/Apr/2015:11:27:48 -0600] Resuming new connection processing...
D [21/Apr/2015:11:27:48 -0600] Discarding unused server-started event...
D [21/Apr/2015:11:27:49 -0600] Report: clients=0
D [21/Apr/2015:11:27:49 -0600] Report: jobs=499
D [21/Apr/2015:11:27:49 -0600] Report: jobs-active=0
D [21/Apr/2015:11:27:49 -0600] Report: printers=18
D [21/Apr/2015:11:27:49 -0600] Report: printers-implicit=0
D [21/Apr/2015:11:27:49 -0600] Report: stringpool-string-count=2343
D [21/Apr/2015:11:27:49 -0600] Report: stringpool-alloc-bytes=7832
D [21/Apr/2015:11:27:49 -0600] Report: stringpool-total-bytes=38128
I [21/Apr/2015:11:28:18 -0600] Saving printers.conf...
D [21/Apr/2015:11:28:18 -0600] cupsdSetBusyState: Not busy

Portanto, o CUPS parece estar reconstruindo o arquivo printers.conf, mas não tenho idéia do porquê e ainda não tenho idéia de por que o status Compartilhado de cada impressora está sendo redefinido. Quando adicionei a impressora em primeiro lugar (colando uma nova entrada em printers.conf), o CUPS não a reconstruiu, então não parece que ela está tirando a lista de impressoras de algum outro lugar. Realmente, realmente, realmente não quer compartilhar.

EDIT # 2: Eu configurei o CUPS para permitir que eu me conecte à sua interface web e tentei modificar a impressora dessa maneira - sem sorte. Eu coloquei uma marca de seleção na coluna de compartilhamento para a impressora, clicou em modificar, ele disse que modificou com sucesso, mas a impressora ainda não é compartilhada. Curiosamente, as outras alterações que fiz (definir um nome de local, escolher um tipo de driver) aparecem no arquivo printers.conf atualizado. Por alguma razão, isso não permitirá o compartilhamento - de todo.

    
por Michel 21.04.2015 / 18:41

0 respostas

Tags