2024全网最为详细的红帽系列【RHCSA-(18)】初级及进阶Linux保姆级别骚操作教程;学不废来坎我[就怕你日后学成黑客了]
欢迎各位彦祖与热巴畅游本人专栏与博客
你的三连是我最大的动力
以下图片仅代表专栏特色 [点击箭头指向的专栏名即可闪现]
专栏跑道一
➡️ MYSQL REDIS Advance operation
专栏跑道二
➡️ 24 Network Security -LJS
专栏跑道三
➡️HCIP;H3C-SE;CCIP——LJS[华为、华三、思科高级网络]
专栏跑道四
➡️RHCE-LJS[Linux高端骚操作实战篇]
专栏跑道五
➡️数据结构与算法[考研+实际工作应用+C程序设计]
专栏跑道六
➡️RHCSA-LJS[Linux初级及进阶骚技能]
上节回顾https://blog.csdn.net/weixin_74796680/article/details/142905855?spm=1001.2014.3001.5501
目录
专栏跑道一 ➡️ MYSQL REDIS Advance operation
专栏跑道二➡️ 24 Network Security -LJS
➡️HCIP;H3C-SE;CCIP——LJS[华为、华三、思科高级网络]
专栏跑道四➡️RHCE-LJS[Linux高端骚操作实战篇]编辑
上节回顾https://blog.csdn.net/weixin_74796680/article/details/142905855?spm=1001.2014.3001.5501
1.top命令查看进程
语法格式:
top [-d 数字] | [-bnp]
top命令相关参数详解说明表
-d 后面可以接秒数,就是整个进程界面更新的秒数,默认是5秒 -b 以批次的方式执行top,还有更多的参数可用。通常会搭配数据流重定向来将批处理的结果输出为文件 -n 与-b搭配,进行几次top的输出结果 -i 不显示闲置或者僵死的进程信息 -c 显示进程的整个命令路径,而不是只显示命令名称 -s 使top命令在安全模式下运行,此时top的交互式指令被取消,避免潜在危险 -p 指定某些个PID来进行查看检测 示例:
[root@localhost ~]# top -d 1 [root@localhost ~]# top -d 1 -p 10126 #查看指定进程的动态信息 [root@localhost ~]# top -d 1 -p 10126,1 [root@localhost ~]# top -d 1 -u apache #查看指定用户的进程 [root@localhost ~]# top -d 1 -b -n 2 > top.txt #将2次top信息写入到文件 [root@localhost ~]# top top - 17:21:03 up 4:32, 5 users, load average: 0.19, 0.08, 0.06 Tasks: 483 total, 3 running, 480 sleeping, 0 stopped, 0 zombie %Cpu(s): 0.3 us, 0.7 sy, 0.0 ni, 99.0 id, 0.0 wa, 0.0 hi, 0.0 si, 0.0 st MiB Mem : 1790.0 total, 1278.5 free, 240.5 used, 271.0 buff/cache MiB Swap: 2048.0 total, 2048.0 free, 0.0 used. 1393.8 avail Mem PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND 1 root 20 0 179104 13540 8728 S 0.0 0.7 0:01.22 systemd 2 root 20 0 0 0 0 S 0.0 0.0 0:00.00 kthreadd 3 root 0 -20 0 0 0 I 0.0 0.0 0:00.00 rcu_gp 4 root 0 -20 0 0 0 I 0.0 0.0 0:00.00 rcu_par+ 6 root 0 -20 0 0 0 I 0.0 0.0 0:00.00 kworker+ 9 root 0 -20 0 0 0 I 0.0 0.0 0:00.00 mm_perc+ 10 root 20 0 0 0 0 S 0.0 0.0 0:00.01 ksoftir+ 11 root 20 0 0 0 0 I 0.0 0.0 0:00.13 rcu_sch+
1.2top的输出信息详解说明
- 可以分为统计信息区和进程信息区两个部分,即前5行为统计信息区,后面为进程信息区
统计信息区
第一行
任务队列信息:top - 17:21:03 up 4:32, 5 users, load average: 0.19, 0.08, 0.06 17:21:03表示当前系统时间;up 4:32表示系统已经启动4小时32分钟了; 5 users表示当前登录系统的用户数; load average: 0.19, 0.08, 0.06表示系统1分钟、5分钟、15分钟前到现在的平均负载(如果是1表示满载)
第二行
Tasks: 483 total, 3 running, 480 sleeping, 0 stopped, 0 zombie 483 total进程的总数; 3 running正在运行的进程数,; 480 sleeping处于休眠状态的进程数, ; 0 stopped停止的进程数, 0 zombie僵死的进程数。
第三行
%Cpu(s): 0.3 us, 0.7 sy, 0.0 ni, 99.0 id, 0.0 wa, 0.0 hi, 0.0 si, 0.0 st 0.3 us表示用户进程占用CPU的百分比;0.7 sy系统进程占用CPU的百分比 0.0 ni用户进程空间内改变过优先级的进程占用CPU的百分比; 99.0 id空闲CPU占用的百分比 0.0 wa代表I/Owait表示等待输入、输出的进程占用CPU的百分比 0.0 hi表示cpu服务于硬件中断所耗费的时间总额 0.0 si表示cpu服务于软件中断所耗费的时间总额 0.0 st表示虚拟机被hypervisor偷去的cpu时间。另外,如果是多内核设备,可按下数字键“1” 来切换成不同cpu的负载率
MiB Mem : 1790.0 total, 1278.5 free, 240.5 used, 271.0 buff/cache MiB Swap: 2048.0 total, 2048.0 free, 0.0 used. 1393.8 avail Mem total系统的内存大小 free目前空余内存大小 used已经使用的内存大小
进程信息区
简介:显示了每个进程的运行状态
PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND 1 root 20 0 179104 13540 8728 S 0.0 0.7 0:01.22 systemd PID:进程的id USER:进程所有者的用户名 PR:进程优先级 NI:nice值。负值表示高优先级,正值表示低优先级 VIRT:进程使用的虚拟内存总量,单位为KB RES:进程使用的、未被换出的物理内存大小,单位KB SHR:共享内存大小,单位KB S:进程状态,D表示不可中断的睡眠状态,R表示运行状态,S表示睡眠状态,T表示跟踪/停止,Z表示僵死进程 %CPU:上次更新到现在的CPU时间占用百分比 %MEM:进程占用的物理内存百分比 TIME+:进程总计使用的CPU时间,单位为1/100秒 COMMAND:正在运行进程的命令名或者命令路径
1.3top交互式按键命令详解说明表:
top交互式按键命令详解说明表一
交互式命令 说明 h 或? 显示帮助信息,给出交互式命令的一些说明 k 终止一个进程,系统将提示用户输入一个需要终止进程的PID i 忽略闲置进程和僵死进程,这是一个开关式命令 s 改变top输出信息两次刷新之间的时间,系统将提示输入新的时间,单位是秒。
如果输入 小数,就换算成毫秒;
如果输入0,系统输出将不断刷新,默认刷新时间是3秒;
需要注意 的是,如果设置太短的时间,可能会引起系统不断刷新,无法看清输出显示情况,而且系 统负载也会加大
o或 者O 改变top输出信息中显示项的顺序。
按小写的a-z键可以将相应的列向右移动,而按大写的 A-Z键可以将相应的列向左移动。
最后按enter确定
top交互式按键命令详解说明表二
交互式命令 说明 f或 者F 从当前显示列表中添加或者删除项,按f键之后会显示列的列表,按a-z键即可显示或隐藏 对应的列。最后按enter确定 m 切换显示内存信息 t 切换显示进程和cpu状态信息 r 重新设置一个进程的优先级,系统提示用户输入需要改变的进程PID以及需要设置的进程 优先级值。输入一个正值将使优先级降低,反之则可以使该进程拥有更高的优先权。默认 值是10 I 切换显示平均负载和启动时间信息 q 退出top显示 c 切换显示完整命令行和命令名称信息 M 根据驻留内存大小进行排序输出
top交互式按键命令详解说明表三
交互式命令 说明 N 以PID来排序 P 根据CPU使用百分比大小进行排序输出 T 根据时间/累计时间进行排序输出 S 切换到累计模式 W 将当前top设置写入~/.toprc文件中
2.信号控制进程
2.1给进程发送信号
#列出所有支持的信号 [root@localhost ~]# kill -l 编号 信号名 1) SIGHUP 重新加载配置 2) SIGINT 键盘中断^C 3) SIGQUIT 键盘退出 9) SIGKILL 强制终止 15) SIGTERM 终止(正常结束),缺省信号 18) SIGCONT 继续 19) SIGSTOP 停止 20)SIGTSTP 暂停^Z #给所有vim进程发送信号 [root@localhost ~]# killall vim [root@localhost ~]# killall httpd
3.作业控制
简介:
- 作业控制是一个命令行功能,允许一个shell 实例来运行和管理多个命令。
- 如果没有作业控制,父进程 fork()一个子进程后,将sleeping,直到子进程退出。
- 使用作业控制,可以选择性暂停,恢复,以及异步 运行命令,让 shell 可以在子进程运行期间返回接受其他命令。
3.1前后台进程详解说明
foreground 前台进程是在终端中运行的命令,该终端为进程的控制终端。
前台进程接收键盘产生的输入和信号,并允许从终端读取或写入到终端。
background 后台进程没有控制终端,它不需要与终端交互。
示例1:
#运行程序(时),让其在后台执行 [root@localhost ~]# sleep 3000 & #ctrl+z可以将前台的任务放到后台中暂停 [root@localhost ~]# sleep 4000 [2]+ Stopped sleep 4000 [root@localhost ~]# ps aux |grep sleep root 8895 0.0 0.0 100900 556 pts/0 S 12:13 0:00 sleep 3000 root 8896 0.0 0.0 100900 556 pts/0 T 12:13 0:00 sleep 4000 #查看当前终端放在后台的进程( jobs ) [root@localhost ~]# jobs [1]- Running sleep 3000 & [2]+ Stopped sleep 4000 +表示最近被放到后台的工作,-表示最近第二个被放到后台中的工作,超过第三个就不会有+/-符号存在了 #让作业2在后台继续运行 [root@localhost ~]# bg %2 #将作业1调回到前台 [root@localhost ~]# fg %1 #kill 1,终止工作号为1的进程 [root@localhost ~]# kill %1
3.2特殊情况——补充说明:
- 在后台执行的指令如果有stdout和stderr时,它的信息依旧是输出到屏幕上的,所以如果想将任务放在 后台工作并且不希望在前台显示可以利用重定向,将输出的信息保存至某个文件。
示例2:
#进程在后台运行,但输出依然在当前终端 [root@localhost ~]# (while :; do date; sleep 2; done) & [root@localhost ~]# (while :; do date; sleep 2; done) &>/dev/null &
原文地址:https://blog.csdn.net/weixin_74796680/article/details/142889528
免责声明:本站文章内容转载自网络资源,如本站内容侵犯了原著者的合法权益,可联系本站删除。更多内容请关注自学内容网(zxcms.com)!