Как я могу перечислить все установленные драйверы принтера в Mac OS 10.6?

13

Я пытаюсь устранить неполадки, связанные с принтером, и решил, что лучше всего рассмотреть все драйверы принтера (и их версии) в качестве отправной точки, прежде чем пытаться переустановить указанные драйверы.

Я хотел бы видеть все драйверы принтера, которые я установил на моем Mac. Где они установлены? Какой каталог? Каков наилучший способ удалить их, если я так хотел?

Кипарис Франкенфельд
источник
О чем ты говоришь в Терминале? Язык, который вы дали для системы Unix. Мой Mac PB не распознает его, если я не введу его в неправильное поле. Пожалуйста, объясни. Благодарю.
1
Я не понимаю ваш комментарий вообще. Перефразировать?
Кипарис Франкенфельд

Ответы:

13

Начиная с Mac OS 10.2, печать обрабатывается системой CUPS . Хотя драйверы обычно находятся в /Library/Printersпапке, она может содержать файлы поддержки и многие другие вещи, которые сами по себе не являются драйверами печати, и в реальном мире нет канонического расположения в папке, где хранятся фактические файлы драйверов.

Единственный достоверный список доступных драйверов печати в OS X - это возвращенный lpinfo -m(указание хоста не обязательно для локального компьютера). CUPS указывает, что драйверы могут состоять из произвольного числа файлов, но все они должны быть объявлены в центральном файле PPD. lpinfo -mпроанализирует все найденные действительные PPD; если у него нет PPD, который CUPS может анализировать, то он не является действительным драйвером печати. Образец вывода:

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
[...]

В каждой строке указывается путь к файлу PPD этого драйвера, за которым следует отображаемое имя принтера, объявленное в PPD. Как видите, некоторые драйверы являются внутренними для CUPS и даже не имеют PPD-файла /Library/Printers, поэтому lpinfo -mэто единственный способ быть уверенным во всем, что доступно для системы печати.

Кажется, что нет большой последовательности относительно номеров версий; Я видел, как некоторые поставщики включают версию в строку make-and-model, которую возвращает lpinfo -m(например, Xerox), но она, конечно, не универсальна. Тем не менее, файл PPD просто текст (необязательно сжатый). Если вы откроете PPD в текстовом редакторе, вы должны найти *FileVersionстроку со списком версии драйвера.

Удаление принтера с помощью кнопки «минус» в «Системных настройках» не удаляет / не удаляет драйвер, а просто удаляет очередь, созданную для данного принтера. (Технически, когда вы создаете очередь принтера, для этого принтера создается копия PPD, которая будет удалена при удалении очереди.) Опция «Сбросить систему печати ...» также не удалит драйверы; он только удалит все настроенные очереди печати и восстановит некоторые настройки CUP по умолчанию.

Удаление указанного в списке файла PPD lpinfoфактически удалит драйвер, так как он больше не будет загружаться системой CUPS, хотя, как объяснено выше, могут остаться дополнительные файлы поддержки. Не существует стандартного способа их удаления, потому что каждый драйвер может включать файлы поддержки в разных местах, но нет причин удалять их, если вы не собираетесь переустанавливать драйвер. В этом случае исходный установочный пакет от производителя должен обрабатывать переустановку всех соответствующих файлов.

Иногда я видел, как люди вручную копировали файлы PPD для установки принтеров; не надейся на это ! Некоторые драйверы требуют только PPD, но другие могут также нуждаться в файлах поддержки. Единственный способ убедиться, что все необходимые файлы установлены, - это использовать оригинальный установочный пакет.

ghostly_s
источник
1
Это хороший ответ, чтобы перечислить все драйверы принтера. Как найти номер версии для указанных драйверов? Есть ли для этого стандарт? Было бы полезно при попытке определить, установлена ​​ли конкретная версия или нет.
Кипарис Франкенфельд
Для будущих читателей: этот ответ также, похоже, работает на macOS 10.13.2
Cypress Frankenfeld
2
@CypressFrankenfeld Я видел, что некоторые поставщики включают номер версии в строку make-and-model, которую возвращает lpinfo -m(например, Xerox), но это, конечно, не стандарт. Но файл PPD является просто открытым текстом, за исключением случаев, когда он сжат и вам нужно его расширить. Если вы откроете один в своем любимом текстовом редакторе, вы должны найти *FileVersionстроку с тем, что вы ищете.
ghostly_s
Спасибо @ghostly_s! Вы должны добавить номер версии материала в свой ответ. Так полезно!
Кипарис Франкенфельд
4

Первое, на что вы, скорее всего, захотите взглянуть - это параметр « Печать и сканирование» в Системных настройках . Там вы увидите список всех принтеров, которые вы установили. При желании вы можете удалить каждый из них, нажав на минус «-» внизу списка.

Кроме того, если вы решаете проблемы с принтером, вы можете попробовать щелкнуть правой кнопкой мыши в списке и выбрать « Сбросить систему печати» . Apple имеет документ о том, что делает сброс системы печати здесь: http://support.apple.com/kb/HT1341

На ваш вопрос о том, где драйверы фактически установлены, ответ будет в папке / Library / Printers . Я заметил, что некоторые драйверы принтеров остались в этой папке без изменений даже после их удаления. Я сам удалил некоторые файлы здесь и сказал бы, что это обычно безопасно . Тем не менее, я бы по-прежнему предлагал сначала удалить драйверы принтера из Print & Scan, прежде чем перейти в эту папку.

XCool
источник
4

Запустите это в Терминале:

lpinfo -m -h 127.0.0.1:631

В нем будут перечислены все драйверы для локального хоста.

Даниэль Свенссон
источник
2
Некоторые примеры выходных данных могут значительно повысить качество этого ответа :).
Джейсон Салаз
1
2767 записей здесь, вероятно, проще, если вы запустите команду самостоятельно. К сожалению, список не показывает больше, чем имя.
холме
Я получил lpinfo: Internal Server Errorв качестве вывода.
Кипарис Франкенфельд
4

OS X использует CUPS, который использует фильтры печати (файлы .ppd) для форматирования документов для отправки на принтеры. Установленные и используемые в настоящее время файлы ppd можно найти по адресу/private/etc/cups/ppd/ .

Чтобы увидеть полный список того, что доступно на вашем компьютере, посмотрите /Library/Printers/здесь, вы найдете папки с драйверами, которые были установлены (обычно в папках по брендам, то есть у вас может бытьBrother папка и Canonпапка, если вы когда-либо использовали принтер Brother или Canon ).

Также вероятно будет папка PPDs, которая содержит архивные фильтры печати, которые доступны.

Для некоторых дополнительных параметров принтера вы можете набрать:

cupsctl WebInterface=yes

Затем укажите ваш веб-браузер на http://localhost:631 Это откроет веб-интерфейс CUPS, который имеет несколько дополнительных битов и опций, которые вы можете получить в Системных настройках.

Важно отметить, что большинство этих опций связано с самой системой печати, а не с собственными опциями / утилитами принтера.

sdmeyers
источник
0

Вы также можете попробовать

lpstat -p

Это даст вам имя принтера и его статус, а также дату, когда он был включен.

user68835
источник
-1

Не совсем уверен, но я использую драйверы принтера Gutenprint для принтера Sharp моего офиса. Может быть, вы можете посмотреть здесь для получения дополнительной информации.

Kukoo
источник