如何镜像 TeX Live?

如何镜像 TeX Live?

我有一个本地网络,其中有许多使用 (La)TeX 的客户端。在我的服务器中镜像 TeX Live 发行版将节省时间和带宽。我们是 Windows 用户,不熟悉 RSYNC。我读过 TeX Live 网站,但我仍然不清楚如何使用 RSYNC。

你能一步一步告诉我如何为 TeX Live 制作镜像吗?


我想制作一个本地镜像,以便任何本地客户端都可以从中下载或更新。本地镜像的工作方式与其他 CTAN 镜像相同,但与 CTAN 镜像的同步不是自动完成的,而是我手动执行的。

答案1

rsync是一款用于同步远程目录的高级工具。您可以在 Linux 和 Windows 上使用它(可能也可以在 Mac 和其他操作系统上使用),但它是一款命令行工具。

这里有一些关于如何 rsync TeXLive 存储库的说明和提示,以便您可以设置自己的 HTTP 或 FTP 服务器作为本地 TeXLive 的存储库。

关于如何 rsync TeXLive 的一般描述可以在这里找到http://www.tug.org/texlive/acquire-mirror.html,但我很可能已经读过该页面了。

对于 Windows,例如同步它基于 cygwin(Windows 的 Unix 模拟器)。

另一个关于安装和设置的 Windows HowTorsync可以在以下网址找到:http://optics.ph.unimelb.edu.au/help/rsync/rsync_pc1.html。如果您想自动更新 TeXLive 存储库的副本,这很有用。

要同步它,只需使用以下命令行,其中%CTANMIRROR%rsync CTAN 镜像

rsync -a --delete rsync://%CTANMIRROR%/systems/texlive/tlnet/ "/cygdrive/<driveletter>/dir/subdir" 

例如,要从 DANTE 的 rsync 服务器同步,请C:\texlive\使用:

rsync -a --delete rsync://rsync.dante.ctan.org/CTAN/systems/texlive/tlnet/ "/cygdrive/c/texlive/"

这里-a代表存档模式(您可能会收到一些警告,提示无法设置 Unix/Linux 权限;这是正常的,并不是真正的问题),并且--delete将删除远程源文件夹中不存在的所有无关文件(在本地目标中)。

答案2

在回答你的问题之前,让我再给你一个建议:将 TeX Live 安装放到网络上,并让你的客户可以使用它。有方便的脚本w32客户端以帮助后者。

要镜像软件包存储库,请参阅这一页. rsync是推荐的,但wget也可以使用(我wget以前使用过一个自定义脚本,如果你有兴趣,我可以尝试挖掘出来)。还有一个实验性的脚本download-package-repository脚本TeX Live svn 存储库。它与标准安装程序一起工作。将它与安装程序子目录下的install-tl.zip包装脚本一起放置并运行。.battlpkg/installer

编辑:以下是wget完整性的咒语(用于在当前目录中下载/更新):

wget -m -nH -np --cut-dirs=3 --retr-symlinks -X "/systems/texlive/tlnet/archive" -R "update-tlmgr-r*,index.html*" http://ctan.sqsol.co.uk/systems/texlive/tlnet/
wget -m -nH -np --cut-dirs=3 -R "index.html*" http://ctan.sqsol.co.uk/systems/texlive/tlnet/archive/

相关内容