前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >系统软件服务类设置命令

系统软件服务类设置命令

作者头像
全栈工程师修炼指南
发布2022-09-28 20:13:30
7180
发布2022-09-28 20:13:30
举报

[TOC]

0x00 服务管理

1.Linux服务管理 独立的服务:就是运行在内存里的服务,任何的客户端要访问这个服务

  • 可以直接响应,速度快,缺点是占用内存.

xinetd服务:是超级守护进程,它管理的后台程序,客户端要访问后台服务需要经过它

  • xinetd占用内存,其他服务都不占内存,速度慢,xinetd的服务现在用得越来越少了.
WeiyiGeek.rpm与源码包安装服务
WeiyiGeek.rpm与源码包安装服务

WeiyiGeek.rpm与源码包安装服务

各种服务的目录以及使用

代码语言:javascript
复制
#1.独立服务的启动,系统启动都时候都会把这个文件里的内容执行一遍
/etc/rc.d/    #自启动
/etc/init.d/  #启动
#注意Centos7需要自己编写脚本放入该目录中:进行启动
/etc/init.d/独立服务名 start|stop|status|restart|

#示例
/etc/rc.d/rc.local #修改文件
/etc/init.d/net start #比如加入进行自启动


#2.源码包服务管理
vi /etc/rc.d/rc.local #源码包的自启动
#让源码包的服务能过被service命令管理启动,需要将源码包中bin目录的命令建立软连接到 /etc/init.d/下
#示例:
ln -s /usr/local/apache2/bin/apachectl /etc/init.d/apache  
ln -s /usr/local/apache2/bin/apachectl /usr/bin/apachectl    #在centos7 

#让源码包服务被chkconfig,ntsysv命令管理自启动
vi /etc/init.d/apache
#加入:chkconfig:35 86 76  并且加入到chkconfig
# 35 启动级别
# 86 启动顺序
# 76 关闭顺序
chkconfig --add apachectl #服务接受chkconfig管理就能被ntsysv管理.


#3.补充方法(主要是源码安装)
#在redhat7及以上,推荐采用systemctl进行管理服务
/usr/lib/systemd/system/  #systemctl管理的脚本
/etc/systemd/system  #(Ubuntu)

#示例:nginx源码安装,首先是确定编译后的软件服务不存在下面的目录
/etc/systemd/system/multi-user.target.wants/
#1)创建配置文件 
vim /usr/lib/systemd/system/nginx.service
写入服务管理内容:
[Unit]
Description=nginx - high performance web server 
Documentation=http://nginx.org/en/docs/ 
After=network-online.target remote-fs.target nss-lookup.target 
Wants=network-online.target

#包含启动、重启和停止
[Service]
Type=forking
PIDFile=/var/run/nginx.pid
ExecStart=/usr/local/nginx/sbin/nginx -c /usr/local/nginx/conf/nginx.conf
ExecReload=/bin/kill -s HUP $MAINPID
ExecStop=/bin/kill -s TERM $MAINPID

[Install]
WantedBy=multi-user.target

#2)建立完成后就能通过systemctl命令进行管理了
systemctl start nginx.server

2)运行等级 切换系统运行等级:0表示关机,6表示重启,1表示单用户模式,2345表示多用户模式

WeiyiGeek.运行等级
WeiyiGeek.运行等级

WeiyiGeek.运行等级

service 命令

描述:Cenots6中主要的服务管理工具,用于服务启动与停止状态的查看,注意此命令不是linux通用命令而是redhat自己开发的;

代码语言:javascript
复制
service 独立服务名  start|stop|status|restart   #推荐使用systemctl

基础使用示例:

代码语言:javascript
复制
#比如复制 php-fpm 启动文件到init.d目录中
cp sapi/fpm/init.d.php-fpm /etc/init.d/php-fpm
chmod o+x /etc/init.d/php-fpm

#传统的启动方式
/etc/init.d/php-fpm start
#采用services管理方式
service php-fpm start

updata-rc.d 命令

描述:命令添加开机执行脚本还能用于设置服务自启动的运行等级和顺序,多在debian和Ubuntu中使用; 同样需要在该路径中建立软连接/etc/init.d/ssh采用进行管理;

代码语言:javascript
复制
#用法
update-rc.d [-n] [-f] name remove    #用于移除脚本
update-rc.d [-n] name default [NN | SS KK]
update-rc.d [basename] start|stop [order] [runlevels]

* NN表示执行序号(0-99)
* SS表示启动时的执行序号
* KK表示关机时的执行序号,SS、KK主要用于在脚本直接的执行顺序上有依赖关系的情况下。

-n:不做任何事情,只显示将要做的。(预览、做测试)
-f:强制移除符号连接,即使 /etc/init.d/script-name 仍然存在。

实际案例:

代码语言:javascript
复制
#示例1.update-rc.d 进行自启动并制定运行级别
update-rc.d ssh default  # 下次启动重新开启


