以下是Process Management使用的常用命令 -

bg,fg,nohup,ps,pstree,top,kill,killall,免费,正常运行时间,很好。

与过程一起工作

快速提示:Linux中的进程PID

在Linux中,每个正在运行的进程都有一个PID或进程ID号。这个 PID 是CentOS如何识别特定进程的。正如我们所讨论的, systemd

是第一个启动的进程,并且在CentOS中给出1的PID。

Pgrep 用于获取给定进程名称的Linux PID。

[root@CentOS]# pgrep systemd

1

[root@CentOS]#

如所见, pgrep 命令返回systemd的当前PID。

CentOS中基本的CentOS过程和作业管理

在Linux中使用进程时,知道在命令行中如何执行基本的前台进程和后台进程很重要。

fg - 将流程引入前台

bg - 将进程移至背景

jobs - 附加到shell的当前进程的列表

ctrl + z - Control + z组合键可以睡眠当前进程

& - 在后台启动进程

我们开始使用shell命令 sleep 。 睡眠 只是按照它的名字命名,睡一段时间: 睡眠 。

[root@CentOS ~]$ jobs

[root@CentOS ~]$ sleep 10 &

[1] 12454

[root@CentOS ~]$ sleep 20 &

[2] 12479

[root@CentOS ~]$ jobs

[1]- Running sleep 10 &

[2]+ Running sleep 20 &

[cnetos@CentOS ~]$

现在,让我们把第一份工作带到前台 -

[root@CentOS ~]$ fg 1

sleep 10

如果你正在跟随,你会注意到前台作业被困在你的shell中。现在,我们让这个进程进入休眠状态,然后在后台重新启用它。

点击控制+ z

键入:bg 1,将第一个作业发送到后台并启动它。

[root@CentOS ~]$ fg 1

sleep 20

^Z

[1]+ Stopped sleep 20

[root@CentOS ~]$ bg 1

[1]+ sleep 20 &

[root@CentOS ~]$

nohup

从shell或终端进行工作时,值得注意的是,默认情况下,所有连接到shell的进程和作业在shell关闭或用户注销时都会终止。当使用 nohup

时,如果用户注销或关闭进程所连接的shell,进程将继续运行。

[root@CentOS]# nohup ping www.google.com &

[1] 27299

nohup: ignoring input and appending output to ‘nohup.out’

[root@CentOS]# pgrep ping

27299

[root@CentOS]# kill -KILL `pgrep ping`

[1]+ Killed nohup ping www.google.com

[root@CentOS rdc]# cat nohup.out

PING www.google.com (216.58.193.68) 56(84) bytes of data.

64 bytes from sea15s07-in-f4.1e100.net (216.58.193.68): icmp_seq = 1 ttl = 128

time = 51.6 ms

64 bytes from sea15s07-in-f4.1e100.net (216.58.193.68): icmp_seq = 2 ttl = 128

time = 54.2 ms

64 bytes from sea15s07-in-f4.1e100.net (216.58.193.68): icmp_seq = 3 ttl = 128

time = 52.7 ms

ps命令

该 PS 命令通常由管理员用于调查一个特定进程的快照。 ps 通常与 grep 一起使用来过滤要分析的特定进程。

[root@CentOS ~]$ ps axw | grep python

762 ? Ssl 0:01 /usr/bin/python -Es /usr/sbin/firewalld --nofork -nopid

1296 ? Ssl 0:00 /usr/bin/python -Es /usr/sbin/tuned -l -P

15550 pts/0 S+ 0:00 grep --color=auto python

在上面的命令中,我们看到了所有使用 python 解释器的进程。结果中还包括我们的grep命令,查找字符串 python 。

以下是与 ps 一起使用的最常用的命令行开关。

参数

命令

a

排除仅限当前用户的报告流程的限制

x

显示不附加到tty或shell的进程

w

格式化输出的宽输出显示

e

显示命令后的环境

-e

选择所有进程

-o

用户定义的格式化输出

-u

显示特定用户的所有进程

-C

按名称或进程ID显示所有进程

--sort

按定义对进程进行排序

要查看 nobody 用户使用的所有进程-

[root@CentOS ~]$ ps -u nobody

PID TTY TIME CMD

1853 ? 00:00:00 dnsmasq

[root@CentOS ~]$

要查看关于 firewalld 进程的所有信息-

[root@CentOS ~]$ ps -wl -C firewalld

F S UID PID PPID C PRI NI ADDR SZ WCHAN TTY TIME CMD

