序号 001
查看端口被哪个进程占用
1. lsof -i:端口号, 查看某一端口的占用情况
[root@localhost bin]# lsof -i:8080
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
java 3511 root 46u IPv6 31351 0t0 TCP *:webcache (LISTEN)
COMMAND:进行成名,如上说明8080被一个java进程占用
PID:进程的ID,一般杀掉进程时就是指定进程的PID
USER:进程所有者
2. netstat -ntlp:查看当前所有tcp端口
结合grep可以进一步查看具体端口号的占用情况
netstatstat -tunlp|grep 端口号,查看端口占用情况
-t , 显示tcp的相关选项
-u, 显示udp的相关选项
-n, 拒绝显示别名,能显示数字的全部转化为数字
-l, 仅列出在Listen(监听)的服务状态
-p, 显示建立相关链接的程序名
[root@localhost bin]# netstat -tunlp|grep 8080
tcp6 0 0 :::8080 :::* LISTEN 3511/java
上述结果表示8080端口被一个进程ID为3511的Java进程占用
[root@ops01 ~]# netstat -tunlp|grep 3000
tcp6 0 0 :::3000 :::* LISTEN 13298/node /u01/WSS
上述结果表示3000端口被一个进程ID为13298的node程序占用
序号 002
根据程序名称查看进程id
1. ps -ef|grep 进程名
ps -ef 是显示所有进程
UID:进程拥有者
PID:进程ID
PPID:上级父程序的ID
C: CPU 使用的资源百分比
STIME:系统启动时间
TTY:登入者的终端机位置
TIME:使用掉的 CPU 时间
CMD:所下达的指令名称
例如查询nginx相关进程状态
[root@ops01 ~]# ps -ef|grep nginx