进程管理相关命令

目录

实验名称:进程管理相关命令

实验目的:通过练习进程相关命令,能够使用命令查看linux的进程信息,并对进程进行管理。

实验内容:

1、将前台进程放入后台,并进行查看

2、启动一个后台进程,并进行查看

3、继续执行后台进行

4、在2022年5月15日 1:30 执行 :写入“process test”到 process_test.txt文件

5、在每周五的晚上11点半执行 :写入“process test”到 process_test.txt文件

6、结合grep,使用ps,lsof查看上一个定期任务,

7、修改上一个定期任务的优先级,再结束进程。

8、练习top,pstree等命令。

9、开启yum命令的特殊权限。

拓展实验:文件特殊权限再练习。

思考与讨论

1、top和ps的区别。

2、nice和renice的区别。

实验总结


实验名称:进程管理相关命令

实验目的:通过练习进程相关命令,能够使用命令查看linux的进程信息,并对进程进行管理。

实验内容:

1、将前台进程放入后台,并进行查看

当用户输入一个命令并运行,就已经启动了一个进程,而且是一个前台的进程,此时系统其实已经处于一个多进程的状态(一个是 Shell 进程,另一个是新启动的进程)。

进程在前台运行时按【Ctrl+Z】组合键,进程会被放入后台并被处于暂停状态。
jobs命令

jobs命令 查看从终端窗口放入后台的进程

格式:jobs [选项]

选项                                    含义

-l(L 的小写)          列出进程的 PID 号。

-n                             只列出上次发出通知后改变了状态的进程。

-p                             只列出进程的 PID 号。

-r                              只列出运行中的进程。

-s                              只列出已停止的进程。

2、启动一个后台进程,并进行查看

后台启动:

功能:将命令放入Bash后台运行而不影响终端窗口

在命令结尾输入“&”符号即可,通过“&”放入后台的进程仍然处于运行状态

由于后台进程2已完成,只能查到进程1。

3、继续执行后台进行

bg 命令

功能:使后台暂停的进程重新开始运行

格式:bg  %工作号

4、在2022年5月15日 1:30 执行 :写入“process test”到 process_test.txt文件

at命令

功能:设置在指定的时间执行某个一次性任务

格式:at [选项] [时间]

时间参数是计划任务的执行时间,可以采用下列时间格式的任何一种

  • HH:MM [ am|pm] [Month] [Date] [Year],如11:10 am Jan 18 2022
  • HH:MM YYYY-MM-DD,如11:10 2022-01-18
  • MMDDYY、MM/DD/YY,表示指定日期的当前时刻,如011822、01/18/22
  • 特定时间:如now表示当前时刻,noon代表12:00 pm,midnight代表12:00 am,Teatime代表4:00 pm
  • time + n [minutes | hours | days | weeks],表示在某个时间点之后某一时刻执行,如now + 3 hours表示当前时刻的3小时后

 先修改系统时间为2022年5月15日 1:30左右

5、在每周五的晚上11点半执行 :写入“process test”到 process_test.txt文件

crontab 命令

功能:设置需要周期执行的任务

格式:crontab [选项] [file]

选项

功能

-u user

用来设定某个用户的 crontab 服务,例如 "-u demo" 表示设备 demo用户的 crontab 服务,此选项一般有 root 用户来运行。

-e

编辑某个用户的 crontab 文件内容。如果不指定用户,则表示编辑当前用户的 crontab 文件。

-l

显示某用户的 crontab 文件内容,如果不指定用户,则表示显示当前用户的 crontab 文件内容。

-r 

从 /var/spool/cron 删除某用户的 crontab 文件,如果不指定用户,则默认删除当前用户的 crontab 文件。 

-i

在删除用户的 crontab 文件时,给确认提示。

当我们执行“crontab -e”命令时,打开的是一个空文件,操作方法和 Vim 一致。

*(星号)

代表任何时间

第一个"*" 一小时当中的第几分钟(minute) 0~59

第二个"*" 一天当中的第几小时(hour) 0~23

第三个"*" 一个月当中的第几天(day) 1~31

第四个"*" 一年当中的第几个月(month) 1~12

第五个"*" 一周当中的星期几(week) 0~7(0和7都代表星期日)

,(逗号)

代表不连续时间。

-(中杠)

代表连续的时间范围。

/(正斜线)

代表每隔多久执行一次。

6、结合grep,使用ps,lsof查看上一个定期任务,

 ps命令

功能:查看系统中当前有哪些进程,选项非常多

只能显示系统进程的静态信息

建议记忆固定选项:

"ps aux" 可以查看系统中所有的进程;

"ps -le" 可以查看系统中所有的进程,而且还能看到进程的父进程的 PID 和进程优先级;

"ps -l" 只能看到当前 Shell 产生的进程;

a

