Ubuntu 22.04安装texlive-full后更新需启用Ubuntu Pro的esm-apps,如何避免付费获取安全更新?
问题背景
我在Ubuntu 22.04上安装了texlive-full,它自动附带安装了imagemagick及相关依赖包。但检查系统更新时,收到了这样的提示:
The following security updates require Ubuntu Pro with 'esm-apps' enabled:
imagemagick libopenexr25 libmagick++-6.q16-8 libmagickcore-6.q16-6-extra
libmagickwand-6.q16-6 imagemagick-6.q16 libmagickcore-6.q16-6
imagemagick-6-common
这看起来像是如果要继续用texlive-full并保持这些包的安全更新,就得每年付费500美元启用Ubuntu Pro的esm-apps服务,想找个不用付费的解决办法。
附上我的包状态信息:apt policy texlive-full输出:
texlive-full: Installé : 2021.20220204-1 Candidat : 2021.20220204-1 Table de version : *** 2021.20220204-1 500 500 http://fr.archive.ubuntu.com/ubuntu jammy/universe amd64 Packages 500 http://fr.archive.ubuntu.com/ubuntu jammy/universe i386 Packages 100 /var/lib/dpkg/status
apt policy imagemagick输出:
imagemagick: Installé : 8:6.9.11.60+dfsg-1.3ubuntu0.22.04.1+esm1 Candidat : 8:6.9.11.60+dfsg-1.3ubuntu0.22.04.1+esm1 Table de version : *** 8:6.9.11.60+dfsg-1.3ubuntu0.22.04.1+esm1 500 500 https://esm.ubuntu.com/apps/ubuntu jammy-apps-security/main amd64 Packages 100 /var/lib/dpkg/status 8:6.9.11.60+dfsg-1.3build2 500 500 http://fr.archive.ubuntu.com/ubuntu jammy/universe amd64 Packages
可行解决方案
针对这个问题,有几个实用的方案能帮你避开付费服务,同时保持系统和TeX环境的安全性:
方案一:改用精简版TeX Live套餐,砍掉不必要的依赖
texlive-full会安装大量你可能根本用不上的包和依赖(包括imagemagick),其实完全可以按需选择轻量化组件:
- 基础需求装
texlive-base,包含核心的TeX/LaTeX工具; - 主打LaTeX的话,装
texlive-latex-base+texlive-fonts-recommended的组合,足够应付大部分日常文档; - 用
apt search texlive-命令能列出所有细分的TeX Live包,挑自己需要的组合安装就行。
这种方式不会安装imagemagick这类非必需依赖,自然就不会触发esm-apps的更新提示。
方案二:替换imagemagick为开源替代,或手动维护更新
如果你确实需要图片处理工具,可以试试这两种思路:
- 安装GraphicsMagick:这是imagemagick的开源替代,在Ubuntu 22.04的universe仓库里有正常的安全更新支持,不需要esm。安装命令:
sudo apt install graphicsmagick。如果有工具依赖imagemagick的命令(比如convert),可以创建软链接兼容:sudo ln -s /usr/bin/gm /usr/local/bin/convert(按需调整命令)。 - 手动编译安装imagemagick:从imagemagick官方源码下载最新稳定版,自己编译安装。这样能直接获取官方的安全更新,不受Ubuntu仓库限制。不过这种方法需要自己维护后续更新,适合有一定Linux使用经验的用户。
方案三:使用TeX Live官方独立安装包
完全绕过Ubuntu的包管理系统,直接装官方完整版TeX环境:
- 去TeX Live官方网站下载
install-tl安装脚本; - 运行脚本:
sudo ./install-tl,跟着向导选择安装选项(可以选完整版,也能自定义组件); - 安装完成后,把TeX Live的bin目录添加到系统PATH里(脚本通常会自动处理,也可以手动把
export PATH=/usr/local/texlive/YYYY/bin/x86_64-linux:$PATH添加到~/.bashrc,YYYY是安装的年份)。
这种方式安装的TeX Live完全独立于系统包管理,自带所有必要依赖,不会用到Ubuntu仓库里的imagemagick,也就不受esm-apps的更新限制,而且版本通常比Ubuntu仓库里的更新。
备注:内容来源于stack exchange,提问作者Philippe Gaucher

