You've successfully subscribed to 完美的胖达
Great! Next, complete checkout for full access to 完美的胖达
Welcome back! You've successfully signed in.
Success! Your account is fully activated, you now have access to all content.
Ghost博客瘦身加自动化

Ghost博客瘦身加自动化

. 6 min read

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

且慢,你高兴的太早了。

爆炸的备份文件

如果你像我一样影视双栖图文并茂,很快你就会发现备份的文件越来越大了:
----_20181107172607
我擦,怎么回事,备份文件怎么一天比一天大,这都快四百多兆了,我日。

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

历史版本

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

移走

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

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

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

LOG

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

神经病的大小

----_20181107173852
我擦,这又是什么鬼,居然有一个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/。我们再仔细看看图片文件夹的内容:
----_20181107174751
文件名字倒是挺规律的,一个图片文件后跟另一个带_o的图片文件。

二次压缩

原因就在于Ghost自带图片压缩功能,上传的图片都会经过二次压缩,像素超高的图片在二次压缩前还会先进行裁剪
我们来查看具体文件大小:
----_20181107175103
由于我经常将导出的单反图片文件以及其他大象素图片上传,可以看到经过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文件进行备份,以防万一备份完毕后再删除,万一你命令输错了比如把根目录删了啥的至少还有个备份留念,哈哈哈。

成果

----_20181107185557
看看执行结果,我连续运行了两次脚本,这样前一个脚本的清理工作效果就很明显了,备份文件大小从382M减小到66M,瘦身效果高达600%,嗯,可把我牛逼坏了哈哈哈。
注:如果你也连续运行两次备份瘦身脚本,后一次结束时会报错:
----_20181107190741
别慌,只是第一次运行清除了瘦身目标第二次找不到需要瘦身的文件而已。

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


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