Printserver virtuale via SAMBA o altro

Postate qui per tutte le discussioni legate a Linux in generale.

Moderatore: Staff

Regole del forum
1) Citare sempre la versione di Slackware usata, la versione del Kernel e magari anche la versione della libreria coinvolta. Questi dati aiutano le persone che possono rispondere.
2) Per evitare confusione prego inserire in questo forum solo topic che riguardano appunto Gnu/Linux in genere, se l'argomento è specifico alla Slackware usate uno dei forum Slackware o Slackware64.
3) Leggere attentamente le risposte ricevute
4) Scrivere i messaggi con il colore di default, evitare altri colori.
5) Scrivere in Italiano o in Inglese, se possibile grammaticalmente corretto, evitate stili di scrittura poco chiari, quindi nessuna abbreviazione tipo telegramma o scrittura stile SMS o CHAT.
6) Appena registrati è consigliato presentarsi nel forum dedicato.

La non osservanza delle regole porta a provvedimenti di vari tipo da parte dello staff, in particolare la non osservanza della regola 5 porta alla cancellazione del post e alla segnalazione dell'utente. In caso di recidività l'utente rischia il ban temporaneo.
Avatar utente
joe
Iper Master
Iper Master
Messaggi: 3944
Iscritto il: ven 27 apr 2007, 11:21
Slackware: 15.0
Kernel: 5.15.38
Desktop: dwm

Printserver virtuale via SAMBA o altro

Messaggio da joe »

Ho una vecchia stampante Epson DX4400 per la quale non sono riuscito ad installare driver su Slackware. Funzionicchia con un driver Gutenprint ma in modo non accettabile, troppo lenta e di tanto in tanto fa le bizze.

Ero intenzionato a mettere windows su un vecchio PC su cui ho già Slackware. Poi era un casino fare tutto col disco che ho già perché il PC ha vecchio BIOS e la tabella partizioni GPT... e a windows la situazione ibrida non va bene. Insomma alla fine su consiglio di Ponce linuxquestion, siccome ho già un windows 7 in macchina virtuale via virt-manager/libvirt, sono riuscito a far vedere al sistema windows virtuale (guest) direttamente la stampante, e riesce a gestirla tranquillamente col suo vecchio driver.

Poi ovviamente l'appetito vien mangiando e mi sono detto: windows guest e linux host sono di fatto in rete tra loro. E allora perché non usare il windows virtuale come printserver per lanciare le stampe da linux, ma lasciando gestire la stampante da windows?
Cercando in rete sembra possibile. La chiave se ho ben capito si chiama "render print jobs", un'opzione della configurazione stampante di windows:
Computer Configuration > Administrative Templates > Printers > “Always render print jobs on server”
Praticamente lascia che la gestione della stampa sia lasciata al server, cioè a windows. Ed è quello che voglio perché solo lui "sa parlare" propriamente con la stampante.

Bene, fine antefatto.
Quindi su windows ho semplicemente condiviso la stampante. In più ho selezionato l'opzione sopra.
Veniamo alla parte linux. Cups non trova stampanti esposte... Però se provo smbclient qualcosa salta fuori:

Codice: Seleziona tutto

$ smbclient -L 192.168.122.171
Password for [MYGROUP\pippo]:

        Sharename       Type      Comment
        ---------       ----      -------
        ADMIN$          Disk      Amministrazione remota
        C$              Disk      Condivisione predefinita
        Epson ESC/P Standard 3 Printer   Epson ESC/P Standard 3
        EPSON_DX4400    Printer   EPSON Stylus DX4400 Series
        IPC$            IPC       IPC remoto
        print$          Disk      Driver della stampante
        share           Disk
        Users           Disk
SMB1 disabled -- no workgroup available
Ed ecco che appare la stampante chiamata EPSON_DX4400, ne vede anche un'altra Epson ma è la stessa gestita con driver più standard, l'ha gestita così prima di installare quello Epson proprietario apposito.

Ma allora se appare dovrebbe essere possibile aggiungerla a CUPS. Che però di suo non la trova eseguendo la ricerca stampanti da interfaccia web.
Per testare ho creato manualmente in CUPS la stampante nominandola EPSON_DX4400 e con indirizzo (URI o come si chiama):

Codice: Seleziona tutto

smb:/192.168.122.171/EPSON_DX4400
Poi ho lanciato da linux la stampa, tenendo sott'occhio la coda di stampa su windows (il tutto con le due finestre affiancate in pratica).

Codice: Seleziona tutto

