博客
关于我
Linux 服务管理两种方式service和systemctl
阅读量:690 次
发布时间:2019-03-17

本文共 1192 字,大约阅读时间需要 3 分钟。

Linux 服务管理的两种方式:service 和 systemctl

在 Linux 系统中,服务管理主要有两种方式,分别是 service 命令和 systemctl 命令。本文将分别介绍这两种方式的特点及使用方法。

第一,service 命令

service 命令实际上用于为用户创建或管理服务。这命令会去 /etc/init.d 目录下执行相应的脚本,从而启动或停止服务。例如:

service redis start

或者可以直接调用脚本:

/etc/init.d/redis start

此外,开机自启动可以使用以下命令:

update-rc.d redis defaults

需要注意的是,service 命令不直接支持脚本文件的调用,而是使用相应的脚本来启动服务。

第二,systemctl 命令

systemctl 命令是基于 systemd 的初始化系统设计的,旨在提高系统启动速度,并减少启动进程数。systemctl 命令兼容了传统的 service 命令,但具有更强大的功能。

例如,启动 redis 服务可以使用以下命令:

systemctl redis start

停止服务则为:

systemctl redis stop

同时,systemctl 也支持开机自启动功能:

systemctl enable redis

systemctl 可以管理 systemd 的资源单位,定义的单位文件类型包括 .mount、.service、.target 和 .wants。其中,.service 文件是服务配置文件,用于定义服务的运行方式。例如,可以在文件中设置:

[Unit]Description: 服务描述After: network.targetConditionPathExists:                                    与条件相关的路径检查

[Service] 部分配置了服务运行的相关参数,例如脚本执行路径和环境变量:

[Service]EnvironmentFile:      配置文件位置ExecStart:           启动脚本Restart:             失败时重启

[Install] 部分则用于配置服务的安装选项,例如设置为用户或系统启动时运行:

[Install]Alias:             服务别名WantedBy:          允许多用户模式下运行的目标服务

此外,.target 文件用于定义一些基础组件的依赖关系,供 .service 文件调用;而 .wants 文件则定义了需要执行的文件集,用于多次运行特定的命令。

总的来说,systemctl 命令相较于 service 命令更加灵活且功能强大,是现代 Linux 系统中更推荐使用的管理方式。

转载地址:http://rlxhz.baihongyu.com/

你可能感兴趣的文章
Object of type 'ndarray' is not JSON serializable
查看>>
Object Oriented Programming in JavaScript
查看>>
Object.keys()的详解和用法
查看>>
OBJECTIVE C (XCODE) 绘图功能简介(转载)
查看>>
Objective-C——判断对象等同性
查看>>
Objective-C之成魔之路【7-类、对象和方法】
查看>>
Objective-C享元模式(Flyweight)
查看>>
Objective-C以递归的方式实现二叉搜索树算法(附完整源码)
查看>>
Objective-C内存管理教程和原理剖析(三)
查看>>
Objective-C实现 Greedy Best First Search最佳优先搜索算法(附完整源码)
查看>>
Objective-C实现 jugglerSequence杂耍者序列算法 (附完整源码)
查看>>
Objective-C实现1000 位斐波那契数算法(附完整源码)
查看>>
Objective-C实现2 个数字之间的算术几何平均值算法(附完整源码)
查看>>
Objective-C实现2d 表面渲染 3d 点算法(附完整源码)
查看>>
Objective-C实现2D变换算法(附完整源码)
查看>>
Objective-C实现3n+1猜想(附完整源码)
查看>>
Objective-C实现3n+1猜想(附完整源码)
查看>>
Objective-C实现9x9乘法表算法(附完整源码)
查看>>
Objective-C实现9×9二维数组数独算法(附完整源码)
查看>>
Objective-C实现A*(A-Star)算法(附完整源码)
查看>>