查端口号,查进程号,杀进程

本文介绍了如何使用lsof、netstat、ps、kill等命令查询和管理Linux系统中的进程,包括查询端口占用、查找进程信息及优雅地结束或重启进程等实用技巧。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

lsof -i:端口号    查询占用该端口号的进程(只能以root的权限执行)

netstat -apn | grep 端口号 查询占用该端口号的进程

ps -ef|grep  PID  查询进程信息

kill PID 杀死进程

 

杀死进程最安全的方法是单纯使用kill命令,不加修饰符,不带标志。

 首先使用ps -ef命令确定要杀死进程的PID,然后输入以下命令:
 
# kill -pid
 
注释:标准的kill命令通常都能达到目的。终止有问题的进程,并把进程的资源释放给系统。然而,如果进程启动了子进程,只杀死父进程,子进程仍在运行,因此仍消耗资源。为了防止这些所谓的“僵尸进程”,应确保在杀死父进程之前,先杀死其所有的子进程。
 
确定要杀死进程的PID或PPID
 
# ps -ef | grep httpd
 
以优雅的方式结束进程
 
# kill -l PID
 
-l选项告诉kill命令用好像启动进程的用户已注销的方式结束进程。当使用该选项时,kill命令也试图杀死所留下的子进程。但这个命令也不是总能成功--或许仍然需要先手工杀死子进程,然后再杀死父进程。
 
TERM信号
 
给父进程发送一个TERM信号,试图杀死它和它的子进程。
 
# kill -TERM PPID
 
killall命令
 
killall命令杀死同一进程组内的所有进程。其允许指定要终止的进程的名称,而非PID。
 
# killall httpd
 
停止和重启进程
 
有时候只想简单的停止和重启进程。如下:
 
# kill -HUP PID
 
该命令让Linux和缓的执行进程关闭,然后立即重启。在配置应用程序的时候,这个命令很方便,在对配置文件修改后需要重启进程时就可以执行此命令。
 
绝杀 kill -9 PID
 
同意的 kill -s SIGKILL
 
这个强大和危险的命令迫使进程在运行时突然终止,进程在结束后不能自我清理。危害是导致系统资源无法正常释放,一般不推荐使用,除非其他办法都无效。
 
当使用此命令时,一定要通过ps -ef确认没有剩下任何僵尸进程。只能通过终止父进程来消除僵尸进程。如果僵尸进程被init收养,问题就比较严重了。杀死init进程意味着关闭系统。
 
如果系统中有僵尸进程,并且其父进程是init,而且僵尸进程占用了大量的系统资源,那么就需要在某个时候重启机器以清除进程表了。
### 如何在 Linux 上通过端口号杀死进程 在 Linux 中,可以通过一系列命令来找到占用特定端口的进程并将其终止。以下是具体方法: #### 找占用指定端口的进程 可以使用 `lsof` 或 `netstat` 命令来找哪个进程占用了某个特定的端口。 1. 使用 `lsof` 命令: 如果安装了 `lsof` 工具,则可以直接运行以下命令来看哪些进程正在监听或连接到给定的端口[^3]。 ```bash lsof -i :PortNumber ``` 2. 使用 `netstat` 命令: 另一种方式是利用 `netstat` 来获取相同的信息。此命令会显示网络状态以及对应的 PID 和程序名称[^4]。 ```bash netstat -tulnpe | grep PortNumber ``` #### 获取进程 ID (PID) 无论是上述哪种方法,都会返回一个包含该端口所关联的进程信息的结果列表。其中最重要的字段之一就是 **PID**(Process Identifier),它唯一标识了一个操作系统中的进程。 #### 终止目标进程 一旦获得了所需的 PID ,就可以执行下面的操作来停止这个进程: - 方法一:基本形式 运行简单的 kill 指令即可向选定的目标发送 SIGTERM(信号编号为15)[^5]: ```bash kill -15 PID ``` - 方法二:强制关闭 若常规手段无法正常结束任务,则可尝试更加强制的方式——即发出 SIGHUP(挂起信号)或者直接SIGKILL(9号信号): ```bash kill -9 PID ``` 以上就是在 Linux 平台上依据端口号定位相应服务进而实施清理工作的全过程描述。 ```bash # Example commands sequence for killing a process based on its port number. PORT=8080 PID=$(lsof -t -i:$PORT) if [ ! -z "$PID" ]; then echo "Stopping process $PID..." kill -15 $PID || kill -9 $PID fi ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值