SysVinit vs Systemd

sysvinit 管理服务使用的是service命令,执行的是 /etc/init.d/{$script} 的逻辑;而systemd 使用的是systemctl来管理服务的。

我们如果在systemd系统上使用service命令(甚至直接执行 /etc/init.d/ 下的脚本)时,会提示自动重定向到systemctl来处理,其逻辑为:

service 为 initscripts 包中的命令,该包还包含了 /etc/rc.d/init.d/functions  ,该functions提供了一些基础的函数,经常会被init.d 下的脚本包含; 在centos7上,initscripts 被做了手脚,service命令和functions里面都拦截命令的执行而重定向到systemctl,不过也可以通过环境变量SYSTEMCTL_SKIP_REDIRECT 来禁止重定向,脚本逻辑并不复杂;有时候,我们习惯使用 service 命令,还有时候,我们在docker容器里面使用systemctl总是没有权限,于是,借助环境变量SYSTEMCTL_SKIP_REDIRECT,依然执行 /etc/init.d 下的脚本而不去执行systemctl还是不错的

wordpress架构升级

PHP7发布已经有一年了,但是我的博客依然还跑在apache + php-5.3上呢,当时我的yum源里面之后这个,图省事儿,就这么用了; 后视图将架构改为 nginx+php-fpm(php7),查看wordpress(下文称wp)源码,发现wp只支持mysql,不支持pdo_mysql,但是mysql模块已经被废弃了,就放弃了。

php7的是拿wp做过性能测试的,所以,wp肯定支持php7,所以肯定有解决办法

wordpress 升级指南

曾经我的博客在墙外的时候,升级博客非常简单,就是点击升级就行;后来,把博客迁到了墙内,然后看到博客升级提示,点击升级总是失败,未知所以然。

后怀疑下载不到升级包所致,参考官方文档,下载安装包,手动升级,虽然也搞定了,但是颇为麻烦,后每每看到升级提示,就懒得升级。

今,终于忍无可忍,思得一计:如果给wordpress配个代理,或许升级就方便多了;

对我来讲,研究代理久已,做个代理还是分分钟的事儿的,于是乎,说干就干,通过 shadowsocks + privoxy  做了一个代理,然后通过环境变量 HTTP_PROXY 和 HTTPS_PROXY 告知wordpress走代理,然后就可以一键升级了,欧耶