CentOS 7 sytemctl 自定义服务开机启动
CentOS 7继承了RHEL 7的新的特性,例如强大的systemctl,而systemctl的使用也使得系统服务的/etc/init.d的启动脚本的方式发生重大改变,也大幅提高了系统服务的运行效率。但服务的配置和以往也发生了极大的不同,变的简单而易用了许多(仁者见仁,米扑博客)。 systemd提供更优秀的框架以表示系统服务间的依赖关系,实现系统初始化时服务的并行启动,同时达到降低Shell的系统开销的效果。 systemd单位类型 systemctl –type=单位类型,用来过滤单位, 例如:systemctl –type=service 服务(service):管理着后台服务; 开机服务管理 CentOS 7的服务systemctl脚本存放在:/usr/lib/systemd/,有系统(system)和用户(user)之分, /usr/lib/systemd/system/ 像需要开机不登陆就能运行的程序,存在系统服务,即:/usr/lib/systemd/system/ 目录下 [Unit]主要是对这个服务的说明,内容包括Description和After,Description用于描述服务,After用于描述服务类别 [Service]是服务的关键,是服务的一些具体运行参数的设置, Type=forking是后台运行的形式, PIDFile为存放PID的文件路径, ExecStart为服务的具体运行命令, ExecReload为重启命令, ExecStop为停止命令, PrivateTmp=True表示给服务分配独立的临时空间 注意:[Service]部分的启动、重启、停止命令全部要求使用绝对路径,使用相对路径则会报错! [Install]是服务安装的相关设置,可设置为多用户的 示例: 自定义 mongodb 开机启动 vim /usr/lib/systemd/system/mongodb.service systemctl 配置命令 systemctl status mongodb.service // 查看mongodb启动状态 systemctl startmongodb.service // 启动mongodb systemctl stopmongodb.service // 关闭 mongodb systemctl enable mongodb.service // 开机启动mongodb 服务 systemctl disable mongodb.service // 开机关闭mongodb 服务 示例: systemctl status mongodb.service systemctl 虽然比较陌生,但是其实比init.d那种方式简单不少,而且使用简单,systemctl能简化的操作还有很多,现在也有不少的资料,看来RHEL/CentOS比其他的Linux发行版还是比较先进的,此次更新也终于舍弃了Linux 2.6内核,无论是速度还是稳定性都提升不少。 (编辑:台州站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |