前言
和他人拼好服务后遇到了一个难事:目前我的FVTT资产数据已经达到了70GiB的大小,但是服务器的云盘大小只有100GiB,显然不可能创建两个实例运行FVTT。在整理后我们的使用需求与特点如下:
- 需要同时段访问两个FVTT,但不是两个世界包
- 都是需要DnD5e及附属模块
- 资产都一样
因此在确定以上特点后,我便想到了一个方案用于解决该问题。
CAUTION以下未经过广泛的生产环境验证,仅供参考,无法保证在应用过程中不会出现如数据损坏等严重问题!
准备工具
此方案应该具有的前置知识:
- 软链接
此方案需要的软件工具:
- FVTT实例若干(端口不同)
- NodeJS(FVTT运行时部分)
FVTT共享部分
首先我们需要确定FVTT除了本体以外的数据文件夹结构:
data├── Backups //备份文件├── Config //配置文件,Licenses便存在这里├── Data //数据文件,存放世界包、系统等资产文件└── Logs //日志文件
从文件的作用可以看出来,Data
文件便是我们的资产所在文件夹,因此我们需要做到的便是在不同的实例中共享此文件夹。
那么如何建立连接呢?答案便是软链接:
符号链接基本上是高级快捷方式。创建指向单个文件或文件夹的符号链接,该链接在 Windows 中看起来与该文件或文件夹相同 — 即使它只是指向该文件或文件夹的链接。
例如,假设您有一个程序需要其文件位于 C:\Program。您确实希望将此目录存储在 D:\Stuff 中,但程序要求其文件位于 C:\Program 中。您可以将原始目录从 C:\Program 移动到 D:\Stuff,然后在 C:\Program 处创建指向 D:\Stuff 的符号链接。当您重新启动该程序时,它将尝试访问其位于 C:\Program 的目录。 Windows 会自动将其重定向到 D:\Stuff,一切都会像在 C:\Program 中一样工作。
这个技巧可以用于各种各样的事情,包括将任何文件夹与 Dropbox、Google Drive 和 OneDrive 等程序同步。
符号链接有两种类型:硬链接和软链接。软符号链接的工作方式与标准快捷方式类似。当您打开文件夹的软链接时,您将被重定向到存储文件的文件夹。然而,硬链接使得文件或文件夹看起来好像实际上存在于符号链接的位置,并且您的应用程序不会有任何更好的了解。这使得硬符号链接在大多数情况下更有用。
请注意,Windows 实际上并不使用术语“硬链接”和“软链接”。相反,它使用术语“硬链接”和“符号链接”。在 Windows 文档中,“符号链接”与“软链接”相同。但是,
mklink
命令可以创建硬链接(在 Windows 中称为“硬链接”)和软链接(在 Windows 中称为“符号链接”)。
在Windows中建立软链接的命令如下:
mklink /D Link Target
这里相对于建立了一个箭头,把Link文件指向Target文件。
使用命令提示行:
mklink /D C:/FVTT/data-1/Data C:/Share/Datamklink /D C:/FVTT/data-2/Data C:/Share/Data
打开不同的实例:


成功。
CAUTION注意,请不要同时运行相同的世界包,会触发资源抢夺的问题导致在运行过程中出现意外的运行结果,同时如果可以也请尽量避免修改资源以触发此问题。
部分信息可能已经过时