Samba non carica le stampanti Cups al riavvio del server
Se al riavvio di una macchina con samba e stampanti cups, non vengono più visualizzate le stampanti condivise, verificare che nel file di log di samba ci sia la seguente riga:
Unable to connect to CUPS server localhost - Connection refused
In pratica Samba alla partenza non trova ancora attivo Cups, quindi non rileva le stampanti.
Per questo un semplice
sudo /etc/init.d/samba reload
permette di veder riapparire le stampanti.
Questo problema può essere causato da due fattori:
- CUPS tarda ad inizializzarsi, perchè cerca di raggiungere delle stampanti non disponibili.
Se ci sono delle stampanti definite in CUPS che sono collegate con dei JetDirect, ed esse sono permanentemente spente, eliminarle.
Cups tenta di contattare tutte le stampanti definite, con un timeout, quindi eliminare le stampanti inattive.
- CUPS è lento ad avviarsi
Se nonostante i fix precedenti non si risolve la cosa, è possibile anticipare l'avvio di Cups e posticipare quello di samba, modificando i link di partenza in /etc/rc2.d spostando cups da 20 a 10 e samba da 20 a 99.
Oppure si può modificare lo script init.d di samba, imponendogli di attendere che Cups sia attivo, ad esempio
- Aggiungendo all'inizio della sezione start di /etc/init.d/samba
sleep 10
Oppure
- Aggiungendo all'inizio della sezione start di /etc/init.d/samba
while ! lpq > /dev/null 2>&1; do sleep 1; done
Riferimenti