0 S 0 762 1 0 80 0 - 81786 poll_s ? 00:00:01 firewalld

[root@CentOS ~]$

让我们看看哪些进程消耗的内存最多 -

[root@CentOS ~]$ ps aux --sort=-pmem | head -10

USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND

cnetos 6130 0.7 5.7 1344512 108364 ? Sl 02:16 0:29 /usr/bin/gnome-shell

cnetos 6449 0.0 3.4 1375872 64440 ? Sl 02:16 0:00 /usr/libexec/evolution-calendar-factory

root 5404 0.6 2.1 190256 39920 tty1 Ssl+ 02:15 0:27 /usr/bin/Xorg :0 -background none -noreset -audit 4 -verbose -auth /run/gdm/auth-for-gdm-iDefCt/database -seat seat0 -nolisten tcp vt1

cnetos 6296 0.0 1.7 1081944 32136 ? Sl 02:16 0:00 /usr/libexec/evolution/3.12/evolution-alarm-notify

cnetos 6350 0.0 1.5 560728 29844 ? Sl 02:16 0:01 /usr/bin/prlsga

cnetos 6158 0.0 1.4 1026956 28004 ? Sl 02:16 0:00 /usr/libexec/gnome-shell-calendar-server

cnetos 6169 0.0 1.4 1120028 27576 ? Sl 02:16 0:00 /usr/libexec/evolution-source-registry

root 762 0.0 1.4 327144 26724 ? Ssl 02:09 0:01 /usr/bin/python -Es /usr/sbin/firewalld --nofork --nopid

cnetos 6026 0.0 1.4 1090832 26376 ? Sl 02:16 0:00 /usr/libexec/gnome-settings-daemon

[root@CentOS ~]$

按用户centos和格式查看所有进程,显示自定义输出 -

[cnetos@CentOS ~]$ ps -u cnetos -o pid,uname,comm

PID USER COMMAND

5802 centos gnome-keyring-d

5812 cnetos gnome-session

5819 cnetos dbus-launch

5820 cnetos dbus-daemon

5888 cnetos gvfsd

5893 cnetos gvfsd-fuse

5980 cnetos ssh-agent

5996 cnetos at-spi-bus-laun

pstree命令

pstree 与 ps 类似,但不经常使用。它以整洁树形式显示进程。

[centos@CentOS ~]$ pstree

systemd─┬─ModemManager───2*[{ModemManager}]

├─NetworkManager─┬─dhclient

│ └─2*[{NetworkManager}]

├─2*[abrt-watch-log]

├─abrtd

├─accounts-daemon───2*[{accounts-daemon}]

├─alsactl

├─at-spi-bus-laun─┬─dbus-daemon───{dbus-daemon}

│ └─3*[{at-spi-bus-laun}]

├─at-spi2-registr───2*[{at-spi2-registr}]

├─atd

├─auditd─┬─audispd─┬─sedispatch

│ │ └─{audispd}

│ └─{auditd}

├─avahi-daemon───avahi-daemon

├─caribou───2*[{caribou}]

├─cgrulesengd

├─chronyd

├─colord───2*[{colord}]

├─crond

├─cupsd

pstree 的总输出可以超过100行。通常, ps 会提供更多有用的信息。

顶部命令

**在Linux中解决性能问题时,top** 是最常用的命令之一。它对于Linux中的实时统计和过程监控非常有用。以下是从命令行调出的

top 的默认输出。

Tasks: 170 total, 1 running, 169 sleeping, 0 stopped, 0 zombie

%Cpu(s): 2.3 us, 2.0 sy, 0.0 ni, 95.7 id, 0.0 wa, 0.0 hi, 0.0 si, 0.0 st

KiB Mem : 1879668 total, 177020 free, 607544 used, 1095104 buff/cache

KiB Swap: 3145724 total, 3145428 free, 296 used. 1034648 avail Mem

PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND

5404 root 20 0 197832 48024 6744 S 1.3 2.6 1:13.22 Xorg

8013 centos 20 0 555316 23104 13140 S 1.0 1.2 0:14.89 gnome-terminal-

6339 centos 20 0 332336 6016 3248 S 0.3 0.3 0:23.71 prlcc

6351 centos 20 0 21044 1532 1292 S 0.3 0.1 0:02.66 prlshprof

顶部运行时使用的常用 热键 (当顶部运行在shell中时按 热键 可访问 热键 )。

命令

动作

