Ghost博客瘦身加自动化

博客也搭建好了,目录、备份什么的也都做好了,于是我们开开心心的专心在博客输出内容,是不是就可以高枕无忧了呢?

且慢,你高兴的太早了。

爆炸的备份文件

如果你像我一样影视双栖图文并茂,很快你就会发现备份的文件越来越大了:

我擦,怎么回事,备份文件怎么一天比一天大,这都快四百多兆了,我日。

除了增加网盘和硬盘的大小,我们有没有其他办法呢?
当然是有的啦,否则我怎么水一篇,哈哈哈。

历史版本

首先,除非你刚安装完毕,否则后期一旦你使用了命令ghost update进行Ghost版本升级,为了确保安全,Ghost是不会自动删除老版本的文件的。如图:

移走

上图中我使用了FTP软件将Ghost目录下的内容下载到电脑上进行分析,可以看到在version目录下保存了当前版本和历史版本的内容,并且Ghost核心程序的大小不容小觑。
由于我们备份只备份默认的/var/www/ghost/目录,因此我们可以通过以下命令将历史版本移出备份的目标范围,减小备份文件的大小。

sudo mv /var/www/ghost/versions/2.2.0 ~/ 

注意根据具体版本修改文件夹名字。

LOG

好了,历史版本搞定了,接下来的目标是什么呢?
必须是LOG呀!

神经病的大小


我擦,这又是什么鬼,居然有一个Log文件超过了120兆,是不是有病啊,搞这么大Log!

滚蛋

同样我们可以通过以下命令将Log文件移出备份的目标范围,减小备份文件的大小。

mkdir ~/logs
sudo mv /var/www/ghost/content/logs/* ~/logs/

图片

就这么多了么?
嘿嘿,还有一个瘦身的秘密我一般不告诉别人:图片

路径

首先,图片的存放路径是/var/www/ghost/content/images/年份/月份/这里,比如十月份的图片就是/var/www/ghost/content/images/2018/10/,十一月份的图片就存在/var/www/ghost/content/images/2018/11/。我们再仔细看看图片文件夹的内容:

文件名字倒是挺规律的,一个图片文件后跟另一个带_o的图片文件。

二次压缩

原因就在于Ghost自带图片压缩功能,上传的图片都会经过二次压缩,像素超高的图片在二次压缩前还会先进行裁剪
我们来查看具体文件大小:

由于我经常将导出的单反图片文件以及其他大象素图片上传,可以看到经过Ghost二次压缩的图片通常都能从原图十几二十兆减小到几百K的大小,效果确实不错,瘦身效果惊人。

原图

不过坑爹的是Ghost为了防止出错,将原图添加_o的后缀后同样保存在images文件夹中。
你看这才几天,11月的图片文件夹大小就超过300M了,简直无语。

瞬间清除

幸好linux有一万种办法处理此事,我们只需要输入如下命令

find /var/www/ghost/content/images/ | grep _o | xargs rm

就能从images目录中遍历所有原图并删除,是不是屌爆了?

管道命令最高,oyeah~!

自动化

瘦身虽然告一段落,但是如果经常要手动完成操作也太麻烦了。
历史版本瘦身的命令基于保险的理由我们维持手动,剩下两个瘦身动作我们完全可以让服务器自动完成

备份瘦身一体化

接下来我们打开备份操作文件:
sudo nano /root/backup.sh
在文件的最后加入命令:

find /var/www/ghost/content/images/ | grep _o | xargs rm
mv /var/www/ghost/content/logs/* home/ubuntu/logs/

以防万一

为什么要放在最后呢,这样每次备份还是会把当天的图片原图和Log文件进行备份,以防万一备份完毕后再删除,万一你命令输错了比如把根目录删了啥的至少还有个备份留念,哈哈哈。

成果


看看执行结果,我连续运行了两次脚本,这样前一个脚本的清理工作效果就很明显了,备份文件大小从382M减小到66M,瘦身效果高达600%,嗯,可把我牛逼坏了哈哈哈。
注:如果你也连续运行两次备份瘦身脚本,后一次结束时会报错:

别慌,只是第一次运行清除了瘦身目标第二次找不到需要瘦身的文件而已。

好好经营内容吧,服务器能做的都让它自动完成,我们只要负责最重要的部分就好。


一步步教你从零开始搭博客系列: