常用命令
知识来源《linux就该这么学》https://www.linuxprobe.com/basic-learning-02.html
程序运行状态
R(运行):进程正在运行或在运行队列中等待。
S(中断):进程处于休眠中,当某个条件形成后或者接收到信号时,则脱离该 状态。
D(不可中断):进程不响应系统异步信号,即便用kill命令也不能将其中断。
Z(僵死):进程已经终止,但进程描述符依然存在, 直到父进程调用wait4()系统函数后将进程释放。
T(停止):进程收到停止信号后停止运行。
**补充状态**
高优先级(<)、低优先级(N)、被锁进内存(L)、包含子进程(s)以及多线程(l)
命令
ps
查看系统中的进程状态
参数
-a 显示所有进程(包括其他用户的进程)
-u 用户以及其他详细信息
-x 显示没有控制终端的进程
ps aux
USER | PID | %CPU | %MEM | VSZ | RSS | TTY | STAT | START | TIME | COMMAND |
---|---|---|---|---|---|---|---|---|---|---|
进程的所有者 | 进程ID号 | 运算器占用率 | 内存占用率 | 虚拟内存使用量(单位是KB) | 占用的固定内存量(单位是KB) | 所在终端 | 进程状态 | 被启动的时间 | 实际使用CPU的时间 | 命令名称与参数 |
root | 1 | 0.0 | 0.5 | 244740 | 10636 | ? | Ss | 07:54 | 0:02 | /usr/lib/systemd/ |
root | 463 | 0.0 | 0.2 | 315608 | 11596 | ? | Ssl | 12:31 | 0:00 | /usr/bin/Mode |
pstree
查看系统进程数
systemd─┬─ModemManager───2*[{ModemManager}]
├─NetworkManager───2*[{NetworkManager}]
├─accounts-daemon───2*[{accounts-daemon}]
├─bluetoothd
├─colord───2*[{colord}]
├─cupsd
├─dbus-daemon
├─gdm─┬─gdm-session-wor─┬─gdm-x-session─┬─Xorg───{Xorg}
│ │ │ ├─gnome-session-b───3*[{gnome-s+
│ │ │ └─2*[{gdm-x-session}]
│ │ └─2*[{gdm-session-wor}]
│ └─2*[{gdm}]
top
动态地监视进程活动及系统负载等信息
$top
top - 23:25:34 up 10:54, 1 user, load average: 0.60, 0.41, 0.37
任务: 239 total, 1 running, 238 sleeping, 0 stopped, 0 zombie
%Cpu(s): 0.9 us, 2.3 sy, 0.0 ni, 95.8 id, 0.1 wa, 0.8 hi, 0.2 si, 0.0 st
MiB Mem : 3888.2 total, 336.8 free, 1483.1 used, 2068.3 buff/cache
MiB Swap: 8191.6 total, 8189.8 free, 1.9 used. 2029.1 avail Mem
进程号 USER PR NI VIRT RES SHR %CPU %MEM TIME+ COMMAND
1082 manjaro 20 0 379096 139708 84036 S 5.3 3.5 5:06.57 Xorg
1183 manjaro 20 0 5071444 367524 157124 S 4.0 9.2 12:36.36 gnome-s+
20912 manjaro 20 0 682872 66840 51136 S 3.3 1.7 0:03.14 gnome-t+
20354 manjaro 20 0 11.7g 570140 298332 S 2.6 14.3 5:06.59 firefox
……
第1行:系统时间、运行时间、登录终端数、系统负载(3个数值分别为1分钟、5分钟、15分钟内的平均值,数值越小意味着负载越低)。
第2行:进程总数、运行中的进程数、睡眠中的进程数、停止的进程数、僵死的进程数。
第3行:用户占用资源百分比、系统内核占用资源百分比、改变过优先级的进程资源百分比、空闲的资源百分比等。其中数据均为CPU数据并以百分比格式显示,例如“99.9 id”意味着有99.9%的CPU处理器资源处于空闲。
第4行:物理内存总量、内存空闲量、内存使用量、作为内核缓存的内存量。
第5行:虚拟内存总量、虚拟内存空闲量、虚拟内存使用量、已被提前加载的内存量。
nice
调整进程的优先级
nice -n -20 bash
在top命令输出的结果中,PR和NI值代表的是进程的优先级,数字越低(取值范围是-20~19),优先级越高。
pidof
查询某个指定服务进程的PID号码值
$pidof zsh
20967 20966 20956 20948
kill
终止某个指定PID值的服务进程
参数
-l 信号,若果不加信号的编号参数,则使用“-l”参数会列出全部的信号名称
-a 当处理当前进程时,不限制命令名和进程号的对应关系
-p 指定kill 命令只打印相关进程的进程号,而不发送任何信号
-s 指定发送信号
-u 指定用户
# 结束单个进程
$kill 20967
# 强制结束单个进程
$kill -9 20967
# 结束指定用户进程
kill -u peidalinux
# 筛选指定用户进程,并结束
kill -9 $(ps -ef | grep peidalinux)
# 结束所有进程
kill -9 -1
killall
终止某个指定名称的服务所对应的全部进程
# 查询服务pid
$pidof httpd
13581 13580 13579 13578 13577 13576
# 结束服务对应所有进程
$killall httpd
ifconfig
查看网卡配置与网络状态等信息
ens33: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
inet 192.168.78.128 netmask 255.255.255.0 broadcast 192.168.78.255
inet6 fe80::1016:f12:697a:9ea6 prefixlen 64 scopeid 0x20<link>
ether 00:0c:29:bb:63:20 txqueuelen 1000 (Ethernet)
RX packets 213097 bytes 246342779 (234.9 MiB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 54686 bytes 13192993 (12.5 MiB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
uname
查看系统内核版本与系统架构等信息
# 查看系统名称
$uname
Linux
# 查看内核版本与架构信息
$uname -a
Linux linuxprobe.com 4.18.0-80.el8.x86_64 #1 SMP Wed Mar 13 12:02:46 UTC 2019 x86_64 x86_64 x86_64 GNU/Linux
# 查看系统版本信息
cat /etc/redhat-release
Red Hat Enterprise Linux release 8.0 (Ootpa)