b

在顶部菜单上启用/禁用粗体突出显示

z

循环配色方案

l

循环加载平均标题

m

循环内存平均标题

t

任务信息标题

h

帮助菜单

Shift+F

定制的排序和显示字段

以下是 top 的常用命令行开关。

命令

动作

-o

按列排序(可以使用 - 或+排序升序或降序)

-u

仅显示来自指定用户的进程

-d

更新top的延迟时间

-O

返回顶部可以应用排序的列的列表

排序选项屏幕在顶部,使用 Shift+F 显示_ 。该屏幕允许自定义 top 显示和排序选项。

Fields Management for window 1:Def, whose current sort field is %MEM

Navigate with Up/Dn, Right selects for move then or Left commits,

'd' or toggles display, 's' sets sort. Use 'q' or to end!

* PID = Process Id TGID = Thread Group Id

* USER = Effective User Name ENVIRON = Environment vars

* PR = Priority vMj = Major Faults delta

* NI = Nice Value vMn = Minor Faults delta

* VIRT = Virtual Image (KiB) USED = Res+Swap Size (KiB)

* RES = Resident Size (KiB) nsIPC = IPC namespace Inode

* SHR = Shared Memory (KiB) nsMNT = MNT namespace Inode

* S = Process Status nsNET = NET namespace Inode

* %CPU = CPU Usage nsPID = PID namespace Inode

* %MEM = Memory Usage (RES) nsUSER = USER namespace Inode

* TIME+ = CPU Time, hundredths nsUTS = UTS namespace Inode

* COMMAND = Command Name/Line

PPID = Parent Process pid

UID = Effective User Id

top ,显示用户 rdc 的进程并按内存使用情况进行排序

PID USER %MEM PR NI VIRT RES SHR S %CPU TIME+ COMMAND

6130 rdc 6.2 20 0 1349592 117160 33232 S 0.0 1:09.34 gnome-shell

6449 rdc 3.4 20 0 1375872 64428 21400 S 0.0 0:00.43 evolution-calen

6296 rdc 1.7 20 0 1081944 32140 22596 S 0.0 0:00.40 evolution-alarm

6350 rdc 1.6 20 0 560728 29844 4256 S 0.0 0:10.16 prlsga

6281 rdc 1.5 20 0 1027176 28808 17680 S 0.0 0:00.78 nautilus

6158 rdc 1.5 20 0 1026956 28004 19072 S 0.0 0:00.20 gnome-shell-cal

显示有效的顶部字段(精简)

[centos@CentOS ~]$ top -O

PID

PPID

UID

USER

RUID

RUSER

SUID

SUSER

GID

GROUP

PGRP

TTY

TPGID

kill 命令

所述 kill 命令用于杀死从通过它的PID命令外壳的方法。在 杀死 进程时,我们需要指定要发送的信号。该信号让内核知道我们想如何结束这个过程。最常用的信号是

SIGTERM 是暗示的,因为内核让进程知道它应该尽快停止,因为这样做是安全的。 SIGTERM 为流程提供了一个良好退出并执行安全退出操作的机会。

SIGHUP 大多数守护进程会在发送 SIGHUP 时重新启动。在对配置文件进行更改时,这通常用于进程。

因为 SIGTERM 与 SIGKILL 相当于要求进程关闭。内核需要一个选项来结束一个不符合请求的进程。当进程挂起时, SIGKILL 选项用于明确关闭进程。

有关列表关闭,可与所有要发送的信号 kill 的 -l 选项可以使用

[root@CentOS]# kill -l

1) SIGHUP 2) SIGINT 3) SIGQUIT 4) SIGILL 5) SIGTRAP

6) SIGABRT 7) SIGBUS 8) SIGFPE 9) SIGKILL 10) SIGUSR1

11) SIGSEGV 12) SIGUSR2 13) SIGPIPE 14) SIGALRM 15) SIGTERM

16) SIGSTKFLT 17) SIGCHLD 18) SIGCONT 19) SIGSTOP 20) SIGTSTP

21) SIGTTIN 22) SIGTTOU 23) SIGURG 24) SIGXCPU 25) SIGXFSZ

26) SIGVTALRM 27) SIGPROF 28) SIGWINCH 29) SIGIO 30) SIGPWR

31) SIGSYS 34) SIGRTMIN 35) SIGRTMIN+1 36) SIGRTMIN+2 37) SIGRTMIN+3