lp -d EPSON_DX4400 prova.pdf
Però non c'è stato verso, non si è aggiunto nulla alla coda di stampa.
Mi viene in mente che al momento la stampante non è fisicamente collegata al PC, ma non dovrebbe essere quello il problema, il processo di stampa dovrebbe pervenire a windows e apparire nella coda della stampante.

Mi date qualche suggerimento su come aggiungere la stampante via samba su CUPS?
O come fare arrivare i documenti da stampare nello spool di stampa di windows?

Avatar utente
joe
Iper Master
Iper Master
Messaggi: 3944
Iscritto il: ven 27 apr 2007, 11:21
Slackware: 15.0
Kernel: 5.15.38
Desktop: dwm

Re: Printserver virtuale via SAMBA o altro

Messaggio da joe »

Riguardando la lista dei "jobs" in cups ho notato degli "errori":

"Held for authentication"

In realtà non è un errore ma presuppone che manchi qualcosa riguardo l'autenticazione.
In rete trovo diverse situazioni ma la maggior parte sembra riguardare samba server su linux per accedere da altri client linux e non. Nella mia situazione invece linux è il client direi... o no?
Il server che espone la stampante sulla rete virtuale è windows... boh. Che vada rimossa la necessità di autenticazione per usare la stampante su windows 7?

rik70
Iper Master
Iper Master
Messaggi: 2547
Iscritto il: gio 10 mar 2011, 9:21
Slackware: 15.0
Kernel: 5.15.x-generic
Desktop: Sway
Distribuzione: Arch Linux

Re: Printserver virtuale via SAMBA o altro

Messaggio da rik70 »

joe ha scritto:
ven 7 mar 2025, 21:06
Che vada rimossa la necessità di autenticazione per usare la stampante su windows 7?
Non ricordo di preciso Win7, ma in "Pannello di Controllo" >> "Centro Connessioni di rete e condivisioni" >> "Impostazioni di condivisione avanzate", c'è una voce "Tutte le reti", o similare, da cui puoi attivare/disattivare la condivisione protetta da password.

Avatar utente
joe
Iper Master
Iper Master
Messaggi: 3944
Iscritto il: ven 27 apr 2007, 11:21
Slackware: 15.0
Kernel: 5.15.38
Desktop: dwm

Re: Printserver virtuale via SAMBA o altro

Messaggio da joe »

Ho fatto un paio di test provando una stampa da una seconda VM con windows 7 anche quella. La LAN virtuale è 192.168.122.0/24, col ".1" che rappresenta il bridge del linux host, mentre i 2 guests ricevono IP via dhcp credo gestito tutto da libvirt immagino.

Ho fatto caso che con il firewall dell'host iptables acceso, uno dei due guests non risponde ad un ping eseguito dall'altro, non pinga neanche il bridge host, e va in richiesta scaduta. Spegnendo iptables invece i due guests comunicano. Almeno via ping.
Ho installato poi su uno dei due, quello che fa la parte del print server una stampante virtuale "clawPDF".
In modo da testare velocemente la creazione di un PDF lanciando la stampa dal guest windows che fa da client.

Per ricapitolare:
- VM1 win7 clawpdf messo in share sulla rete LAN virtuale (server)
- VM2 win7 con clawPDF non installato ma aggiunto in seguito a rilevamento come stampante di rete (client)

Da VM2 (client) riesco ad inviare la stampa di un PDF sulla stampante di rete (condivisa dal server), vedo anche in tempo reale la coda di stampa di clawPDF su VM1 (server) che elabora il PDF in arrivo, però pur avendo impostato sempre su VM1 come "spool" il desktop, non appare nulla... in teoria dovrebbe creare un nuovo pdf, che in pratica sarebbe il pdf originale ristampato ancora su pdf... riproverò ad armeggiare con la configurazione di clawpdf su VM1...

Avatar utente
joe
Iper Master
Iper Master
Messaggi: 3944
Iscritto il: ven 27 apr 2007, 11:21
Slackware: 15.0
Kernel: 5.15.38
Desktop: dwm

Re: Printserver virtuale via SAMBA o altro

Messaggio da joe »

Alla fine i test che ho fatto con stampanti virtuali che dovrebbero produrre PDF si portano dietro più ostacoli e complicazioni che semplificazioni rispetto alla stampa effettiva su stampante fisica.

Tanto per ricapitolare un attimo: ho due sistemi windows 7 virtualizzati in virt-manager e messi in rete lan tra loro.
  • VM_1: print server con stampante epson collegata via usb grazie alla reindirizzazione usb di virt-manager.
  • VM_2: client su cui volevo installare la stampante del printserver in modo da lanciare verso di essa le stampe attraverso la rete. L'obiettivo sarebbe stato quello di riuscire a stampare da qui senza necessità di driver della stampante.
