
对于上面的客户需求,查看资料,说papercut NG可以实现这个功能,于是我就安装测试了一下。
papercut功能,每当用户打印一个文档时,PaperCut 会自动将该打印作业的内容(通常是 PDF 格式)保存到服务器上的一个指定位置,以备后续审计、复查或存档。
下载完papercut NG软件之后,开始安装。





















步骤 1:启用并配置存档(归档)设置
1. 以管理员身份登录 PaperCut NG 的 Web 管理后台(https://您的服务器地址:9191)。

2. 导航到选项---编辑配置(高级的)。

3. 在左侧的“所有选项”搜索框中,输入archive来快速定位相关设置。


我们需要配置以下几个关键选项。
archive.enabled总开关设置为true以启用打印存档功能。


然后,我们再设置archive.path存档文件存储路径设置一个服务器上的本地路径,例如 D:\PaperCut-Archive。确保此文件夹存在且 PaperCut 服务账户具有读写权限。
先在D盘创建PaperCut-Archive文件夹。
archive.path


archive.file-name-forma存档文件的命名规则这是一个非常强大的选项,允许你自定义文件名。例如:<br>`{user}{jobid}{date-created-yyyy-MM-dd-HHmmss}.pdf` <br>这会生成类似 `zhangsan12345_2024-05-27-143052.pdf` 的文件名。你可以使用很多变量,如 `{user}`, `{printer}`, `{client-computer}`, `{jobid}` 等。 |


archive.format 存档文件的格式推荐设置为 pdf。这样无论原作业是什么格式,存档都会是通用的 PDF 文件。

配置完成之后,我就开始测试。测试从任意一台计算机打印一个文档(最好是包含文字和图片的文档,以便验证内容)。
打印完成后,前往我在 archive.path中设置的目录,检查是否生成了一个新的 PDF 文件。
我们再确定一下,刚才我们配置的几个参数。
1. 开启总开关 (archive.enabled = true)。
2. 设置存储路径 (archive.path)。
3. 定义文件命名规则 (archive.file-name-format)。
4. (可选但推荐)配置选择性存档策略,通过规则、用户组或打印机设置来精细化控制。



在 Windows 上:
1.找到存档文件夹D:\PaperCut-Archive。
2.右键 -> 属性 -> 安全选项卡。
3.检查 Users组或 NETWORK SERVICE或 SYSTEM账户是否至少有 “修改”和“写入”权限。为了快速测试,您可以临时给Everyone组“完全控制”权限,如果此时归档成功了,就说明是权限问题,然后再将其修改为更安全的权限。

4.验证打印流程是否经过 PaperCut,打印作业可能“绕过”了 PaperCut 的监控。
到paperCut NG界面查找问题。
1. 在 PaperCut 管理后台,进入报告 -> 最近打印作业。
2. 我再打印一次。
3. 刷新此页面。
我发现,Brother-5450打印机,根本没有打印日志,那就奇怪了。

请对照这个清单,确保每一项都已完成,后来又有的资料说,要配置如下两个参数,我又新增加了一下。
content.collect已设为true
content.collect.print-jobs已设为true

archive.enabled已设为true。
archive.path路径存在且拼写正确。
PaperCut 服务账户对archive.path有写入权限。
打印作业出现在报告最近打印作业中,没有打印记录。
打印作业的 “大小” 列不为0 KB(表示内容已被捕获)
根据以上配置,我发现,我这台打印机,根本没有被捕获。
难道是这些参数配置完成之后,parpercut服务要重启,把它重启一下。
重启 PaperCut 打印提供程序服务:
按 Win + R,输入services.msc
找到 "PaperCut Print Provider"服务
右键选择 "重启"










无法找到存档打印作业位置“D:\PaperCut\2025\11\30\00\40f767c408c10caaa5290a8a82f53256d5a18ba0”。打印服务器“desktop-0268al9”(IP:127.0.0.1)获通知此工作已归档。请检查“ArchiveDir”在print-provider.conf“desktop-0268al9”配置复制到“D:\PaperCut”在此服务器上。
找到打印提供程序配置文件:
默认路径通常是:C:\Program Files\PaperCutNG\ Provider\print\win\print-provider.conf

用文本编辑器(如记事本)以管理员身份打开这个文件。发现archiveDir=后面是空的。

于是我又在D盘创建一个papercut文件夹,之前的文件中间有横线我怕有问题。


然后,在这个配置文件中,将ArchiveDir=PaperCut。



打印作业归档测试,发现还是不行。后来发现,ArchiveDir=后面的盘符,需要使用两个\\。

重要提示:
Windows 路径中的反斜杠需要使用双反斜杠 `\\`
确保D:\PaperCut-Archive目录在desktop-0268al9服务器上确实存在,且 PaperCut 打印提供程序服务账户有写入权限。
然后,再重启PaperCut服务,重新完成之后,再次测试,发现这次还真的可以备份打印文件了,双击打开,提示,不能转换此页成图档。



papercut文件夹有归档文件了,但是直接打开提示不能转换此页成图档
虽说我们捕获了打印文件,但是PaperCut 成功捕获并存储了打印作业,但是在将原始打印数据转换为可读的 PDF 文件时失败了。
1. 捕获:从打印假脱机系统获取原始的打印数据(通常是 `.SPL` 文件或 `EMF`/`XPS` 数据)。
2. 转换:将原始数据转换为您指定的格式(如 PDF)。
我的错误发生在 第2步 - 转换阶段。
我想快速得到一个可读的文件,可以暂时不转换为 PDF。
进入选项-> 高级,修改:
archive.format不强制转换为 PDF,而是保存为 PostScript (.ps) 或 XPS (.xps) 文件。据说这些格式很多阅读器都能打开。



于是我测试能直接打开.xps的阅读器,试了几个还是不行。
安装Ghost Trap——一个经过安全防护的PostScript和PDF转图片转换器。
下载:
统管理员应首先熟悉归档磁盘管理选项。 这些文件可在选项→通用→印刷归档中找到



输入您的 Ghostscript 路径进行版本检查:
C:\Program Files\gs\gs10.03.0\bin\gswin64c.exe--version
如果安装正确,应该会返回 Ghostscript 的版本号。


1. 在打印服务器上,检查选项 -> 高级中:
content.conversion.gs.windows.enabled是否为 true?
content.conversion.gs.windows.path` 指向的 Ghostscript 安装路径是否正确?
正确示例:
C:\\Program Files\\gs\\gs10.03.0\\bin\\gswin64c.exe
或 C:/Program Files/gs/gs10.03.0/bin/gswin64c.exe
我的C:\Program Files\gs\gs10.06.0\bin



重启服务,发现还是不行,到这里,我就不想测试了。
这个软件是的确可以捕获到打印文件的,但是我现在还没有办法将其转换成正常的pdf文件。
兄弟们,有谁用过这个功能的,帮忙提点一下,或者有什么好的打印备份方案的,可以帮忙指导一下,感谢!
本文链接:https://www.jingber.cn/post/3848.html 转载需授权!

微信扫一扫,打赏作者吧~