为何不推荐使用 YUM 直接安装
对于许多 Linux 用户而言,第一反应可能是通过 yum
或 dnf
来安装软件,对于 TeX Live,这通常不是最佳选择,CentOS 7 的官方软件仓库以及 EPEL (Extra Packages for Enterprise Linux) 仓库中提供的 TeX Live 版本往往非常陈旧,CentOS 7 默认源中的版本可能还是几年前的发行版。
使用旧版本会带来几个显著问题:
- 宏包兼容性:许多现代 LaTeX 宏包(如用于绘制图表的
tikz
库的新版本或用于参考文献管理的biblatex
的新特性)需要一个较新的 TeX Live 发行版才能正常工作,旧版本会导致编译错误或功能缺失。 - 功能缺失:新版本的 TeX Live 引入了新的引擎、编译器选项和性能优化,这些在旧版本中是无法获得的。
- 维护困难:通过系统包管理器安装的 TeX Live,其宏包更新依赖于仓库维护者,更新频率低,无法及时获取最新的安全补丁和功能增强。
为了获得最新、最完整且易于管理的 TeX 环境,强烈推荐从 TeX 用户组(TUG)提供的官方网络安装程序进行安装。
通过官方网络安装程序部署 TeX Live
这种方法将 TeX Live 安装在独立的目录(如 /usr/local/texlive
)中,与系统自身的软件包管理完全解耦,便于独立升级和管理。
第一步:准备工作与卸载旧版本
在开始之前,首先检查并卸载可能已通过 yum
安装的旧版 TeX Live,以避免潜在的冲突。
# 检查是否已安装旧版本 yum list installed | grep texlive # 如果存在,请卸载它们(此命令会移除所有相关包) sudo yum remove texlive-*
确保系统已安装必要的工具,如 wget
(用于下载)和 perl
(安装脚本依赖)。
sudo yum install -y wget perl
第二步:下载安装脚本
TeX Live 提供了一个名为 install-tl
的网络安装脚本,我们从一个可靠的 CTAN(综合 TeX 网络档案)镜像下载它。
# 创建一个临时工作目录 mkdir ~/texlive_installer && cd ~/texlive_installer # 下载安装脚本压缩包 wget http://mirror.ctan.org/systems/texlive/tlnet/install-tl-unx.tar.gz # 解压 tar -xzf install-tl-unx.tar.gz
解压后,会生成一个包含日期的目录,进入该目录即可看到 install-tl
脚本。
第三步:执行安装
安装可以通过交互式命令行界面进行,也可以通过命令行参数一次性完成自动化安装。
交互式安装(适合需要自定义选择的用户)
sudo ./install-tl
执行后,会进入一个文本界面,您可以输入命令来修改选项:
D
:修改安装目录(默认为/usr/local/texlive/2025
,年份会自动变化)。C
:选择安装方案,对于大多数用户,选择scheme-full
(完整安装)是最省心的选择,它包含了几乎所有可用的宏包,避免了日后“找不到宏包”的烦恼。I
:开始安装。
自动化安装(推荐用于服务器或无人值守场景)
对于服务器环境,自动化安装更为高效,要安装完整方案并指定安装目录,可以使用以下命令:
sudo ./install-tl --scheme=full --location=http://mirror.ctan.org/systems/texlive/tlnet
安装过程会持续一段时间,因为它需要从网络下载数 GB 的数据,请耐心等待直至出现“Welcome to TeX Live!”的提示信息,表示安装已成功完成。
第四步:配置环境变量
安装程序不会自动修改系统的 PATH
环境变量,为了让系统能找到 pdflatex
、xelatex
等可执行文件,需要手动配置。
假设 TeX Live 安装在 /usr/local/texlive/2025
,其二进制文件位于 bin/x86_64-linux
目录下。
为当前用户配置(临时或永久)
- 临时生效(仅在当前终端会话中):
export PATH=/usr/local/texlive/2025/bin/x86_64-linux:$PATH
- 永久生效(将上述命令添加到用户的 shell 配置文件中,如
~/.bashrc
):echo 'export PATH=/usr/local/texlive/2025/bin/x86_64-linux:$PATH' >> ~/.bashrc source ~/.bashrc
为所有系统用户配置(推荐)
更规范的做法是为所有用户创建一个系统级的配置文件。
# 注意:请将 2025 替换为您实际安装的年份 sudo sh -c 'echo "export PATH=/usr/local/texlive/2025/bin/x86_64-linux:$PATH" > /etc/profile.d/texlive.sh'
之后,所有新登录的用户都会自动加载此路径,已登录的用户可以执行 source /etc/profile.d/texlive.sh
或重新登录来使配置生效。
验证安装与管理宏包
配置完成后,打开一个新的终端,验证 TeX Live 是否安装成功。
# 检查 tlmgr(TeX Live Manager)版本 tlmgr --version
如果命令能正确输出版本信息,说明环境配置成功。
tlmgr
是管理 TeX Live 的强大工具,用于更新、安装和卸载宏包,以下是一些常用命令:
命令 | 功能描述 |
---|---|
sudo tlmgr update --self --all | 更新 TeX Live 自身以及所有已安装的宏包到最新版本。 |
tlmgr install <package-name> | 安装指定的宏包(tlmgr install ctex )。 |
tlmgr remove <package-name> | 卸载指定的宏包。 |
tlmgr info <package-name> | 查看指定宏包的详细信息。 |
tlmgr search --global <keyword> | 搜索与关键词相关的宏包。 |
一个简单的编译示例
创建一个名为 hello.tex
的文件,内容如下:
documentclass{article} usepackage{ctex} % 支持中文我的第一个 LaTeX 文档} author{TeX Live 用户} date{today} begin{document}section{引言} 这是一个在 CentOS 7 上使用 TeX Live 编译的简单示例,中文支持正常工作。 section{数学公式} LaTeX 擅长排版数学公式, begin{equation} E = mc^2 end{equation} end{document}
在终端中使用 xelatex
命令编译它(xelatex
对中文和系统字体支持更好):
xelatex hello.tex
如果一切顺利,当前目录下会生成一个 hello.pdf
文件,使用 evince
或其他 PDF 查看器打开它,即可看到排版精美的文档。
相关问答 (FAQs)
Q1: 我已经按照上述方法安装了 TeX Live 2025,明年 TeX Live 2025 发布时,我该如何升级?
A1: tlmgr update --all
命令主要用于更新当前主版本(如 2025)内的修复和小版本更新,要升级到一个全新的年度版本(如从 2025 升级到 2025),最佳实践是重新执行一遍完整的安装流程,具体步骤是:1) 下载新版的 install-tl-unx.tar.gz
;2) 运行安装脚本,它会默认安装到新的年份目录(如 /usr/local/texlive/2025
);3) 更新环境变量 PATH
,将路径指向新版本的 bin
目录,这种方法可以确保新旧版本并存,互不干扰,待确认新版完全可用后,再手动删除旧版本目录即可。
Q2: 我在终端中运行 pdflatex
命令时,系统提示 bash: pdflatex: command not found
,但我确信已经安装了 TeX Live,这是什么原因?
A2: 这个问题几乎总是由环境变量 PATH
配置错误引起的,请按以下步骤排查:1) 确认您是否已经将 TeX Live 的 bin
目录(/usr/local/texlive/2025/bin/x86_64-linux
)添加到了 PATH
中,您可以使用 echo $PATH
命令查看当前的 PATH
设置,2) 如果已经添加,请检查路径是否正确无误,特别是其中的年份和架构部分,3) 如果您修改了 ~/.bashrc
或 /etc/profile.d/texlive.sh
文件,请确保已经执行了 source ~/.bashrc
或 source /etc/profile.d/texlive.sh
,或者干脆注销后重新登录,让新的环境变量生效,在大多数情况下,重新打开一个新的终端窗口即可解决问题。
【版权声明】:本站所有内容均来自网络,若无意侵犯到您的权利,请及时与我们联系将尽快删除相关内容!
发表回复