LINUX学习第8天---系统进程管理和计划任务

进程和程序的区别:

1.程序是静态概念,本身作为一种资源长期存在

2.进程和程序无一一对应,一个程序可以有多个进程共用,一个进程可以有序的执行多个程序

进程分为2种

1.前台进程

2.后台进程

    1.前台进程:用shell敲入命令后在终端执行完之后才可以执行另一个命令

    2.后台进程:shell & (用shell敲入命令后跟& ,会在后台自动执行命令,它与shell命令同步运行,无需等待命令执行完毕就可以返回提示信息。再敲入另一命令)注意:后台进程必须是非交互式的

进程有父进程和子进程

1.父进程终止子进程也跟着终止,如果父进程终止子进程没有终止。叫孤儿进程。必须关闭掉

2.父进程没有终止子进程终止。叫僵尸进程。

第一大类:

查看用户信息状态和进程状态

1.W查看全部用户状态 /w 用户名 查看用户名的信息

3-2-1

参数:

up是系统运行时间/3users:有3位用户 / load average:0.06,0.05,0.00:负载值->系统对资源使用的评估值 /如果平均值小于0.8时 认为系统负载较轻

USER     TTY       LOGIN@   IDLE     JCPU           PCPU               WHAT
root     :0            21:08   ?  xdm?  58.00s         0.80s             /usr/bin

用户名   终端        最后登录时间      消耗时间  CPU执行命令消耗时间/所执行的命令

进程查看信息:PS

参数:

–a 全部用户的进程信息

-u 显示用户启动时间和用户信息

-x 显示没有控制终端的进程

-e 显示全部进程包裹没有控制的进程

-l 长格式显示  -w 宽格式显示

ps -aux输出信息:

3-2-2

user:用户名/ pid:进程号ID /%cpu:显示占用CPU时间和总时间比 / %mem:占用内存和总内存的比 / stat:进程状态(1,S:休眠状态2.D:不可中断的休眠状态3.R:运行状态)/ command :进程的命令名

ps –le 输出信息:

3-2-3

uid:用户ID /PID:进程号(ID) / ppid:父进程进程号 / ni:优先级(nice:值越小优先权限越高) / tty:终端 / cmd:命令

例:查看用户sam的启动进程

ps –aux | grep sam (查看所有进程然后过滤用户sam的进程得到结果)

ps –le |grep init(查看所有进程然后过滤init的进程得出结果=查看制定进程的信息)

KILL:杀死进程

参数: –9 强行关闭  -1 从新启动

例:把用户sam踢出系统

  w sam  查看用户信息

  ps –ux | grep sam  查看用户的进程,看到他的PID

  kill PID   就OK了

killall 杀死所有进程 (结束同名的进程)

pgrep 服务名称 (查找服务的pid和进程号)

pkill 进程名 (关闭进程)和kill pid 一样的功能

/proc 虚拟文件目录:存放在内存中,主要来存放当前系统运行的进程信息和系统资源信息!

nice 和 renice :优先级的定义

nice :制定进程启动时的优先级。nice –n 进程名

如:nice –5 httpd (设置apache的启动优先级为 5)

renice:改变已启动的进程优先级 renice n pid

如:renice 5 1920 (5是优先级 1920是进程的PID)

nice和renice 优先级的取值在 -20和 19之间

NOHUP:使进程在用户推出之后用户用这个命令执行的动作仍然可以执行完毕!

如:nohup find / –name *.conf >/root/conf.find(在根目录查找后缀名是conf的文件然后把查找结果使用输入重对象写进conf.find文件中,退出后仍可以把这个命令执行完毕)

进程挂起和恢复:

ctrl+Z 暂停 ctrl+c 终止

查看挂起和后台执行的进程命令:jobs

fg –1 (用jobs查看到的id)把进程恢复到前台运行

bg –1 把进程恢复到后台继续运行

TOP命令中合体:

使用top命令查看出来 默认没5s刷新一次

top参数和命令:1.s和d设置默认刷新时间 2.r 设置进程的优先级 3.c 显示整个命令行而不是命令 4.u 显示用户运行的进程

5. k 终止运行着的进程 6.w 把当前的设置保存在配置文件 ~/.toprc中。不过只会保存默认刷新时间的配置。以为其他都是动态的。不会保存到配置文件中

LINUX的计划任务:  ☆ ☆ ☆ ☆ ☆ ☆

1.at:安排在莫一时刻执行一次性计划

2.batch:在系统负载较轻的时候执行计划任务

3.cron :安排周期性的任务

时间的书写格式: 1.绝对时间是常用 2.相对时间不常用

    1.绝对时间:hh:mm MMDDYY 

    2.相对时间:now + n minutes(现在时间加上多次时间后)

atq 或at –l 查询有哪些要执行的任务

1。一次性计划:

   at time(时间)

2.batch 和at使用一样

3.cron:

  crontab命令:用于生成cron所使用的crontab文件

crontab –e 设置crontab文件编辑要设置的计划任务

  周期性任务 crontab文件的书写格式:

  分钟        小时     日      月      星期  命令(命令得是据对路径)

   我现在想做一个在每个星期5的下午5点让服务器关机。但是关机前10分钟给所有用户发个广播

可以这样写:(不清楚的时间可以*代替)

   分钟    小时     日      月      星期  命令

    50      16       *       *        5     /usr/bin/wall < /usr/wall.log

    0       17       *       *        5    /sbin/shutdown –h now

我想让学校的一台服务器每隔5分钟备份boot一次,但是只是在6月和9月这两个月的星期6晚上10点备份

    分钟    小时     日      月      星期  命令

   */5      22       *      6,9       6     /bin/cp –Ru /etc/boot /backup 2>>/backup/backup.err

at计划任务存放在:/etc/spool/at 中

cron计划任务存放在:/etc/spool/cron中

进程分类: 1.standalone  2、xinetd

  1.standalone:独立运行的进程,无论是否有请求也会一直监听客户端的请求

(优点:响应速度快。缺点:占用系统资源比较多)

2.xinetd :进程托管。监听客户端的请求,如有请求它传递给托管服务,然后产生进程处理客户的请求

(优点:占用系统资源较少。缺点响应速度慢)

相关文章

已有 2 条评论
  1. 小歪

    传闻中的linux,没接触过

    小歪 回复
  2. myswty.com

    我也在学,但越学越差!

    myswty.com 回复
发表新评论