Com'è andata:
  • su VM2, cercando e aggiungendo la stampante condivisa in rete da VM1, questa viene trovata e la sua installazione comprende anche il driver di stampa della stampante epson.
    Era proprio quello che volevo evitare perché VM2 con win7 è solo un sistema di test, in realtà a me interessava capire se fosse possibile usare una macchina client linux per lanciare le stampe sul printserver windows che a sua volta gestisce la stampante attraverso il driver epson per windows.
  • comunque i due sistemi VM1 e VM2 si vedono, comunicano, a patto che iptables del sistema linux host sia spento, atrimenti c'è qualche regola troppo restrittiva che blocca.
  • infine la stampa da VM2 verso la epson collegata al printserver VM1 funziona. E questo è già un successo, nel senso che VM1 può funzionare come print server.

La domanda è a questo punto:
come fare per ottenere una soluzione driver-less in modo che il "client" VM2 sia comunque ancora in grado di stampare?

In pratica io vorrei ad esempio inviare da VM2 un PDF in stampa. Questo dovrebbe raggiungere il print server così com'è e aggiungersi alla coda di stampa della epson venendo gestito poi dal driver sullo stesso print server VM1.
Il client insomma non deve saper nulla della stampante, solo inviare il file PDF e stop.

A corollario, può essere che una configurazione simile non sia supportata a livello di stampante?
In effetti la Epson DX4400 è una roba molto basica ed economica, non mi aspetto che autonomamente abbia le funzionalità per gestire questa roba, ma proprio per questo avevo pensato alla soluzione del print server windows.

Qualcuno ha qualche idea?

Avatar utente
joe
Iper Master
Iper Master
Messaggi: 3944
Iscritto il: ven 27 apr 2007, 11:21
Slackware: 15.0
Kernel: 5.15.38
Desktop: dwm

Re: Printserver virtuale via SAMBA o altro

Messaggio da joe »

rik70 ha scritto:
lun 10 mar 2025, 11:41
joe ha scritto:
ven 7 mar 2025, 21:06
Che vada rimossa la necessità di autenticazione per usare la stampante su windows 7?
Non ricordo di preciso Win7, ma in "Pannello di Controllo" >> "Centro Connessioni di rete e condivisioni" >> "Impostazioni di condivisione avanzate", c'è una voce "Tutte le reti", o similare, da cui puoi attivare/disattivare la condivisione protetta da password.
Mi ero scordato di risponderti Rik, penso che dai miei due ultimi messaggi sia chiarito il problema: ovvero l'inghippo stava in samba, è un problema di permessi o giù di lì. Ma prima di affrontarlo ho voluto fare la prova senza SAMBA tra i piedi:

- da client windows a print server windows

E alla fine il risultato è che la stampante viene vista dla client, installata e la stampa funziona, quindi la stampate è effettivamente in rete disponibile.
Se l'host slackware non la vede via CUPS probabilmente ripeto è un problema lato linux, o meglio samba, sono quasi sicuro, indagherò meglio in questo senso perché poi l'obiettivo è lanciare la stampa da linux alla fine, quindi mi serve che funzioni ache quel passaggio.

Ad ogni modo il mio timore è che pur potendo raggiungere la stampante via samba, serva poi lo stesso il driver anche sul client linux, il ché non mi porterebbe da nessuna parte perché il driver per windows c'è mentre per linux quello che c'è è troppo obsoleto o almeno, io non sono riuscito a farlo funzionare.

rik70
Iper Master
Iper Master
Messaggi: 2547
Iscritto il: gio 10 mar 2011, 9:21
Slackware: 15.0
Kernel: 5.15.x-generic
Desktop: Sway
Distribuzione: Arch Linux

Re: Printserver virtuale via SAMBA o altro

Messaggio da rik70 »

joe ha scritto:
gio 13 mar 2025, 15:57
Ad ogni modo il mio timore è che pur potendo raggiungere la stampante via samba, serva poi lo stesso il driver anche sul client linux
Questo potrebbe essere il problema.

Potrebbe però esserci un'altra soluzione.

Anziché usare Windows come server di stampa, potresti virtualizzare una versione di Slackware su cui funzionano i driver proprietari Epson, mettendo in rete la stampante attraverso CUPS.

A quel punto, lato client Linux, la stampante "remota" verrebbe vista attraverso il protocollo IPP, e dovrebbe funzionare con il driver IPP Everywhere o il Driverless.

