进程管理与系统监视

1、在前台用vi编辑器打开f4文件,然后挂起,最后在后台启动一个查找inittab文件的find作业,find查找结果保存在f5中。
vi f4
ctrl+Z
find / -name inittab >f5 &
2、查看当前作业、进程和用户信息,并对作业进行前后台切换。
jobs
fg 2
jobs
kill -9 %1
ps -l查看进程的相关信息,现实的信息类似如下:
F S UID PID PPID C PRI NI ADDR SZ WCHAN TTY TIME CMD
4 S 0 2705 2703 0 75 0 - 1270 wait pts/0 00:00:00 bash
4 R 0 2743 2705 0 77 0 - 1115 - pts/0 00:00:00 ps

s:进程的状态。R:运行状态;S:休眠状态;T表示暂停或者终止状态;Z:僵死状态
UID:进程启动者的用户ID
PID:进程号;
PPID:父进程的进程号;
NI:进程的优先级值;
SZ:进程占用内存空间的大小,以KB为单位;
TTY:进程所在终端的终端号;桌面环境的终端窗口表示为:pts/0,字符界面的终端号:tty1-tty6;
TIME:进程已运行的时间;
CMD:启动该进程的Shell命令。

who -H 查看用户的信息
NAME LINE TIME COMMENT
root tty1 2018-07-17 17:06
root pts/0 2018-07-17 17:09 (192.168.0.1)

NAME:用户名
LINE:用户登录的终端号
TIME:用户登录的时间

top -3 三秒钟更新一次,是动态查看
按M键,所有进程按照内存使用率排列
按T键,所有进程按照执行时间排列
按P键,恢复按照内存使用率排列进程
结束的话:使用ctrl+c或者q,挂起的话:ctrl +z

3、at调度
at [选项] [时间] 设置指定的时间执行指定的命令
-f -l -d
(1)绝对计时法
HH:MM (小时:分钟) 24小时计时
如果采用12小时计时,则在后面加上AM或者PM
MMDDYY或者MM/DD/YY或者MM.DD.YY :指定具体的日期,必须在HH:MM之后;
(2)相对计时法
now+时间间隔:时间的单位为minutes(分钟)、hours(小时)、day(天)、week(星期)
(3)直接计时法
today(今天)、tomorrow(明天)、midnight(深夜)、noon(中午)、teatime(下午四点)

2、batch调度
batch [选项] [时间] 选项和at相同

3、cron调度
(1)crontab的配置文件
保存在/var/spool/cron目录中
字段 分钟 时 日期 月份 星期 命令
取值范围 0-59 0-23 01-31 01-12 0-6,0为周日
字段内容不能为空,如果无字段内容,用“*”表示
1-5表示从1号到5号
使用5,15,25表示:每个月的5号、15号和25号

(2)crontab命令
crontab 【选项】 维护用户的crontab配置文件
-e -l -r

(3)crond进程
创建或者修改了crontab配置文件后,要用“service crond restart”命令重启crond服务。

注意:1、对于偶尔运行的进程采用at或者batch调度。
2、对于特定时间重

复运行的进程采用cron调度。


练习:
1、设置一个调度,要求在2011年5月4日0时,向所有用户发送新年快乐的问候。
at 00:00 05042011
at>wall Happy New Year!
at>
at> 按[ctrl+d]结束输入。

2、设置一个调度,要求5分钟后向所有用户发送系统即将重启的消息,并在2分钟后重新启动计算机。
at now+5 minutes
at>wall please logout,the computer will restart!
at>shutdown -r +2
at>
at> 按[ctrl+d]结束输入。

3、查看所有的at调度,并删除2011年5月4日执行的调度任务。
(1)输入atq命令,查看所有at调度,显示出作业号,将在何时运行以及at调度的设置者。
(2)输入“atrm 1”命令删除作业号为1的at调度,并再次输入atq查看剩余的at调度内容。
(3)5分钟后系统将自动运行作业号为2的at调度内容,先发送消息,然后等2分钟重新启动。

4、为helen用户设置crontab调度,要求每天上午8时30分查看系统进程状态,并将结果保存在ps.log中
(1)以helen用户登录,输入“crontab -e”,新建一个crontab。
(2)屏幕出现vi编辑器,按“i”,进入输入模式,输入:“30 8 * * * ps >ps.log”。
(3)按“ESC”退出vi,按“:”输入wq,保存crontab配置文件,屏幕出现“crontab:installing new crontab”信息。
(4)输入crontab -l,查看helen用户的cron调度内容。
(5)为立即查看到crontab调度的结果,切换到超级用户,并适当修改时间,如修改为8时29分。最后退回到helen用户。
(6)等待1分钟后,查看ps.log文件内容,看是否显示正确。

5、为helen用户添加crontab调度,要求每三个月的1日零时查看正在使用的用户列表。
(1)再次输入“crontab -e”,屏幕出现vi编辑器,按“i”,进入输入模式。
(2)在原内容之后另起一行,输入“0 0 * * /3 * who >who.log”。
(3)按“ESC”退出vi,按“:”输入wq,保存crontab配置文件。
(4)为立即查看到crontab调度的结果,切换到超级用户,并适当修改时间,如修改为3月31日23时59分。最后退回到helen用户。
(5)等待1分钟后,查看who.log文件内容,看是否显示正确。

6、查看cron调度内容,最后删除此调度。
(1)输入“crontab -l”,查看cron调度的内容。
(2)输入“crontab -r”,删除cron调度的内容。
(3)再次输入“crontab -l”,此时cron调度无内容。

相关文档
最新文档