Con questa guida vogliamo mostrarvi come sia possibile stampare da un PC dotato di SO Windows o Linux, su una stampate collegata in rete ad un computer con SO Linux. Nello specifico vi spiegheremo come stampare da un PC con Windows 7 (che chiameremo d'ora in poi pc-win) su una stampate connessa ad un sistema con Fedora 15 (PC che chiameremo d'ora in poi pc-linux).
Anche se verranno indicati molti passaggi basilari, e non me ne vogliano coloro che ne sono già a conoscenza, non tratteremo qui problemi legati alla rete LAN. Pertanto si dà per scontato che la rete funzioni correttamente. Indicheremo, però, l'eventuale risoluzione di alcuni problemi che potrebbero essere legati alla presenza di un firewall o di una qualche restrizione sulla rete stessa. E così, tanto per iniziare, ricordatevi di aprire, sul firewall del vostro sistema linux:
- Porta numero: 631
- Protocollo: TCP
- Servizio: IPP
Prima di iniziare la guida controlliamo che i PC connessi in rete riescano a comunicare tra di loro. Sul pc-win facciamo Start -> Esegui e digitiamo "cmd". Si aprirà il prompt dei comandi nel quale andremo a digitare:
ipconfig
seguito da Invio. Avremo un listato del tipo:
Verifichiamo sul pc-linux che abbia stessa maschera (mask) e stesso gateway, dando il comando (su una shell con permessi di root):
ifconfig wlan0
se siete collegati in wireless, oppure:
ifconfig eth0
se siete collegati mediante rete LAN Ethernet.
Se i dati coincidono, verifichiamo che entrambi i PC comunichino tra loro. Ipotizziamo che:
- Il pc-win abbia IP = 192.168.1.2
- Il pc-linux abbia IP = 192.168.1.7
Quindi, dal pc-win possiamo "pingare" il pc-linux scrivendo, nel prompt precedentemente aperto:
ping -n 3 IP-pc-linux
dove l'opzione "-n 3" serve per fermare a 3 volte l'invio di pacchetti.
Dal pc-linux possiamo "pingare" il pc-win digitando, dal terminale:
ping -c 3 IP-pc-win
dove l'opzione "-c 3" serve per fermare a 3 volte l'invio di pacchetti.
Se la % dei pacchetti persi è bassa (praticamente 0) allora possiamo proseguire, altrimenti è bene controllare i firewall ed altre eventuali restrizioni.
A questo punto assicuriamoci che il servizio CUPS, che permette di stampare di stampare praticamente qualunque cosa su una stampante connessa nella rete LAN, sia perfettamente funzionante sul pc-linux. Diamo quindi, da un terminale con permessi di root, i comandi:
chkconfig | grep cups
assicurandoci che sia sullo stato ON almeno per il runlevel (il runlevel permette di specificare la modalità in cui Linux deve essere attivato e, in generale, 5 viene usato per la modalità grafica e 3 per la modalità testo) in cui sarà la macchina quando vorremo mandargli le stampe, da reindirizzare alla stampante.
Se il servizio CUPS è su OFF per tutti i runlevel, da root dobbiamo digitare:
chkconfig cups on
per settarlo su ON ai runlevel di default.
Per avviare il servizio CUPS possiamo dare, sempre da root, il comando:
/etc/init.d/cups start
Consiglio sempre di guardare il manuale di chkconfig con "man chkconfig" per sapere come settare CUPS solo a determinati runlevel ed altre opzioni.
Controlliamo quindi che il servizio cups sia effettivamente in funzione, con:
lpstat -r
Possiamo ottenere maggiori informazioni (se CUPS è in funzione, disponibilità delle stampanti, stampante predefinita), dando il comando:
lpstat -t
Per vedere solo le stampanti a disposizione e il loro stato dare il comando:
lpstat -p
Per sapere qual'è la stampante predefinita dobbiamo digitare il comando:
lpstat -d
Anche in questo caso vi consiglio di guardare il manuale di lpstat con "man lpstat" per ulteriori informazioni.
Se fin qui è tutto ok (la LAN funziona ed entrambi i PC comunicano tra di loro, cups avviato e funzionante, stampate installata e "in attesa"), passiamo alla configurazione di CUPS sul pc-linux.
Apriamo un browser e nella barra degli indirizzi digitiamo:
localhost:631
Si aprirà l'interfaccia web di CUPS, in ascolto sulla porta 631. Spostiamoci nella sezione "Administrator" (raggiungibile anche dando l'indirizzo "http://localhost:631/admin/"), e controlliamo che il server di base abbia queste configurazioni:
- Mostra stampanti condivise da altri sistemi: SI
- Condividi stampanti connesse al sistema: SI
- Consenti amministrazione remota: NO
- Consenti agli utenti di annullare qualunque operazione (non solo le proprie): NO
Queste quattro voci sono consigliate per far funzionare l'operato di questa guida pur mantenendo un certo margine di sicurezza. Le altre voci le potete impostare a piacere. E' necessario poi cliccare su "Cambia impostazioni" dove inseriremo i diritti di autenticazione richiesti simili a quelli usati nella fase di login del nostro sistema.
Passiamo dunque al pc-win.
Apriamo un qualsiasi browser (io utilizzo Firefox) e nella barra degli indirizzi digitiamo:
IP-pc-linux:631
per aprire l'interfaccia web di CUPS.
Spostandoci nella sezione "Printers" possiamo notare le stampanti collegate al pc-linux e vederne il loro stato. Tale sezione è anche raggiungibile con l'indirizzo:
IP-pc-linux:631/printers/
Andiamo sulla stampante che vogliamo installare sul nostro pc-win e prendiamo nota del suo indirizzo sulla rete (tasto destro sulla stampate scelta -> Copia indirizzo). Si noti che l'indirizzo sarà del tipo http://IP-pc-linux/printers/nome_stampante ma nel caso in cui vi darà un indirizzo del tipo https://, rendetelo http:// (senza la "s" per intenderci).
Chiediamo al pc-win di installare una nuova stampante e quando ci verrà chiesto gli indicheremo che si tratta di una stampante di rete:
Il sistema inizierà a cercare la stampate in rete. Per non perdere tempo (la stampante è collegata ad un sistema Linux) interrompiamo l'operazione e clicchiamo sull'opzione: "La stampante desiderata non è nell'elenco". Selezioniamo dunque: "Seleziona una stampante condivisa in base al nome" e incolliamo sotto l'indirizzo precedentemente salvato. Ricordiamoci, se non è stato fatto, di cancellare l'eventuale "s" da https:// (Evitiamo il "secure" dell'https)
Noteremo che il pc-win si connetterà alla stampante collegata al pc-linux:
e ci chiederà quali driver installare per essa:
Dalla schermata andremo a selezionare i driver più appropriati per la nostra stampante e daremo l'OK. Infine avremo una schermata riepilogativa che ci informerà sull'avvenuta installazione della stampante.
Quindi ancora su "Avanti" e poi "Fine". La stampate ora è pronta all'uso, in LAN, anche se collegata ad un PC con sistema operativo Linux.
Aprite il file da stampare, selezionate la stampante da quelle disponibili e stampate! Volendo potete rendere la nuova stampante predefinita in Windows da Pannello di controllo -> Hardware e suoni -> Dispositivi e stampanti, cliccando con il tasto destro su di essa e scegliendo la voce "Imposta come stampante predefinita"