Su quale versione di Slackware girava il software Epson?

Avatar utente
joe
Iper Master
Iper Master
Messaggi: 3944
Iscritto il: ven 27 apr 2007, 11:21
Slackware: 15.0
Kernel: 5.15.38
Desktop: dwm

Re: Printserver virtuale via SAMBA o altro

Messaggio da joe »

Eh infatti il punto è proprio quello, la multifunzione è DX4400, e il driver è di secoli fa, ho trovato qualche accenno anche qui sul forum ma parliamo di roba di vent'anni fa, boh vado a memoria sarà stata slackware 10.x o 11 o giù di lì.

Non avevo pensato a quella soluzione comunque, sarebbe brillante... perché alla fine epson forniva un driver mi pare in rpm o in deb, al di là di slackware al limite si potrebbe pensare a virtualizzare una versione tipo di debian di quei tempi e installare lì il .deb. Non so se mi sarebbe più semplice provare da una vecchia slack e seguire i vecchi messaggi del forum... la conosco sicuramente meglio, ma da quanto ricordo di aver letto gli utenti avevano fatto qualche magheggio per farla funzionare. Vado a ripescare il tutto.
E c'è anche da dire che se la parte stampa dovrebbe essere abbastanza approcciabile, pur ricorrendo a strumenti dell'epoca, la questione scanner potrebbe risultare più complessa.

Grazie davvero dell'osservazione!

Avatar utente
ponce
Iper Master
Iper Master
Messaggi: 3079
Iscritto il: mer 5 mar 2008, 16:45
Nome Cognome: Matteo Bernardini
Slackware: slackware64-current
Kernel: 6.12.19
Desktop: lxde
Località: Pisa
Contatta:

Re: Printserver virtuale via SAMBA o altro

Messaggio da ponce »

io che sono pigro e che devo stampare ogni morte di papa creerei dei pdf da stampare da linux, li sposterei sul windows virtualizzato e poi li stamperei da li'...

Avatar utente
joe
Iper Master
Iper Master
Messaggi: 3944
Iscritto il: ven 27 apr 2007, 11:21
Slackware: 15.0
Kernel: 5.15.38
Desktop: dwm

Re: Printserver virtuale via SAMBA o altro

Messaggio da joe »

Sì anche io ho fatto così per testare se funzionava (proprio grazie al tuo suggerimento su LQ), ed è concettualmente una gran cosa: tu non mi supporti il driver per linux moderno? E io virtualizzo windows con cui la stampante è gestita col tuo stesso driver per win.
Chiaramente è una pezza gigantesca, siamo tutti d'accordo e non è una soluzione se non per evitare di buttare quella stampante.

Chiaramente parlando di pigrizia non è comodo perché pur stampando poco anch'io, ogni volta mi tocca fare:

Codice: Seleziona tutto

$ su -
# /etc/rc.d/rc.libvirt start
# virt-manager --> avviare "printserver"
# mount -t cifs -o username=pippo \\192.168.122.x\share /mnt/tmp
# cp /path/to/file_da_stampare.pdf /mnt/tmp
--  aprire la VM e da lì aprire il link a "share" messo sul desktop
-- aprire il file e lanciare finalmente la stampa...
-- ah non stampa perché non trova la stampante...
-- allora da virt-manager vai a reindirizzare manualmente la USB sulla Epson DX4400...
-- riprova e sta volta stampa
Insomma non è il massimo della comodità neanche tutta sta trafila. Qualcosa si potrà automatizzare eh, tipo con uno script e ad esempio coinvolgendo anche "virsh" invece dell'interfaccia grafica virt-manager, però è sempre roba per non pigri

Avatar utente
joe
Iper Master
Iper Master
Messaggi: 3944
Iscritto il: ven 27 apr 2007, 11:21
Slackware: 15.0
Kernel: 5.15.38
Desktop: dwm

Re: Printserver virtuale via SAMBA o altro

Messaggio da joe »

Ricercando indietro ho trovato alcuni miei topic in cui rompevo le scatole per consigli sulla pulizia degli ugelli intasati. In effetti poi avevo risolto con siringa e quasar vetri. Da quanto ho trovato, credo sia interessante per mia curiosità di fare un altro tentativo per riuscire a farla gestire nativamente da linux, se poi funziona la utilizzerò per esperimenti con cartucce auto-resettanti che ho visto a pochi soldi. Però apro un topic specifico, magari iniziando dalla parte scanner della multifunzione.

