我为什么想用 supervisor 来管理服务呢?因为我在系统管理上属于处女座+任性的气质。
OSX 下办公用的是普通用户,我不想在 root 权限下做过多设置污染我的系统。
OSX 下的服务管理我感觉不是很便捷,毕竟 OSX 是倾向于黑盒用户体验,很多事情不透明。但是在服务管理一块我希望透明和自由一些。
所以我要说一下我怎么在尽量少污染 root 的情况下,使用普通用户配置 supervisor 并启动我的 mysql。
下列操作如没有 sudo 命令,则均在 OSX 普通用户下操作,不涉及到提权到超级用户。
另外我的用户名是 fangyunlin,所以我的 home 目录是 /Users/fangyunlin/
部署 supervisor在 Linux 下常用的服务管理框架有三种:
基于老时代的 sysV,也就是把启动配置放在 /etc/init.d 下,然后使用 chkconfig 和 service 命令进行管理服务。比如 CentOS 6 以及更低版本都是这样的。
新时代的 systemd,也就是把启动配置放在 /usr/lib/systemd/system/ 下,然后使用 systemd 进行管理。
以及新老通吃的 supervisor。
supervisor 是一套基于 python 的服务管理框架,某种意义上说他属于 sysV / systemd 的上层,他的启动也需要这两个或者其他服务管理框架来启动。这里不多说,这次主要讲 how to,不讲 why。
OSX 默认没有安装 pip。pip 是一个 python 的包管理工具,可以用于安装 python 库以及 python 程序。
sudo easy_install pip pip install supervisor