Linux中skill命令怎么用
这篇文章主要为大家展示了“Linux中skill命令怎么用”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“Linux中skill命令怎么用”这篇文章吧。
Linux常用命令skill命令 用于向选定的进程发送信号,冻结进程。这个命令初学者并不常用,深入之后牵涉到系统服务优化之后可能会用到。
skill向选定的进程发送信号冻结进程
语法skill(选项)选项
-f:快速模式;-i:交互模式,每一步操作都需要确认;-v:冗余模式;-w:激活模式;-V:显示版本号;-t:指定开启进程的终端号;-u:指定开启进程的用户;-p:指定进程的id号;-c:指定开启进程的指令名称。实例
如果您发现了一个占用大量CPU和内存的进程,但又不想停止它,该怎么办?考虑下面的top命令输出:
top-c-p1651423:00:44up12days,2:04,4users,loadaverage:0.47,0.35,0.311processes:1sleeping,0running,0zombie,0stoppedCPUstates:cpuusernicesystemirqsoftirqiowaitidletotal0.0%0.6%8.7%2.2%0.0%88.3%0.0%Mem:1026912kav,1010476kused,16436kfree,0kshrd,52128kbuff766724kactv,143128kin_d,14264kin_cSwap:2041192kav,83160kused,1958032kfree799432kcachedPIDUSERPRINISIZERSSSHAREstat%CPU%MEMtimeCPUcommand16514oracle1942879626M20252DN7.02.50:030oraclePRODB2...
既然您确认进程16514占用了大量内存,您就可以使用skill命令“冻结”它,而不是停止它。
skill-STOP1
之后,检查top输出:
23:01:11up12days,2:05,4users,loadaverage:1.20,0.54,0.381processes:0sleeping,0running,0zombie,1stoppedCPUstates:cpuusernicesystemirqsoftirqiowaitidletotal2.3%0.0%0.3%0.0%0.0%2.3%94.8%Mem:1026912kav,1008756kused,18156kfree,0kshrd,3976kbuff770024kactv,143496kin_d,12876kin_cSwap:2041192kav,83152kused,1958040kfree851200kcachedPIDUSERPRINISIZERSSSHARESTAT%CPU%MEMTIMECPUCOMMAND16514oracle1942879626M20252TN0.02.50:040oraclePRODB2...
现在,CPU 从 0% 空闲变为 94% 空闲。该进程被有效冻结。过一段时间之后,您可能希望唤醒该进程:
skill-CONT16514
如果希望暂时冻结进程以便为完成更重要的进程腾出空间,该方法非常有用。
此命令用途很广。如果您要停止 “oracle” 用户的所有进程,只需要一个命令即可实现:
skill-STOPoracle
可以使用用户、PID、命令或终端 id 作为参数。以下命令可停止所有 rman 命令。
skill-STOPrman
如您所见,skill 决定您输入的参数(进程 ID、用户 ID 或命令)并进行相应操作。这可能会导致在某些情况下出现这样的问题:您可能具有同名的用户和命令。最好的示例是 “oracle” 进程,通常由用户 “oracle” 运行。因此,当您希望停止名为 “oracle” 的进程时,可执行以下命令:
skill-STOPoracle
用户 “oracle” 的所有进程都停止,包括您可能要使用的会话。要非常明确地执行命令,您可以选择使用一个新参数指定参数的类型。要停止一个名为 oracle 的命令,可执行以下命令:
skill-STOP-coracle
snice命令的功能与skill类似。但它用于降低进程的优先级,而不是停止进程。首先,检查 top 输出:
PIDUSERPRINISIZERSSSHARESTAT%CPU%MEMTIMECPUCOMMAND3root150000RW0.00.00:000kapmd13680oracle1501133610M8820T0.01.00:000oracle13683oracle150997296087788T0.00.90:000oracle13686oracle150986094967676T0.00.90:000oracle13689oracle1501000496407820T0.00.90:000oracle13695oracle150998496207800T0.00.90:000oracle13698oracle1501006497007884T0.00.90:000oracle13701oracle1502220421M16940T0.02.10:000oracle
现在,将 “oracle” 进程的优先级降低四个点。注意,该值越高,优先级越低。
snice+4-uoraclePIDUSERPRINISIZERSSSHARESTAT%CPU%MEMTIMECPUCOMMAND16894oracle2043890432M26248DN5.53.20:010oracle
注意,NI 列(nice 值)现在是 4,优先级现在设置为 20,而不是 15。这对于降低优先级非常有帮助。
以上是“Linux中skill命令怎么用”这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注亿速云行业资讯频道!
声明:本站所有文章资源内容,如无特殊说明或标注,均为采集网络资源。如若本站内容侵犯了原著者的合法权益,可联系本站删除。