Da Mac OS 10.2, la stampa è gestita dal sistema CUPS. Mentre i driver si trovano in genere in /Library/Printers
, la cartella può contenere file di supporto e molte altre cose che non sono essi stessi driver di stampa e nel mondo reale non esiste alcuna posizione canonica all'interno della cartella in cui sono memorizzati i file dei driver effettivi.
L'unico elenco autorevole di driver di stampa disponibili su OS X è quello restituito da lpinfo -m
(specificando che l'host non è necessario per il computer locale). CUPS specifica che i driver possono essere costituiti da un numero arbitrario di file, ma devono essere tutti dichiarati in un file PPD centrale. lpinfo -m
analizzerà qualsiasi PPD valido trovato; se non ha un PPD che CUPS può analizzare, allora non è un driver di stampa valido. Un esempio dell'output:
MacBook-Pro:~ user$ lpinfo -m
Library/Printers/PPDs/Contents/Resources/CNPZUD450ZU.ppd.gz Canon D400-450
Library/Printers/PPDs/Contents/Resources/CNPZUD490ZU.ppd.gz Canon D460-490
Library/Printers/PPDs/Contents/Resources/CN6300.ppd.gz Canon iPF6300(CUPS)
Library/Printers/PPDs/Contents/Resources/CN6300S.ppd.gz Canon iPF6300S(CUPS)
Library/Printers/PPDs/Contents/Resources/CN6350.ppd.gz Canon iPF6350(CUPS)
Library/Printers/PPDs/Contents/Resources/CN8300.ppd.gz Canon iPF8300(CUPS)
Library/Printers/PPDs/Contents/Resources/CN8300S.ppd.gz Canon iPF8300S(CUPS)
[...]
drv:///sample.drv/okidata9.ppd Oki 9-Pin Series
drv:///sample.drv/okidat24.ppd Oki 24-Pin Series
raw Raw Queue
[...]
Ogni riga specifica il percorso del file PPD del driver, seguito dal nome visualizzato della stampante come dichiarato nel PPD. Come puoi vedere, alcuni driver sono interni a CUPS e non hanno nemmeno un file PPD in /Library/Printers
, quindi lpinfo -m
è l'unico modo per essere certi di tutto ciò che è disponibile per il sistema di stampa.
Non sembra esserci molta coerenza per quanto riguarda i numeri di versione; Ho visto che alcuni venditori includono la versione nella stringa make-and-model restituita da lpinfo -m
(Xerox, ad esempio), ma non è certamente universale. Tuttavia, il file PPD è solo testo in chiaro (opzionalmente compresso). Se apri il file PPD in un editor di testo, dovresti trovare una riga *FileVersion
che elenca la versione del driver.
Eliminando una stampante usando il pulsante 'meno' in Preferenze di Sistema non cancella / disinstalla il driver, elimina solo la coda che è stata creata per la stampante in questione. (Tecnicamente, quando si crea una coda di stampa, viene creata una copia del PPD per quella stampante, che verrà eliminata quando si elimina la coda.) L'opzione 'Ripristina sistema di stampa ...' non rimuoverà alcun driver; cancellerà solo tutte le code di stampa configurate e ripristinerà alcune configurazioni CUP ai valori predefiniti.
L'eliminazione di un file PPD elencato da lpinfo
eliminerà effettivamente il driver, poiché non verrà più caricato dal sistema CUPS, sebbene come spiegato sopra potrebbero esserci ulteriori file di supporto rimasti. Non esiste un modo standard per rimuoverli poiché ciascun driver può includere file di supporto in posizioni diverse, ma non c'è motivo di eliminarli a meno che non si intenda reinstallare il driver. In tal caso, il pacchetto di installazione originale del produttore dovrebbe gestire la reinstallazione di tutti i file pertinenti.
A volte ho visto persone copiare manualmente file PPD come mezzo per installare stampanti; non fare affidamento su questo ! Alcuni driver richiedono solo un PPD, ma altri potrebbero aver bisogno di file di supporto. L'unico modo per essere sicuri che tutti i file necessari siano installati è utilizzare il pacchetto di installazione originale.