由于前两天弄了个对抗GFW的服务器。不想闲着,想试试做一个纯静态的网站。早就听说Jekyll非常好用,而且纯静态。但是在安装页看到需要Ruby和RubyGems的支持。由于CentOS上默认源的版本我实在不想吐槽,yum install安装的ruby版本实在低,低到不支持Jekyll…于是没办法,依然是编译安装新版本。自己动手,丰衣足食真是在CentOS6上完美得到体现!

这一步我未执行,因为我不想升级我的CentOS内核,详情是因为我安装的锐速破解版对内核有要求。正常步骤,是推荐先update以下的。

另外,题外话,如果也像我一样不想升级内核,可以:

这个只升级包文件,不动内核。

编译工具,正常来说应该系统里都是有的,以防万一:

到此为止,系统升级部分完成。然后下载新版Ruby,我用的目前最新的Ruby-2.4.1作为安装源。

遇到一个Error,忘记截图了,但是大概是:

Generating RDoc documentation

Directory .ext/rdoc already exists, but it looks like it isn’t an RDoc directory.

Because RDoc doesn’t want to risk destroying any of your existing files,
you’ll need to specify a different output directory name (using the –op
option)

/usr/…/lib/rdoc/rdoc.rb:108:in error’
/usr/…/lib/rdoc/rdoc.rb:208:in rescue in setup_output_dir’
/usr/…/lib/rdoc/rdoc.rb:195:in setup_output_dir’
/usr/…/lib/rdoc/rdoc.rb:475:in document’
./bin/rdoc:20:in `’

make: *** [rdoc] Error 1

然后Google了一下解决方案,发现了一个4年前很意外的一个Bug Report里的结局办法:

在./configure的时候多加一个flag,–disable-install-rdoc,于是:

将ruby命令集加入系统环境变量:

然后分别检查Ruby和Gem版本

至此,Ruby安装结束。开始安装NodeJS-8.1.4.

按照提示再执行:

但是,遇到另一个Error:

error: Couldn’t fork %pre(nodejs-2:8.1.4-1nodesource.el6.x86_64): Cannot allocate memory
Error in PREIN scriptlet in rpm package 2:nodejs-8.1.4-1nodesource.el6.x86_64
error: install: %pre scriptlet failed (2), skipping nodejs-2:8.1.4-1nodesource.el6
Verifying : 2:nodejs-8.1.4-1nodesource.el6.x86_64 1/1

Failed:
nodejs.x86_64 2:8.1.4-1nodesource.el6

又Google到了解决办法,Oh yeah!~

As manuall rpm installation fails after “groupadd cgred” step, run this command manually and then install latest version of libcgroup package.

然后检查一下NodeJS版本:

至此大功告成,安装Jekyll的环境准备齐全。