显示现行终端机下的所有程序,包括其他用户的程序

e

列出程序时,显示每个程序所使用的环境变量

-f

显示UID,PPIP,C与STIME栏位

f

用ASCII字符显示树状结构,表达程序间的相互关系

-j

采用工作控制的格式显示程序状况

-l

采用详细的格式来显示程序状况

L

列出栏位的相关信息

u

以用户为主的格式来显示程序状况

x

显示所有程序,不以终端机来区分

lsof命令

功能:列出进程调用信息

lsof [选项]

选项

功能

-c 字符串

只列出以字符串开头的进程打开的文件。

+d 目录名

列出某个目录中所有被进程调用的文件。

-u 用户名

只列出某个用户的进程打开的文件。

-p pid

列出某个 PID 进程打开的文件。

7、修改上一个定期任务的优先级,再结束进程。

nice命令

功能:设置进程的优先级(不能修改已运行进程的 NI 值)

每个进程都有优先级,优先级越高,表示进程越有可能获得CPU的使用权

进程的优先级用nice值表示,取值范围是-20~19,默认值为0,数字越大表示优先级越低

8、练习top,pstree等命令。

top命令

功能:查看进程信息的动态变化,默认每隔3秒刷新一次

格式:top  [-bcHiOSs]

上半部分显示操作系统当前的进程统计信息与资源使用情况,包括任务总数及每种状态下的任务数,CPU、物理内存和虚拟内存的使用情况等。

下半部分是每个进程的资源使用情况。

PID:进程的 ID。

USER:该进程所属的用户。

PR:优先级,数值越小优先级越高。

NI:优先级,数值越小、优先级越高。

VIRT:该进程使用的虚拟内存的大小,单位为 KB。

RES:该进程使用的物理内存的大小,单位为 KB。

SHR:共享内存大小,单位为 KB。

S:进程状态。

%CPU:该进程占用 CPU 的百分比。

%MEM:该进程占用内存的百分比。

TIME+:该进程共占用的 CPU 时间。

COMMAND:进程的命令名。

 pstree 命令

 功能:查看进程间的相关性和依赖关系

 格式:pstree [选项] [PID或用户名]

选项

含义

-a

显示启动每个进程对应的完整指令,包括启动进程的路径、参数等。

-c

不使用精简法显示进程信息,即显示的进程中包含子进程和父进程。

-n

根据进程 PID 号来排序输出,默认是以程序名排序输出的。

-p

显示进程的 PID。

-u

显示进程对应的用户名称。

 

9、开启yum命令的特殊权限。

特殊权限

特殊权限有三位:用户置位s(SUID)、组置位s(GUID)和粘着置位t(Sticky)

设置方法:

  1. 数字形式修改权限时setuid、setgid、sticky的八进制位分别是4000、2000、1000。
  2. 字母形式则分别为u+s,g+s,o+t,(删除标记位是u-s,g-s,o-t)

表示上有大小写之分

  1. 如果同时开启执行权限和特殊权限,则权限表示字符是小写。
  2. 如果关闭执行权限,开启特殊权限,则权限表示字符是大写。

拥有特权的含义:

  1. suid/sgid程序:当SUID位被设置时,进程继承了命令拥有者的权限。
  2. 程序的t属性:内存中保存一份运行程序的备份
  3. 目录的s属性:在该目录下创建的任何文件及目录属于该目录所拥有的组。
  4. 目录的T属性:设置了目录的T属性后1000,由只有该目录的所有者及root才能删除该目录,   如/tmp目录就是drwxrwxrwt。

拓展实验:文件特殊权限再练习。

思考与讨论

1、top和ps的区别。

答:ps看到的是命令执行瞬间的进程信息,而top可以持续的监视

ps只是查看进程,而top还可以监视系统性能,如平均负载,cpu和内存的消耗

另外top还可以操作进程,如改变优先级(命令r)和关闭进程(命令k)

ps主要是查看进程的,关注点在于查看需要查看的进程

top主要看cpu,内存使用情况,及占用资源最多的进程由高到低排序,关注点在于资源占用情况

2、nice和renice的区别。

答:nice命令:设置进程的优先级(不能修改已运行进程的 NI 值)。

renice命令:调整运行中进程的优先级。普通用户只能调整自己创建的进程的优先级,而且只能把nice调整为更大的值

区别:nice是在进程还没有运行的时候运行一个进程,指定优先级。
renice是改变已运行进程的优先级

实验总结

通过这次实验,对使用命令查看linux的进程信息有所了解,懂得了bg命令是使后台暂停的进程重新开始运行与crontab命令中五个*的含义,要熟悉每个命令的功能和用法格式。也遇到错误,通过百度、查看资料的网上视频,已解决。

Published by

风君子

独自遨游何稽首 揭天掀地慰生平