У меня есть приложение, которое я разработал, который управляет доступом к принтеру для определенных пользователей. Я выполняю это использование CUPS и команды lpadmin
lpadmin -u allow:"+PRINT_USER_NAME+" -p "+printerName
lpadmin -u deny:"+PRINT_USER_NAME+" -p "+printerName
Эта команда, кажется, работает отлично для всех кроме этого принтера EPSON Stylus Pro 9800. Даже если пользователю разрешают распечатать, это сообщение об ошибке появляется в очереди
/Library/Printers/EPSON/InkjetPrinter2/Filter/rastertoescpII.app/Contents/MacOS/rastertoescpII failed
Теперь вот строка над заголовком, которой я верю, ключ. Когда пользователю разрешают распечатать, затем обнаружиться в панели управления CUPS, как позволяемой как это
Но если я удаляю того пользователя из Позволения и Предотвращаю список полностью, по существу говоря, что этому позволяют распечатать затем, все работает отлично. Таким образом, сообщение об ошибке только появляется, если пользователь находится в управляемом Позволенном списке CUPS.
Таким образом, я могу думать о 2 опциях:
1) Фигура, почему использование CUPS для управления доступом вызывает эту проблему с этим определенным принтером.
2) Фигура, как (использование командной строки) для снимания пользователя Отклонять списка, не используя lpadmin -u allow
команда. Это должно сделать его, что пользователь больше не находится ни на каком списке управления доступом CUPS вообще, который, оказалось, работал.
Опция № 2 походит на самую легкую опцию. Справка?
Понял это, когда тоже с опцией и использовал команду
lpadmin -u allow:all -p "+принтерName
Это, по сути, очищает список контроля доступа CUPS как со стороны одобрения, так и со стороны запрета, таким образом, давая мне результат, который я хочу, чтобы это работало. Хотя мне любопытно, почему это происходит в первую очередь
.