Windows共享打印机:在服务器机器上处理作业,而不是客户机

在使用Linux客户端到Windows SMB / CIFS文件共享服务器时,有时我发现自己不得不打印到Linux下没有驱动程序的打印机上。

出于某种原因,Windows计算机预期作业将以已处理的格式发送,因此可以用自己的奇怪语言直接input到打印机。

如果我可以将Postscript或其他标准格式的打印作业发送给共享此打印机的Windows计算机,那么这将是非常好的,然后可以在Windows下处理该PS。

有没有办法做到这一点? 因为我似乎没有findselect。

非常感谢。

您可以将Windows文件/打印服务器设置为接受来自非Windows(甚至Windows)客户端的PostScript(或PDF),并在传入文件之前将传入文件转换为本地打印机格式。

你需要做3件事情:

  • 在Windows系统上安装Ghostscript (1);
  • 设置使用Ghostscripts mswinpr2 (2)设备的打印队列;
  • 使用RedMon软件 (3)作为该队列的端口监视器 (4)( HOWTO (5))。

    [1]: http://ghostscript.com/releases/ : http://ghostscript.com/releases/
    [2]: http://svn.ghostscript.com/ghostscript/trunk/gs/doc/Devices.htm#Win : http://svn.ghostscript.com/ghostscript/trunk/gs/doc/Devices.htm#Win
    [3]: ftp://mirror.cs.wisc.edu/pub/mirrors/ghost/ghostgum/redmon17.zip : ftp://mirror.cs.wisc.edu/pub/mirrors/ghost/ghostgum/redmon17.zip
    [4]: http://pages.cs.wisc.edu/~ghost/redmon/ : http://pages.cs.wisc.edu/~ghost/redmon/
    [5]: http://pages.cs.wisc.edu/~ghost/redmon/en/redmon.htm : http://pages.cs.wisc.edu/~ghost/redmon/en/redmon.htm


更新:
刚刚在这里发现了这个包括很多截图的howto:

虽然这涵盖了使用模拟PostScript设备的Windows打印服务器的Mac客户端,但其大部分指示信息适用于您的用例(Linux客户端)的1:1。

如果连接到打印服务器的打印机可以处理postscript文件,则Windows Server可以设置LPR网关。 如果在Windows服务器上允许这样做,那么您的本地Linux打印应该能够使用它。 不幸的是,如果打印机本身不能说postscript,你仍然需要一个Linux本地驱动程序。