38) SIGRTMIN+4 39) SIGRTMIN+5 40) SIGRTMIN+6 41) SIGRTMIN+7 42) SIGRTMIN+8

43) SIGRTMIN+9 44) SIGRTMIN+10 45) SIGRTMIN+11 46) SIGRTMIN+12 47) SIGRTMIN+13

48) SIGRTMIN+14 49) SIGRTMIN+15 50) SIGRTMAX-14 51) SIGRTMAX-13 52) SIGRTMAX-12

53) SIGRTMAX-11 54) SIGRTMAX-10 55) SIGRTMAX-9 56) SIGRTMAX-8 57) SIGRTMAX-7

58) SIGRTMAX-6 59) SIGRTMAX-5 60) SIGRTMAX-4 61) SIGRTMAX-3 62) SIGRTMAX-2

63) SIGRTMAX-1 64) SIGRTMAX

[root@CentOS rdc]#

使用 SIGHUP 重新启动系统。

[root@CentOS]# pgrep systemd

1

464

500

643

15071

[root@CentOS]# kill -HUP 1

[root@CentOS]# pgrep systemd

1

464

500

643

15196

15197

15198

[root@CentOS]#

pkill 将允许管理员通过进程名称发送 kill 信号。

[root@CentOS]# pgrep ping

19450

[root@CentOS]# pkill -9 ping

[root@CentOS]# pgrep ping

[root@CentOS]#

killall 会杀死所有进程。小心使用 killall 作为根,因为它会杀死所有用户的所有进程。

[root@CentOS]# killall chrome

free命令

free 是一个非常简单的命令,通常用于快速检查系统的内存。它显示使用的物理和交换内存的总量。

[root@CentOS]# free

total used free shared buff/cache available

Mem: 1879668 526284 699796 10304 653588 1141412

Swap: 3145724 0 3145724

[root@CentOS]#

nice 命令

nice 将允许管理员根据CPU使用情况设置进程的调度优先级。好处基本上是内核如何为进程或作业调度CPU时间片。默认情况下,假定进程被赋予对CPU资源的平等访问权限。

首先,我们使用top来检查当前正在运行的进程的好处。

PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND

28 root 39 19 0 0 0 S 0.0 0.0 0:00.17 khugepaged

690 root 39 19 16808 1396 1164 S 0.0 0.1 0:00.01 alsactl]

9598 rdc 39 19 980596 21904 10284 S 0.0 1.2 0:00.27 tracker-extract

9599 rdc 39 19 469876 9608 6980 S 0.0 0.5 0:00.04 tracker-miner-a

9609 rdc 39 19 636528 13172 8044 S 0.0 0.7 0:00.12 tracker-miner-f

9611 rdc 39 19 469620 8984 6496 S 0.0 0.5 0:00.02 tracker-miner-u

27 root 25 5 0 0 0 S 0.0 0.0 0:00.00 ksmd

637 rtkit 21 1 164648 1276 1068 S 0.0 0.1 0:00.11 rtkit-daemon

1 root 20 0 128096 6712 3964 S 0.3 0.4 0:03.57 systemd

2 root 20 0 0 0 0 S 0.0 0.0 0:00.01 kthreadd

3 root 20 0 0 0 0 S 0.0 0.0 0:00.50 ksoftirqd/0

7 root 20 0 0 0 0 S 0.0 0.0 0:00.00 migration/0

8 root 20 0 0 0 0 S 0.0 0.0 0:00.00 rcu_bh

9 root 20 0 0 0 0 S 0.0 0.0 0:02.07 rcu_sched

我们想要关注 NI 描绘的 NICE 专栏。好的范围可以是-20到19之间的任何值。-20表示给定的最高优先级。 __

nohup nice --20 ping www.google.com&

renice

renice 允许我们改变已经运行的进程的当前优先级。

renice 17 -p 30727

上述命令会降低我们的 ping 进程命令的优先级。

