当前位置: 首页 > news >正文

【bug】Error: /undefinedfilename in (/tmp/ocrmypdf.io.9xfn1e3b/origin.pdf)

在使用ocrmypdf的时候,需要Ghostscript9.55及以上的版本,但是ubuntu自带为9.50
在这里插入图片描述
然后使用ocrmypdf报错了

sudo apt update
sudo apt install ghostscript
gs --version
9.50 #版本不够

安装的版本为9.50不够,因此去官网https://ghostscript.com/releases/gsdnld.html下载10.05.1的版本,但是不要下载snap版本,下载源码进行编译
在这里插入图片描述
使用 sudo snap install --devmode gs_10.05.1_amd64.snap 安装 Ghostscript 时,它会被安装在一个 高度隔离的沙盒环境 中。这意味着 Snap 包对文件系统、网络和其他系统资源的访问是受限的,除非明确授予权限。

当 ocrmypdf 尝试调用这个通过 Snap 安装的 Ghostscript 时,Ghostscript 会尝试访问 ocrmypdf 创建的临时文件(例如 /tmp/ocrmypdf.io.63kyrt7k/origin.pdf)。然而,由于 Snap 的隔离机制,你的 Ghostscript Snap 很可能没有权限读取或写入到像 /tmp 或你文件系统中其他任意位置(包括 /mnt/mydrive/item/python/tmp)的临时文件。

尽管你之前检查过 /tmp 目录的权限是正确的(drwxrwxrwt),但那是针对宿主系统而言的。Snap 环境有自己的沙盒规则,即便宿主系统允许访问,Snap 包内部也可能被限制。
下载源码,下面是具体命令:

sudo apt remove ghostscript # 卸载自带的版本
sudo snap remove gs # 如果通过snap下载就删除
wget https://github.com/ArtifexSoftware/ghostpdl-downloads/releases/download/gs10051/ghostscript-10.05.1.tar.gz
sudo apt install build-essential libcups2-dev libpng-dev libtiff-dev zlib1g-dev libjpeg-dev liblcms2-dev libpaper-dev libopenjp2-7-dev libjbig2dec-dev #下载依赖
tar -xf ghostscript-10.05.1.tar.gz
cd ghostscript-10.05.1/
./configure  # ./configure 会检查你的系统环境和依赖
make -j$(nproc)  # 编译代码
sudo make install #将编译好的程序安装到系统路径(通常是 /usr/local/bin 和 /usr/local/lib)
gs --version #验证安装
10.05.1

贴一张安装成功的图片:
在这里插入图片描述

http://www.dtcms.com/a/232364.html

相关文章:

  • 基于cornerstone3D的dicom影像浏览器 第二十八章 LabelTool文字标记,L标记,R标记及标记样式设置
  • ArcGIS Pro 3.4 二次开发 - 公共设施网络
  • 3ds Max 渲染技术突破:一键解锁照片级真实感!
  • GC1809:高性能音频接收与转换芯片
  • 自动化办公集成工具:一站式解决文档处理难题
  • Django之表格上传
  • 浅谈 Linux 防火墙:从原理到实践
  • Neovim - 常用插件,提升体验(三)
  • 【虚拟机版本号】如果忘记了版本号,这样查找版本号
  • 【Linux】网络--数据链路层--以太网
  • 空间利用率提升90%!小程序侧边导航设计与高级交互实现
  • MPNet:旋转机械轻量化故障诊断模型详解python代码复现
  • 第二十四章 流程控制_ if分支
  • React 样式方案与状态方案初探
  • LeetCode 1356.根据数字二进制下1的数目排序
  • 重磅更新! 基于Gemini 2.5 Pro打造的AI智能体PlantUML-X上线!
  • VSCode主题定制:CSS个性化你的编程世界
  • 服务器CPU被WMI Provider Host系统进程占用过高,导致系统偶尔卡顿的排查处理方案
  • PostgreSQL 的扩展pg_prewarm
  • 高防服务器能够抵御哪些网络攻击呢?
  • 【Python 算法零基础 4.排序 ⑨ 堆排序】
  • 代码随想录算法训练营第九天| 151.翻转字符串里的单词、55.右旋转字符串 、字符串总结
  • 深度学习学习率优化方法——pytorch中各类warm up策略
  • 【Nginx】使用 Nginx+Lua 实现基于 IP 的访问频率限制
  • 服务器中CC攻击的特点有哪些?
  • 【Go语言基础【5】】运算符基础
  • 1、Go语言基础中的基础
  • llm-d:面向Kubernetes的高性能分布式LLM推理框架
  • 阿里云 Linux 搭建邮件系统全流程及常见问题解决
  • ES集群磁盘空间超水位线不可写的应急处理