在本地部署私有云来保护和管理作画文件

前言

经常会看到有人在使用 CLIP STUDIO PAINT 等绘图软件的过程中,出现程序错误或死机,然后就打不开之前在画的文件。运气好的话,还有可能在 Documents\SAIER\CLIPStudioPaintData 中找到备份;运气不好的时候就真是欲哭无泪;至于画了半天都还没有保存过的,纯粹咎由自取……

那该如何避免这种情况呢?

程序出错和死机是无法避免的,只要用的时间够长,它总会在某一天不经意地降临。期望 CLIP STUDIO PAINT 的自动备份功能是一种很消极的态度,因为它作用机制不明,也没有任何选项,弄不清它究竟什么时候会备份。而且 SAI 和 openCanvas 之类的软件还没有这个功能呢。

多保存,多使用「另存为」是个不错的解决办法,简单有效。

不过这里我介绍一个更好的解决方案,那就是使用本地私有云。

何为私有云?

私有云就是私人的同步存储网盘,与它相对的是公有云——就是百度云盘、微云、坚果云之类的同步网盘。

那为什么不直接用公有云?用公有云来同步那些文件不大的文档还好,要是用来同步画作,那几十 MB 至几百 MB 的文件大小,上传的速度实在让人煎熬,即使家里的上传速度够牛逼,还有网盘的限速挡着呢。假如在同步的过程中绘图软件出错,那更是屁用都没有了。

私有云就是将同步网盘的功能搬到本地,以本地的局域网甚至本机的同步速度,几近快如闪电。

免费的私有云平台主要 ownCloud 和 Seafile,这俩各有优劣,咱们来比较一下。

  • ownCloud 的服务器是使用 PHP 驱动的,只要部署好 PHP 环境和数据库就能使用,所以它的服务器可以安装在任何系统上。只是有些系统只能安装旧版,比如新版的服务器端就不再支持 Windows 了。
    基于 PHP 即是它的优点,也是缺点。优点自然是要求低,跨平台,你甚至可以在某些路由器上安装;缺点是性能慢,不稳定。

  • Seafile 的服务器内核使用 C 语言编写,用 Python 做接口,所以性能比 ownCloud 强得多。如果你有大量的小文件需要同步,那用 Seafile 是最佳选择。
    只是它的服务器端只有 Linux、Windows 和树莓派,唯独不支持 Mac OS X。

客户端方面,它俩都有全平台的支持,除了 ownCloud 的 IOS 客户端是收费的之外,其余皆免费。

我最后选择使用 Seafile,它是中国人编写的软件,中文支持很完善,性能也比 ownCloud 强得多,免费版的功能完全够用了。只是它不能在 Mac OS X 上部署服务器,使用 Mac 的只能选择 ownCloud 了。

部署 Seafile 服务器

首先是要选择要部署在什么机器上,最优的选择是那些会 24 小时运行的机器,比如 NAS,其次是局域网内的其他电脑。如果只有一台电脑,那起码要将 Seafile 的数据文件和作画文件存放在不同的硬盘上;如果只有一块硬盘,那么最起码是放在不同的分区里。

我是在 Windows 上部署的,所以后文也只介绍 Windows 上的部署方法。相信能用得溜 Linux 的人,也不需要其他人教了,何况官方的文档也写得足够详细了。

下载 Seafile 的服务器和客户端 https://www.seafile.com/download/
下载安装 Python 2.7.11 32 位版本 http://python.org/ftp/python/2.7.11/python-2.7.11.msi
安装的具体步骤请看官方的文档 https://manual-cn.seafile.com/deploy_windows/deploy_with_windows.html

安装方面其实看官方文档就足够了,我再补充一点小细节吧。

安装 Python 的时候,尽量使用它的默认路径,如果非要安装别的地方,路径中也最好别有空格和汉字符。Seafile 需要将 Python 添加到系统的环境变量中,Python 的安装程序有这个选项,但默认是不启用的,要记得选上。

如果没选上,那就需要自己添加,在 Windows 中搜索并打开 控制面板 > 系统和安全 > 系统,然后如下图设置:

配置 Seafile 服务器需要填写本地的 IP 地址,所以你需要在电脑上手动设置一个固定的局域网 IP。或者你也可以在路由里设置好客户端静态分配。这都要求一些非常基础的网络知识,不会问百度就没错了。

Seafile 使用的端口尽量用默认的,别自己修改,我就见过有人手贱改了,结果连接不上。

使用 Seafile 管理文件

开启了 Seafile 服务器之后,安装客户端并连接服务器。

设置一个同步文件夹,以后就将画作保存在这个文件夹里。在新建的资料库上右键 > 设置同步间隔,默认间隔是 0,你可以改成 15~60 秒左右。因为 CLIP STUDIO PAINT 在保存的时候会生成一些临时文件,如果间隔是零的话,这些临时文件的更改也会被检测到。间隔时长建议设置成比你保存文件的速度稍长一点。

接下来实战一下,先保存一个文件。隔一段时间之后,就会提示同步成功(这个气泡提示可以在设置里关闭)。继续作业,并多次保存。

现在我们来看看这些文件的同步状况。在资料库上右键 > 到网站上查看,就会自动打开一个网页。找到刚才保存的文件,选择查看它的历史。

可以看到,我们可以将它还原到之前保存的任意一个版本,或者单独将其中一个版本下载保存。以后无论是文件损坏,或者画错了想倒回去,都不是问题!

因为 Seafile 会保留全部的历史版本,在使用一段时间之后,会占用一定的空间。这个时候我们可以选择删除一些无用的历史文件。先按下图进入回收站。

进入回收站之后,可以看到它连我们之前删除的文件也保留下来,你可以在这里把它还原。如果要清空回收站和删除一些比较老的历史版本,那就点击右上角的 清空。你可以选择删除 3 天之前、一周之前、一个月之前或全部的历史文件。

更多玩法

在同一局域网的多台电脑中使用,可以同步相同的文件,让你方便地在多个电脑创作同样的内容。也能实现工作室内的协作,支持解决文件冲突,在某种程度上,可能比 CLIP STUDIO PAINT 自带的协作功能更好用。

你还可以在路由设置好端口转发和动态域名,让外网的设备也能访问你的 Seafile 文件。

结语

本文只是很简单地介绍了一下私有云是如何保障文件的安全,更多高级的玩法就留待你们自己去发现。或许有人会问,这太复杂了,值得吗?我认为这取决于你对自己的作品有多看重。

我相信,你花费一两天或者更长时间创作的画,它的安危绝对值得你花时间去折腾。如果你是职业漫画家或插画师,更不会愿意在面临截稿日的情况下,碰到文件损坏的情况吧?

作者:Xelloss
本博客文章采用 知识共享(Creative Commons) 署名-非商业性使用-禁止演绎 4.0 进行许可。