Mettiamo un attimo in cassetto la soluzione macchina virtuale + driver funzionante.
Intanto grazie a tutti per le risposte e gli spunti come sempre. ;)

rik70
Iper Master
Iper Master
Messaggi: 2547
Iscritto il: gio 10 mar 2011, 9:21
Slackware: 15.0
Kernel: 5.15.x-generic
Desktop: Sway
Distribuzione: Arch Linux

Re: Printserver virtuale via SAMBA o altro

Messaggio da rik70 »

joe ha scritto:
gio 13 mar 2025, 21:39
Mettiamo un attimo in cassetto la soluzione macchina virtuale + driver funzionante.
Ma c'è di più:
se dovessi riuscire nell'impresa, non avresti più bisogno della macchina virtuale.
Ti basterebbe andare a pescare il file pdd da /etc/cups/ppd generato da cups tramite IPP Everywhere o similare.

Per farla difficile:
mettiamo che ippfind trovi la tua Epson a questo indirizzo di rete:

Codice: Seleziona tutto

ipp://slackware.local:631/printers/Epson-DX4400
Aggiunta al CUPS dell'host e funzionante col driver IPP Ev*, troverai il relativo file PPD nel percorso indicato sopra e potrai utilizzarlo direttamente "in locale" come "driver" di stampa.

O ancora:

Codice: Seleziona tutto

driverless "ipp://slackware.local:631/printers/Epson-DX4400" | tee Epson-DX4400.ppd
Il tutto con l'indubitabile vantaggio che i file PPD di cui sopra conterranno le informazioni corrette di stampa, come ricevute dal server CUPS del "guest", ricavate direttamente dal driver proprietario.

Sulla carta tutto molto bello, ma la riuscita dipenderà esclusivamente dal software del "guest".

Avatar utente
joe
Iper Master
Iper Master
Messaggi: 3944
Iscritto il: ven 27 apr 2007, 11:21
Slackware: 15.0
Kernel: 5.15.38
Desktop: dwm

Re: Printserver virtuale via SAMBA o altro

Messaggio da joe »

Interessante, sì merita un tentativo. Come annunciavo ieri, per fare un po' d'ordine apro un topic sulla risoluzione problemi di scansione, per non dire riconoscimento nativo dello scanner, ma giusto perché mi pare più abbordabile da quello che ho letto. OK, vedo di buttar giù una sintesi di quanto ho trovato e riporto cosa salta fuori attaccando lo scanner.

Per la parte stampa comunque terrò presente anche questa possibilità di riconoscimento diciamo "esotico".
Grazie ancora per gli spunti! :)

appo
Linux 0.x
Linux 0.x
Messaggi: 51
Iscritto il: dom 16 mag 2010, 12:23

Re: Printserver virtuale via SAMBA o altro

Messaggio da appo »

Ciao,
anche io sono interessato alla stampante multifunzione, in particolare allo scanner (@joe) perché:
- ho una canon TR4755i, ovvero TR4700;
- fnziona per la stampa;
- non funziona per lo scanner... (ovvero funziona per lo scanner dopo aver tentato una settimana con https://slackbuilds.org/repository/15.0 ... angearmp2/... ma scangearmp2 non è un driver, è un programma... è per questo che non capivo... Vabbè).

Insomma, ho due programmi funzionanti invece che ne ho soltanto uno stampa+scanner...

Una cosa: io ho slackware 14.2, lo so, è vecchiotta...

@rik70: ippfind non c'è (scusatemi per gli insulti che ora mi date...).
Io ho configurato cups con

Codice: Seleziona tutto

ipp://<IP stampante>:631/printers/Canon_TR4700_series
ma lo scanner non và.

appo

rik70
Iper Master
Iper Master
Messaggi: 2547
Iscritto il: gio 10 mar 2011, 9:21
Slackware: 15.0
Kernel: 5.15.x-generic
Desktop: Sway
Distribuzione: Arch Linux

Re: Printserver virtuale via SAMBA o altro

Messaggio da rik70 »

appo ha scritto:
ven 14 mar 2025, 17:18
@rik70: ippfind non c'è (scusatemi per gli insulti che ora mi date...).
Ciao, hai perfettamente ragione, altro che insulti.

Per averlo, va ricompilato il pacchetto nativo cups modificando/eliminando queste due stringhe nello Slackbuild

Codice: Seleziona tutto

  --disable-avahi \
  --disable-dnssd \
dopo aver installato avahi da Sbo.

P.s.
Per funzionare, il demone avahi dovrà essere in esecuzione e si dovrà modificare /etc/nsswitch.conf

Rispondi