#示例2.设置启动顺序
如果执行脚本B需要先执行脚本A,如下设置(A的启动顺序比B的小,结束顺序比B的大):
update-rc.d A defaults 80 20  #其中的99表示启动顺序,取值范围是0-99。序号越大的越晚执行。
update-rc.d B defaults 90 10


#示例3.移除启动的脚本
update-rc.d startBlog remove
update-rc.d -f startBlog remove  #强制


#示例4.高级示例
#解析:表示在2、3、4、5这五个运行级别中,由小到大,第20个开始运行ushare;在 0 1 6这3个运行级别中,第20个关闭apachectl。
update-rc.d ssh start 20 2 3 4 5 .stop 20 0 1 6  #运行级别 0 — 6
#效果等于下面方法:
update-rc.d httpd defaults

chkconfig 命令

描述:启动自启动命令(老版本还用),可以按照启动级别来自启;注意需要将脚本放入/etc/init.d/shell脚本名称才能进行管理;

代码语言:javascript
复制
chkconfig [--level <级别>] [--type <类型>] <服务名称> <on启用|off停止自启|reset重新设置|resetpriorities重置优先级>

实际案例:

代码语言:javascript
复制
#示例0.添加服务到chkconfig管理
chkconfig -add nginx


#示例1.查看服务启动
#--level 通常级别2345一块设定  #这条命令只是表示下次开机启用
chkconfig --level 2345 httpd on     # Centos7.0 ->全部集中到systemctl中
chkconfig –-level 35 crond on

#示例2.查看服务自启动状态
#可以看到所有的RPM包安装服务
chkconfig --list   #如果您想列出 systemd 服务,请执行 'systemctl list-unit-files'   #Centos 7 有改变
#欲查看对特定 target 启用的服务请执行 ' systemctl list-dependencies [target] '  (上面)
# netconsole      0:关    1:关    2:关    3:关    4:关    5:关    6:关
# network         0:关    1:关    2:开    3:开    4:开    5:开    6:关
# 基于 xinetd 的服务:
#         chargen-dgram:  关
#         chargen-stream: 关


#示例3.优先级设置
格式:chkconfig --level 2345  10[开机优先级] 90[关机优先级]

xinetd 命令

描述:xinetd服务是超级守护进程是Rsync、nfs依赖.

  • xinetf配置文件:/etc/xinetd.conf
  • 基于xinetd服务的启动脚本:/etc/xinetd.d/
代码语言:javascript
复制
# 1.安装xinetd
yum -y install xinetd   
service xinetd restart
service rsysv on

#2.企业xinetd
vi /etc/xinetd.d/rsync   #修改后重启
set:disable = no

注意:xinetd服务不能加级别来自启动,xinetd自启动就启动了.

ntsysv 命令

描述:这个是redhat专用其他linux没有,Redhat与FC系统提供的图形管理界面设置哪些服务应该自动启动;

代码语言:javascript
复制
$ntsysv     
#会启动一个窗口 加*号 开机自启 去掉* 取消,
WeiyiGeek.ntsysv
WeiyiGeek.ntsysv

WeiyiGeek.ntsysv

setup 命令

描述:提供debian的图像化管理认证和系统服务配置,值得注意的是setup也是调用ntsysv和authconfig-tui工具进行管理得;

代码语言:javascript
复制
[root@localhost ~]# setup
WeiyiGeek.setup
WeiyiGeek.setup

WeiyiGeek.setup

0x02 软件配置

dpkg-reconfigure 命令

描述: 在Debian系或者Ubuntu系需要重新配制一个已经安装的软件,当用户需要再次对软件包配置的时候可以使用dpkg-reconfigure来对指定的软件包进行配置。

语法参数:

代码语言:javascript
复制
# /usr/bin/debconf-set-selections
Usage: dpkg-reconfigure [options] packages
# dpkg-reconfigure [选项] 软件包
  # -u,  --unseen-only            Show only not yet seen questions. # 仅显示未提过的问题
  #      --default-priority       Use default priority instead of low. #  使用默认优先级,而非“低”级。
  #      --force                  Force reconfiguration of broken packages.  #   强迫重配置受损软件包。
  #      --no-reload              Do not reload templates. (Use with caution.) # 不要轻易的重装模板(使用时请慎重考虑)。
  # -f,  --frontend               Specify debconf frontend to use. # 指定 debconf 前端界面。
  # -p,  --priority               Specify minimum priority question to show. # 指定要显示的问题的最优先级。
  #      --terse                  Enable terse mode.  # 开启简要模式。

使用实例:

代码语言:javascript
复制
# (1) 配置系统语言
sudo dpkg-reconfigure locales

0x03 补充自带服务

参考:Linux服务列表

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2019-06-12,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 0x00 服务管理
    • service 命令
      • updata-rc.d 命令
        • chkconfig 命令
          • xinetd 命令
            • ntsysv 命令
              • setup 命令
              • 0x02 软件配置
                • dpkg-reconfigure 命令
                  • 0x03 补充自带服务
                  领券
                  问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档