搞它!!!Linux系统中查看进程和计划任务管理 您所在的位置:网站首页 linux标准的进程查看工具 搞它!!!Linux系统中查看进程和计划任务管理

搞它!!!Linux系统中查看进程和计划任务管理

2023-08-22 11:57| 来源: 网络整理| 查看: 265

文章目录 首先我们了解一下程序和进程的关系: 一、查看进程1、查看静态的进程统计信息(ps) 2、查看静态的进程统计信息(top)3、pgrep命令(查询进程信息)4、pstree命令(查看进程树) 二、控制进程1、进程的启动方式(1)手工启动(2)调度启动(3)进程的前后台调度(3)终止进程的运行 三、at一次性任务设置四、 crontab周期性任务设置1、crontab的配置文件和目录(1) /etc/crontab 全局配置文件2、/etc/cron.*/ 系统默认设置3、/var/spool/cron/用户名 用户定义的位置 2、使用crontab命令管理用户的计划任务

首先我们了解一下程序和进程的关系:

程序: 保存在 、光盘等介质中的可执行代码和数据静态保存的代码 进程: 在CPU及内存中运行的程序代码动态执行的代码

一、查看进程 1、查看静态的进程统计信息(ps)

ps命令(查看静态的进程统计信息Processes Statistic) 是Linux系统中最为常用的进程查看工具,主要用于显示包含当前运行的各进程完整信息的静态快照,通过不同的命令选项,可以有选择性的查看进程信息 ps -aux(将以简单列表形式显示出进程信息):

a:显示当前终端下所有进程信息,包含其他用户进程。与“x”选项结合时显示系统中所有进程信息 u:使用以用户为主的格式输出进程信息 x:显示当前用户在所有终端下的进程信息 -e:显示系统内的所有进程信息 -l:使用长格式显示进程信息 -f:使用完整的格式显示进程信息 [root@localhost 桌面]# ps aux USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND root 1 0.3 0.1 19360 1544 ? Ss 16:29 0:02 /sbin/init root 2 0.0 0.0 0 0 ? S 16:29 0:00 [kthreadd] root 3 0.0 0.0 0 0 ? S 16:29 0:00 [migration/0] root 4 0.0 0.0 0 0 ? S 16:29 0:00 [ksoftirqd/0] root 5 0.0 0.0 0 0 ? S 16:29 0:00 [migration/0]

下面来解释一下各字段含义

1、USER:用户 2、PID:进程号(ls -l | grep init可以看到init的软链接,1进程为init) 3、%CPU:进程的cpu占用率 4、%MEM:进程的内存占用率 5、VSZ:虚拟内存占用 6、RSS:物理内存占用 7、TTY:终端(?代表未知,大多为本地) 8、STAT:当前进程状态,其中 “S”:可中断休眠进程 “D”:不可中断休眠进程 “s”:父进程 “ps aux | wc -l > /opt/ps.txt(确定执行的动作) 5、ctrl+d(提交) 6、atq(查看计划任务) 7、atm2删除第二条任务计划 Linux系统中查看进程和计划任务管理 到了计划时间之后输入:ls /opt/查看目录 此时显示计划的文件ps.txt被写入 Linux系统中查看进程和计划任务管理 四、 crontab周期性任务设置

crontab(定时任务) 使用crontab命令设置的计划任务可以按预设的周期重复执行,可以大大减轻重复性系统管理任务的操作 软件包cronie 提供crontab工具,系统服务crond和配置文件 /etc/crontab。 开启系统服务crond 是启动周期性任务的前提条件

1、crontab的配置文件和目录

crond通过多个目录和文件设置计划任务,不同类型的任务由不同的配置文件来配置

(1) /etc/crontab 全局配置文件

全局配置文件

/etc/crontab 文件中设置的是维护Linux系统所需的任务

Linux系统及相关程序在安装时自动设置

不建议用户手动修改此文件