linux+pid的管理,Linux 进程管理相关推荐

  1. linux基础知识_压缩—进程管理-网络管理-ftp-nfs-ssh-scp

    linux基础知识_压缩-进程管理-网络管理-ftp-nfs-ssh-scp 1.压缩包管理 gzip .gz格式的压缩包,不打包,分别压缩,原文件消失 bzip2 .bz2格式的压缩包,原文件不会消 ...

  2. Linux网络技术管理及进程管理(week2_day4)--技术流ken...

    Linux网络技术管理及进程管理(week2_day4)--技术流ken OSI七层模型和TCP/IP四层模型 OSI七层模型:OSI(Open System Interconnection)开放系统 ...

  3. 通过fork来剖析Linux内核的内存管理和进程管理(上)

    1.开场白 本文主要从内存管理和进程管理两个维度来窥探一下fork背后隐藏的技术细节,希望能够通过本文让大家站在一个高度去看进程创建. 全文分为两部分讲解:fork的内存管理部分和进程管理部分,内存管 ...

  4. Liunx网络技术管理及进程管理

    Linux网络技术管理及进程管理(week2_day4) OSI七层模型和TCP/IP四层模型 OSI七层模型:OSI(Open System Interconnection)开放系统互连参考模型是国 ...

  5. android高版本软件管理器,进程管理器 高级版

    进程管理器是一款手机内存清理和进程管理的系统工具软件:它可以使你更加方便的切换和关闭正在运行的程序. 功能: 1.通知栏一键终止任务/进程: 2.忽略任务/进程设置: 3.任务/进程负载.内存.CPU ...

  6. linux内核设计与实现---进程管理

    进程管理 1 进程描述符及任务结构 分配进程描述符 进程描述符的存放 进程状态 设置当前进程状态 进程上下文 进程家族树 2 进程创建 写时拷贝 fork() vfork() 3 线程在Linux中的 ...

  7. 【Linux】ps和top进程管理命令

    ps命令和top都是查看Linux系统进程相关信息,即进程管理工具. 1. ps和top命令区别 1.1 ps命令 可以查看进程的瞬间信息(系统在过去执行的进程的静态快照). 只看到的是命令执行瞬间的 ...

  8. Linux 基本管理命令(系统管理,用户管理,进程管理)

    目录 系统管理 man 介绍 语法 man常用的参数 shutdown(关机命令) shutdown文档 语法 参数说明 实例 reboot 介绍 语法 参数说明 实例 sudo命令 介绍 语法 参数 ...

  9. Linux 压缩管理、进程管理、网络管理命令总结

    一.压缩管理1 bunzip21.1 功能说明.bz2 文件的解压缩程序.1.2 语法bunzip2 [-fkLsvV][.bz2 压缩文件]1.3 补充说明bunzip2 可解压缩.bz2 格式的压 ...

  10. 11、Linux系统基础原理、进程管理工具、任务计划

    Linux进程及作业管理 ​ 内核的功用:进程管理.文件系统.网络功能.内存管理.驱动程序.安全功能 ​ Process: 运行中的程序的一个副本: ​ 存在生命周期 Linux内核存储进程信息的固定 ...

最新文章

  1. leetcode算法题--环绕字符串中唯一的子字符串★
  2. nyoj 47 江 河问题 【贪婪】
  3. javaweb功能模块如何合理设计_产品设计:如何设计出合理的凑单模式?
  4. WPF- 模拟触发Touch Events
  5. leetcode-7-整数翻转
  6. SQL计算100以内的质数(可以把100换成任意的整数)
  7. Java8-Guava实战示例
  8. 前端和后端哪个工资高_新媒体运营和网络运维哪个好,哪个工资待遇高,门槛低?...
  9. 华为仿苹果字体_苹果手机和华为手机,同样的网络下为何我的手机网速这么差?...
  10. hnu 暑期实训之web导航
  11. Go发起Http请求及获取相关参数
  12. putExtra方法
  13. 20211213软件测试基础达内视频笔记
  14. cmake 安装不同版本
  15. [数字图像处理]频域滤波(2)--高通滤波器,带阻滤波器与陷波滤波器
  16. Windows常见的几种权限维持
  17. SqlServer中的Top * With Ties
  18. php 提取数字,php如何实现只取数字的功能
  19. 显示器竖屏显示会字体发虚的解决方法
  20. iis 6.0部署asp网站

热门文章

  1. 习题3-4 统计学生成绩(15 分)
  2. 班级花名册xlsx文件CSV写入
  3. 基于磁阻传感器的断路保护装置设计
  4. App上传GooglePlay后,微信登录及Facebook登录异常
  5. 搞定Markdown中的图片,一劳永逸的方法!
  6. 改造industrial_robot_simulator给joint_states的velocity赋值,便于测试轨迹规划的速度平滑性
  7. 20210325BERNESE软件中LEO_POD模块说明
  8. java生命游戏_实用---生命游戏 Java
  9. IT工程师 毕业4年我年薪涨到30万
  10. 业务巡检-系统巡检该怎么做