Linux学习之路——进程调度和服务管理

笔记目录

  • 1 进程调度和服务管理
    • 1.1 进程调度
    • 1.2 进程调度管理命令
      • 1.2.1 命令at
        • 可以使用的时间关键字
      • 1.2.2 命令atq
      • 1.2.3 命令atrm
      • 1.2.4 命令 crontab
        • cron配置文件
        • cron配置
    • 1.3 服务的概念
      • 服务脚本:
        • /etc/rc.d/init.d
        • etc/rc.d/rc. local
    • 1.4 服务管理命令
      • 1.4.1 使用 service命令管理服务(rhel6.9)
      • 1.4.2 使用 chkconfig命令管理服务
      • 1.4.3 使用 systemc命令管理服务(rhel8)
        • 1.4.3.1 列出单元
        • 1.4.3.2 服务管理(代替 servicer命令)
    • 1.5 小结

1 进程调度和服务管理

1.1 进程调度

​ Linux操作系统允许用户在特定的时间自动执行指定的任务(类似于indows操作系统中的任务计划程序),也允许用户对任务进行合理的安排,从而提高资源利用率均衡系统的负载,最终实现系统管理的自动化,我们一般通过以下方式进行系统的进程调度

使用命令at调度偶尔允许的进程(at、ata、atrm)

使用命令cron调度经常运行的进程( crontab)

1.2 进程调度管理命令

1.2.1 命令at

语法:at [参数] 时间

功能:指定特定的日期和时间以便运行某个程序

参数:f <文件名> | -l | -d <作业号>

-f<文件名>:用于指定计划执行的命令所在的文件

-l:显示等待执行的调度作业

d<作业号>:删除指定作业号的调度作业

时间:
at命令对时间的设置非常复杂,可以设置当天的时间,也可以设置几天后的时间。格式上,可以使用am、pm等进行描述,也可以用hh:mm(小时:分钟)的方式来描述,

可以使用的时间关键字

am/pm

now+count minutes/hours/days/weeks

today/tomorrow

midnight/noon

teatime

1.2.2 命令atq

语法:atq

功能:查看已经安排好的未执行作业(相当于at -l)

Linux学习之路——进程调度和服务管理_第1张图片

1.2.3 命令atrm

语法:atrm 作业号
功能:删除已经安排好的未执行作业(相当于at -d 作业号)
【补充】我们可以通过/etc/at.allw和/etc/at.deny两个文件来设置允许和禁止用户执行at命令,将对应用户名分别添加到两个文件即可。

1.2.4 命令 crontab

功能:周期性的执行命令,cron一般随 Linux启动而启动,cron启动时会读取配置文件并将其保存在内存中,每间隔1分钟,cron会重新检査配置文件(即cron执行命令的最短周期是1分钟)。

语法: crontab [参数]
参数:-elr -u <用户名> <文件>

-e:用于创建并编辑 crontab内容

-l:显示创建好的 crontab l内容

-r:删除 crontab文件

-u <用户名> <文件>:建立指定用户的cron文件

cron配置文件

此文件保存在/var/ spool/cron目录中,文件名与用户名相同,文件共有6个字段,分别为分钟、小时、日期、月和星期和命令

cron配置

​ 上述字段不能为空,字段之间用空格隔开,如果不指定字段则使用“*”,日期格式的书写中,可以使用横杠(-)表示一段时间,如5-10表示每个月的第5天到第10天,可以使用逗号(,)表示特定日期,如1,15,28表示每个月的1号、15号和28号。

crontab如果要生效,需要重启 crond服务,重启命令:ystemctl restart crond

1.3 服务的概念

概念:在 Linux系统中,服务是在后台运行的正在执行任务或等待执行任务的一个应用程序(或一组应用程序),也被称为 Daemons,即守护进程。
分类: Linux中服务分为独立服务基于 Xinetd的服务,独立服务存在于内存中,用到时就会有相应;基于Xinetd的服务不在内存中,需要 Xinetd去调取相应的服务,因此, Xinetd?就是 Linux中的超级守护进程

服务脚本:

/etc/rc.d/init.d

​ 守护进程的运行目录,有许多程序的脚本,执行这些脚本可以启动、停止、重启这些服务,命令为:/etc/rc. d/init. d/xinetd start /stop/restart

etc/rc.d/rc. local

​ 存放进程的初始化脚本,其目录分别是rc0.d-rc6.d,对应系统的7个启动级别,当系统启动或进入某个运行级别时,对应脚本中用于启动服务的脚本将自动运行,如果用户要添加开机启动项,只需要在/etc/rc.d/rc.loca中添加即可。

1.4 服务管理命令

1.4.1 使用 service命令管理服务(rhel6.9)

​ service是 Red Hat Linux兼容的发行版中常用的用于控制系统服务的使用工具,主要用于启动、停止、重启和关闭系统服务,还可以显示所有系统服务的当前状态,一般随系统启动而启动。

语法格式: service [选项参数]

选项:-h | --status-all

-h:显示帮助信息

--status-all:是示所有服务的状态

参数:

服务名:自动要控制的服务名,即/etc/init.d日录(或/etc/rc.d/nit.d日录)下的脚本文件名。

控制命令: start stop I restart status reload

service network status //重启网络服务(rhel6.9)

service mysqld restart //重启 mysqld数据库服务

1.4.2 使用 chkconfig命令管理服务

​ 主要用来更新(启动或停止)和查询系统服务的运行级信息,可查询操作系统在每一个执行等级(0-6)中会执行哪些系统服务,包括各类常驻服务。值得注意的是,chkconfig不是立即禁止或激活一个服务,它只是简单的改变了一下符号链接。

主要用法如下:

​ chkconfig-ad服务名 //増加某个系统服务

​ chkconfig-del服务名 //删除某个系统服务

​ chkconfig-list服务名 //显示某个系统服务

​ chkconfig- level数字服务名 on/of //设置某个服务的开启或关闭,数字为1-6,on为开启,of为关闭

​ chkconfig- add sssd //增加服务ssd
​ chkconfig- list sssd //显示ssd服务的运行级信息chkconfig- level2345sson//设置sss服务在系统运行等级为2、3、4、5时开启

1.4.3 使用 systemc命令管理服务(rhel8)

​ 在rhel8中,使用 systemd工具取代 System V初始进程现在大部分的标准 Linux发行版都使用 Isystem工具,systemd工具使用 systemcall命令来管理服务,可以取代servicer命令和chkconfigi命令。 systemctl f命令的功能非常强大,

1.4.3.1 列出单元

Linux学习之路——进程调度和服务管理_第2张图片
  • systemctl list- units:列出所有运行单元
  • systemctl list- unit-files:列出所有可用单元
  • systemctl- failed:列出所有失败单元
  • systemctl list- unit-files- type service:列出所有可用服务

1.4.3.2 服务管理(代替 servicer命令)

  • systemctl start/stop服务名列表:启动/停止指定服务,服务名列表的服务名之间使用空格分隔

  • systemctl restart/ reload服务名列表:重启/重新装载指定服务。

  • systemctl status服务名列表:查看服务状态。

  • systemctl enable/ disable服务名列表:设置开机启动/不启动指定服务。

  • systemctl mask/ umask服务名列表:禁用/取消禁用指定服务。

  • systemctl show服务名列表:显示服务的所有配置细节

  • systemctl get- default:查看默认的运行级别

  • systemctl isolate graphical target:启动运行级别5(图形,也可以使用 runlevels. target

  • systemctl set- default graphical. target:设置默认运行级别

1.5 小结

Linux学习之路——进程调度和服务管理_第3张图片

你可能感兴趣的:(Linux,linux)