![OSX: CUPS で制御すると EPSON プリンターが故障する](https://rvso.com/image/658719/OSX%3A%20CUPS%20%E3%81%A7%E5%88%B6%E5%BE%A1%E3%81%99%E3%82%8B%E3%81%A8%20EPSON%20%E3%83%97%E3%83%AA%E3%83%B3%E3%82%BF%E3%83%BC%E3%81%8C%E6%95%85%E9%9A%9C%E3%81%99%E3%82%8B.png)
特定のユーザーのプリンタへのアクセスを制御するアプリケーションを開発しました。これは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 が最も簡単なオプションのようです。助けてください。
答え1
オプションも使用してコマンドを使用すると、それがわかりました
lpadmin -u allow:all -p "+printerName
これは基本的に、承認側と拒否側の両方で CUPS アクセス制御リストをクリアし、必要な結果が得られます。しかし、そもそもなぜこのようなことが起こるのかは不思議です。