故障排除
如果您正在使用早期版本,请使用 sharelatex 而不是 overleaf 在路径名中。
在 NFS 文件系统上运行 Overleaf
在 Overleaf 容器中挂载 NFS 文件系统在技术上是可行的,但不推荐这样做,并且可能导致不同类型的性能错误。
一种常见的编译时错误是:
EBUSY: 资源繁忙或被锁定,unlink '/var/lib/overleaf/data/compiles/62f3d57bef7cf9005c364e75-62f3d57bef7cf9005c364e7a/.nfs573663533034825247625441'我们特别建议不要对临时数据使用基于 NFS 的文件系统,例如用于编译数据的目录。我们建议为以下目录使用本地临时磁盘,最好是本地 SSD。
对于 docker-compose 为基础的部署,我们建议只覆盖来自 NFS 的绑定挂载,这样可以避免更改应用中的路径。下面是一个示例, docker-compose 配置片段,使用挂载在 /scratch:
services:
sharelatex:
环境:
SANDBOXED_COMPILES_HOST_DIR: /scratch/compiles/
卷:
- nfs:/var/lib/overleaf/data
- /scratch/cache/:/var/lib/overleaf/data/cache
- /scratch/compiles/:/var/lib/overleaf/data/compiles
- /scratch/output/:/var/lib/overleaf/data/output
- /scratch/tmp/:/var/lib/overleaf/tmp更新后无需将任何现有文件从 NFS 迁移到新位置。LaTeX 编译器可以通过完全重新编译来重新生成所有文件。
更多细节见: https://docs.overleaf.com/on-premises/support/troubleshooting#running-overleaf-with-an-nfs-filesystem
在 Windows 或 macOS 上运行 Overleaf 会导致 `mongo` 服务无法启动
如果您在 Windows 或 macOS 上运行 Overleaf, mongo 服务可能无法重新启动,出现以下错误:
无法在任何兼容版本下启动 WiredTiger。
原因:1:不允许的操作为避免此错误,数据需要存储在卷中而不是绑定挂载目录中(更多细节见 mongo 镜像文档:https://github.com/docker-library/docs/blob/master/mongo/content.md#where-to-store-data)。要将数据存储在挂载到 MongoDB 和 Redis 容器内部的 Docker 卷中,请将以下内容添加到 config/docker-compose.override.yml (如果该文件尚不存在,请创建此文件):
卷:
mongo-data:
redis-data:
services:
mongo:
卷:
- mongo-data:/data/db
redis:
卷:
- redis-data:/data更多信息见: https://docs.overleaf.com/on-premises/support/troubleshooting#running-overleaf-on-windows-or-macos-results-in-the-mongoservice-not-starting
升级到 Redis 6.2 导致重启循环
使用 docker logs redis 命令输出日志副本。
如果您看到这一行 Fatal: Can't initialize Background Jobs,完整输出将类似于:
1:M 11 Feb 2024 15:19:22.609 # Server initialized
1:M 11 Feb 2024 15:19:22.609 # Fatal: Can't initialize Background Jobs.
1:C 11 Feb 2024 15:19:26.055 # oO0OoO0OoO0Oo Redis is starting oO0OoO0OoO0Oo这可能与当前使用的 Docker 版本有关。将 Docker 更新到 >= 20.10.10 应该能解决此问题。
更多信息见 Redis 上游问题: https://github.com/redis/redis/issues/12362
参考: https://docs.overleaf.com/on-premises/support/troubleshooting#upgrading-to-redis-6.2-results-in-a-restart-loop
模板库预览/缩略图图像方向不正确
有时,Server Pro 生成的预览/缩略图图像可能会以错误的方向创建,需要手动进行校正。这些图像存储在 /var/lib/overleaf/data/template_files/ (>= 5.0.3) 和 /var/lib/sharelatex/data/template_files/ (较早版本)。
我们建议在进行任何更改之前备份此文件夹。
您需要对每个受影响的模板按照以下步骤操作:
查找模板 ID:导航到您实例的模板库(/templates/all),打开受影响的模板,并从 URL 复制 ID(例如:https://your-instance-url/templates/6645d346c224815e9460a695)。运行修正命令:在 Docker 主机上运行以下命令(将模板 ID 替换为您复制的 ID,并在适当时更新路径):docker exec sharelatex /bin/bash -c "mogrify -rotate 90 /var/lib/overleaf/data/template_files/6645d346c224815e9460a695_*{thumbnail,preview}"
参考: https://docs.overleaf.com/on-premises/support/troubleshooting#incorrect-orientation-of-template-gallery-preview-thumbnail-images
请确认您已启用系统调用。对于 pdflatex,这是 'pdflatex -shell-escape'。
该 \write18 命令默认在 Community Edition 中被禁用,因为所有编译都在相同的 sharelatex 容器中进行;这是更安全的默认设置。
如果您希望为 pdflatex 启用它,请创建一个 latexmkrc 文件放在项目根目录,内容如下:
$pdflatex = 'pdflatex --shell-escape';然后尝试重新编译。
参考: https://docs.overleaf.com/on-premises/support/troubleshooting#please-verify-that-you-have-enabled-system-calls.-for-pdflatex-this-is-pdflatex-shell-escape
最后更新于