[root@localhost ~]# cat /etc/crontab '//查看系统任务配置文件' SHELL=/bin/bash '//设置执行计划任务的Shell环境' PATH=/sbin:/bin:/usr/sbin:/usr/bin '//定义可执行命令及程序的路径' MAILTO=root '//将任务输出信息发送到指定用户的邮箱' HOME=/ '//执行计划任务时使用的主目录' # For details see man 4 crontabs # Example of job definition: # .---------------- minute (0 - 59) '//分钟范围:0-59' # | .------------- hour (0 - 23) '//小时范围:0-23' # | | .---------- day of month (1 - 31) '//一个月的天数范围:1-31' # | | | .------- month (1 - 12) OR jan,feb,mar,apr ... '//月数范围:1-12' # | | | | .---- day of week (0 - 6) (Sunday=0 or 7) OR sun,mon,tue,wed,thu,fri,sat '//一周的天数范围: 0-6(周日用0或者7表示)' # | | | | | # * * * * * user-name command to be executed 2、/etc/cron.*/ 系统默认设置

系统默认设置cron任务的配置文件存放目录

软件包crontabs安装后,会在/etc/cron.*/目录下生成存放一些系统默认设置的计划任务目录,设置了系统每个小时,每一天做些什么任务

例如:

/etc/cron.hourly/ 目录下存放的是系统每小时要做的任务可执行脚本

/etc/cron.daily/ 目录下存放的是系统每天要做的任务可执行脚本

/etc/cron.weekly/ 目录下存放的是系统每周要做的任务可执行脚本

/etc/cron.monthly/ 目录下存放的是系统每月要做的任务可执行脚本

这些是可执行脚本,不是cron配置文件,crond服务通过run-parts 工具调用执行这些脚本

3、/var/spool/cron/用户名 用户定义的位置

用户自行设置的cron计划任务将被保存到目录/var/spool/cron/中

用户使用crontab命令创建计划任务,就会在/var/spool/cron/目录下生产一个与用户名相同的文件

例如:root用户的cron计划任务保存在配置文件/var/spool/cron/root中

crond守护进程会自动检查上述三个文件,若有配置更改,就会载入内存,不需重启crond守护进程就可以使设置生效

[root@localhost ~]# ls -l /var/spool/cron/* ls: 无法访问/var/spool/cron/*: 没有那个文件或目录 '//没有创建任务' 2、使用crontab命令管理用户的计划任务 常用选项 crontab -e [-u 用户名] '//编辑计划任务 e:edit,编辑,使用方式同Vim编辑器。' crontab -l [-u 用户名] '//查看计划任务 l:list,列表' crontab -r [-u 用户名] '//删除计划任务 r:remove,移除' crontab -l '//查看当前用户的计划列表' crontab -l -u lisi '//查看lisi用户的计划任务' crontab -e '//可以操作删除一条计划任务' crontab -r '//删除用户所有的计划任务'

命令格式: 时间周期设置 + 任务内容设置 在这里插入图片描述

时间数值的特殊表示方法 * 表示该范围内的任意时间 , 表示间隔的多个不连续的时间点 - 表示一个连续的时间范围 / 指定间隔的时间频率 例如: 0 17 * * 1-5 '//表示周一到周五每天17:00' 30 8 * * 1,3,5 '// 表示每周一,三,五的8点30分' 0 8-18/2 * * * '// 表示8点到18点之间每2小时' 0 * */3 * * '//表示每3天'

分钟字段应该填写一个具体的时间数值,不可是“*”,否则将会每一分钟都执行一次任务 实例

如:每天15:30将/home/中zhangsan目录复制到/opt/中 [root@localhost ~]# crontab -e '//编辑计划任务' 进入编辑列表开始编辑,操作类似vim 编辑器 30 15 * * * /usr/bin/cp -r /home/zhangsan /opt/ '//在其中编辑好任务,wq保存退出'


【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有