Linux中skill命令怎么用(linux,skill,开发技术)

时间:2024-05-06 00:27:39 作者 : 石家庄SEO 分类 : 开发技术
  • TAG :

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。这对于降低优先级非常有帮助。

 </div> <div class="zixun-tj-product adv-bottom"></div> </div> </div> <div class="prve-next-news">
本文:Linux中skill命令怎么用的详细内容,希望对您有所帮助,信息来源于网络。
上一篇:Linux中ssh-keyscan命令怎么用下一篇:

4 人围观 / 0 条评论 ↓快速评论↓

(必须)

(必须,保密)

阿狸1 阿狸2 阿狸3 阿狸4 阿狸5 阿狸6 阿狸7 阿狸8 阿狸9 阿狸10 阿狸11 阿狸12 阿狸13 阿狸14 阿狸15 阿狸16 阿狸17 阿狸18