Ubuntu 26.04:导出 Word、Excel、可搜索 PDF
当前版本在 Ubuntu 26.04 上可以运行,但 导出 Word、Excel、可搜索 PDF存在运行时兼容性问题,需要额外启动设置。Ubuntu 22.04 / 24.04 不需要这项设置。
先了解影响
glibc.rtld.execstack=2 会在进程启动时强制启用可执行栈,以兼容需要这种行为的动态模块。这会降低相应进程的栈执行保护,不是没有安全影响的普通性能选项。
只在启动 CZUR Image+ 时设置该变量;环境可能由子进程继承。不要写入 /etc/environment、shell 全局配置或其他影响所有应用的环境配置。企业受管电脑应先遵循组织安全要求。
方法一:先从终端验证
先退出正在运行的 CZUR Image+,包括可能驻留后台的实例,再使用普通用户终端启动:
env GLIBC_TUNABLES=glibc.rtld.execstack=2 /opt/apps/com.czur.imageplus/CZURImagePlus关闭窗口不一定等于完全退出;应使用应用提供的退出方式。若仍有旧实例,新命令可能只是唤起旧进程,而不会让旧进程获得新的环境变量。
该命令适用于默认安装路径。若你已有其他 GLIBC_TUNABLES 设置,请保留它们,用冒号连接所需键值,不要直接覆盖。
方法二:为应用菜单创建用户级启动器
终端验证成功后,可以调整用户级 .desktop 副本,避免直接修改系统安装文件。
默认系统启动器为
/usr/share/applications/com.czur.imageplus.desktop。如安装包中的名称不同,请以实际文件为准。创建用户级目录,并在目标文件不存在时复制启动器:
bashmkdir -p "${XDG_DATA_HOME:-$HOME/.local/share}/applications" cp -n /usr/share/applications/com.czur.imageplus.desktop \ "${XDG_DATA_HOME:-$HOME/.local/share}/applications/com.czur.imageplus.desktop"如果该用户级副本已存在,不要覆盖。先保存原文件的备份,再用文本编辑器打开用户级副本。
找到
Exec=行。若已经使用env,在其后加入GLIBC_TUNABLES=glibc.rtld.execstack=2;否则在原命令前加入env GLIBC_TUNABLES=glibc.rtld.execstack=2。保留原有环境变量、路径、启动选项和
%F/%U参数。下面只是最小示例,不应直接替换包含其他必要设置的整行:desktopExec=env GLIBC_TUNABLES=glibc.rtld.execstack=2 /opt/apps/com.czur.imageplus/CZURImagePlus若原启动器使用
%U,仍应保留:desktopExec=env GLIBC_TUNABLES=glibc.rtld.execstack=2 /opt/apps/com.czur.imageplus/CZURImagePlus %U保存文件后重启系统,再从 Applications(应用程序) 菜单启动 CZUR Image+。旧的桌面副本或固定图标可能仍指向原文件,应确认实际使用的是新的用户级启动器。
方法三:修改系统级 Desktop 启动器
也可以直接修改安装包提供的 .desktop 文件。此方式需要管理员权限,会影响使用该系统启动器的所有用户;软件更新可能覆盖修改。方法二与方法三选择一种即可。
先备份原文件:
bashsudo cp -n /usr/share/applications/com.czur.imageplus.desktop /usr/share/applications/com.czur.imageplus.desktop.bak如果
.bak已存在,不要覆盖;使用其他备份文件名保存本次修改前的内容。打开系统启动器:
bashsudo vim /usr/share/applications/com.czur.imageplus.desktop修改
Exec=行。默认安装路径下的示例:desktopExec=env GLIBC_TUNABLES=glibc.rtld.execstack=2 CZ_SCAN_RES_DIR=/opt/apps/com.czur.imageplus LD_LIBRARY_PATH=/opt/apps/com.czur.imageplus /opt/apps/com.czur.imageplus/CZURImagePlus主要是在原启动命令前添加
env GLIBC_TUNABLES=glibc.rtld.execstack=2。 如果原行已经使用env,只在其后添加GLIBC_TUNABLES=glibc.rtld.execstack=2,不要重复添加env。保留原有的CZ_SCAN_RES_DIR、LD_LIBRARY_PATH、其他环境设置、启动选项及%F/%U参数;如果已有其他GLIBC_TUNABLES设置,用冒号合并,不要覆盖。保存文件后重启系统,再从 Applications(应用程序) 菜单启动 CZUR Image+。这里只用
sudo编辑文件,不要用sudo运行应用。
如果存在同名用户级启动器,它会优先于系统级文件生效。请修改实际使用的启动器;桌面副本和固定图标也可能仍使用旧配置。
验证设置是否生效
- 导入一张含清晰文字的测试图片。
- 导出 Word(DOCX),使用支持该格式的编辑器打开,检查内容。
- 导出 Excel,使用支持该格式的编辑器打开,检查内容。
- 导出可搜索 PDF,打开后搜索一个已知词语,并检查文字能否选取或复制。
- 如需从文件管理器打开文档,再验证该入口,以确认文件关联参数未丢失。
如果依然失败,不要继续放宽系统安全设置。保留系统版本、Image+ 版本、导出格式及错误信息,参考 反馈说明。
撤销设置
从实际修改的 Exec= 中删除这次加入的键值,保留其他环境设置,或恢复修改前的备份。方法三需使用管理员权限编辑系统启动器或恢复其备份。如果此次新建了用户级副本,删除该副本可恢复使用系统启动器;若系统启动器也已修改,仍需单独撤销。不要删除系统安装文件。撤销后同样需要完全退出并重新启动应用。
软件更新后重新检查是否还需要 workaround。此说明不代表后续版本永久需要可执行栈。
机制参考:GNU C Library 动态链接 Tunables;启动器语法参考:Desktop Entry Specification。
资料更新:2026 年 10 月 19 日。适用于当前 Linux Debian 安装包;具体版本和架构以发布包标注为准。