Linux命令之杀掉被占用的端口号
前言
场景介绍
项目启动失败或者启动成功访问报404,很可能是访问端口被占用导致,记录一下杀死被占用端口的常用命令,共同学习
实现过程
方案1
查找被占用的端口号
netstat -tln | grep 8081netstat -anp | grep 8081 # 显示正在使用Socket的程序识别码和程序名称
如图,最后一列监控状态为 LISTEN 表示已经被占用
此处注意,图中显示的LISTENING并不表示端口被占用,不要和LISTEN混淆,查看具体端口时候,必须要看到tcp,端口号,LISTEN那一行,才表示端口被占用了
查找被占用的端口PID
以普通用户操作,故加上了sudo,如果是以root用户操作,不用加sudo即可查看
sudo lsof -i:8081
kill对应进程
kill -9 29686
方案2
一个命令关闭某个端口占用
# 这个命令亲测不好使,欢迎解答原因kill netstat -nlp | grep :端口号| awk '{print $7}' | awk -F"/" '{ print $1 }'
命令详解
ps
选项介绍
-A 显示所有进程(等价于-e)(utility)
-a 显示一个终端的所有进程,除了会话引线
-N 忽略选择。
-d 显示所有进程,但省略所有的会话引线(utility)
-x 显示没有控制终端的进程,同时显示各个命令的具体路径。dx不可合用。(utility)
-p pid 进程使用cpu的时间
-u uid or username 选择有效的用户id或者是用户名
-g gid or groupname 显示组的所有进程。
U username 显示该用户下的所有进程,且显示各个命令的详细路径。如:ps U zhang;(utility)
-f 全部列出,通常和其他选项联用。如:ps -fa or ps -fx and so on.
-l 长格式(有F,wchan,C 等字段)
-j 作业格式
-o 用户自定义格式。
v 以虚拟存储器格式显示
s 以信号格式显示
-m 显示所有的线程
-H 显示进程的层次(和其它的命令合用,如:ps -Ha)(utility)
e 命令之后显示环境(如:ps -d e; ps -a e)(utility)
h 不显示第一行常用指令
ps -ef | grep tomcat # ps 与grep 常用组合用法,查找特定进程,连同命令行ps -aux | grep tomcat
netstat
选项介绍
-a或–all:显示所有连线中的Socket;
-A<网络类型>或–<网络类型>:列出该网络类型连线中的相关地址;
-c或–continuous:持续列出网络状态;
-C或–cache:显示路由器配置的快取信息;
-e或–extend:显示网络其他相关信息;
-F或–fib:显示FIB;
-g或–groups:显示多重广播功能群组组员名单;
-h或–help:在线帮助;
-i或–interfaces:显示网络界面信息表单;
-l或–listening:显示监控中的服务器的Socket;
-M或–masquerade:显示伪装的网络连线;
-n或–numeric:直接使用ip地址,而不通过域名服务器;
-N或–netlink或–symbolic:显示网络硬件外围设备的符号连接名称;
-o或–timers:显示计时器;
-p或–programs:显示正在使用Socket的程序识别码和程序名称;
-r或–route:显示Routing Table;
-s或–statistice:显示网络工作信息统计表;
-t或–tcp:显示TCP传输协议的连线状况;
-u或–udp:显示UDP传输协议的连线状况;
-v或–verbose:显示指令执行过程;
-V或–version:显示版本信息;
-w或–raw:显示RAW传输协议的连线状况;
-x或–unix:此参数的效果和指定"-A unix"参数相同;
–ip或–inet:此参数的效果和指定"-A inet"参数相同。常用指令
netstat -at # 列出所有TCP端口netstat -lt # 显示监听TCP端口netstat -st # 显示所有TCP的统计信息netstat -p # 显示 PID 和进程名称netstat -r # 路由信息netstat -antp | grep ssh # 查看服务netstat -antp | grep 22 # 查看端口 n 显示ip p显示程序
lsof
选项介绍
lsof filename 显示打开指定文件的所有进程
lsof -a 表示两个参数都必须满足时才显示结果
lsof -c string 显示COMMAND列中包含指定字符的进程所有打开的文件
lsof -u username 显示所属user进程打开的文件
lsof -g gid 显示归属gid的进程情况
lsof +d /DIR/ 显示目录下被进程打开的文件
lsof +D /DIR/ 同上,但是会搜索目录下的所有目录,时间相对较长
lsof -d FD 显示指定文件描述符的进程
lsof -n 不将IP转换为hostname,缺省是不加上-n参数
lsof -i 用以显示符合条件的进程情况lsof -i46@hostname|hostaddr
46 –> IPv4 or IPv6
protocol –> TCP or UDP
hostname –> Internet host name
hostaddr –> IPv4地址
service –> /etc/service中的 service name (可以不只一个)
port –> 端口号 (可以不只一个)常用指令
lsof -i:4000 # 查看所属root用户进程所打开的文件类型为txt的文件:
参考链接
Linux 如何kill杀死(关闭)某个被占用的端口
https://blog.csdn.net/qq_39213969/article/details/103857714
LINUX中如何查看某个端口是否被占用
https://www.cnblogs.com/hindy/p/7249234.html
ps 命令详解
https://blog.csdn.net/freeking101/article/details/53444530
inux系统下ps -aux和ps -ef命令参数的作用及区别详解
https://cloud.tencent.com/developer/article/1357618
Linux命令之杀掉被占用的端口号相关推荐
- linux:进程占用的端口,在linux中查看进程占用的端口号
在Linux 上的 /etc/services 文件可以查看到更多关于保留端口的信息. 可以使用以下六种方法查看端口信息. ss:可以用于转储套接字统计信息. netstat:可以显示打开的套接字列表 ...
- liunx下查看tomcat占用的端口号
首先查看tomcat占用的进程号: ps -ef|grep tomcat 然后根据进程号,查看进程所占用的端口号: netstat -apn
- Mac OS/Linux命令查询网络端口占用情况
2019独角兽企业重金招聘Python工程师标准>>> netstat命令 netstat -an | grep <port> <port> 为端口号 例子: ...
- Linux 查看tomcat占用的端口号
第一步:先查看tomcat占用的进程号 ps -ef|grep tomcat 第二步:根据进程号,查看进程所占用的端口 netstat -apn 由此得知,tomcat的进程号是21845,并得到端口 ...
- linux 修改git端口号,linux安装gitlab并修改gitlab默认端口号
安装系统 centos 6.5 官网安装地址:https://about.gitlab.com/install/#centos-6 可以先根据官网安装步骤进行安装. 分别执行以下命令: 1.打开htt ...
- linux svn 指定端口号,linux(Ubuntu)搭建Subversion服务器+修改svn端口号
一.搭建 Subversion 服务器 1.首先需要安装 subversion 这个软件: sudo apt-get install subversion 注:使用apt-get安装软件,ubuntu ...
- linux centos 7.6修改ssh默认端口号
1.端口号的概念:众所周知,现在计算机主流的通信协议是TCP/IP四层协议,而传输层就位于三层:传输层提供了面向连接的可靠性传输(TCP)和面向无连接的不可靠传输(UDP):传输层之间的传递靠的就是端 ...
- Linux 小知识翻译 - 「端口和端口号」
这次说说「端口」和「端口号」. 平时经常会听人说「打开了80号端口」,为了安全「不要打开多余的端口」等等.那么,这里的端口或者端口号是什么呢? 首先,「端口」是TCP或者UDP上使用的概念,经常被比喻 ...
- Linux 命令 之查看程序占用内存
2019独角兽企业重金招聘Python工程师标准>>> 查看PID ps aux | grep nginx root 3531 0.0 0.0 18404 832 ...
- mySQL端口号3306被占用_mysql端口号3306被占用解决
在启动应用程序时发现需要的端口已经被占用,启动失败,怎么才能查看是那个应用程序占用了该端口?可以在命令符下用netstat查看: netstat -a -n 显示各个端口占用 netstat -ano ...
最新文章
- 有无目标的人生差10倍!赶紧和娃把新年计划做起来
- easyExcel 读取数据为空的一次报错记录
- 随机数据的构造与使用
- redis5种数据结构讲解及使用场景
- leetcode57. 插入区间
- 在web.config里注册HttpModule
- (43)Xilinx RAM IP核配置(四)(第9天)
- Linux eBPF和XDP高速处理数据包;使用EBPF编写XDP网络过滤器;高性能ACL
- 长短期记忆网络_科研成果快报第181期:改进的长短期记忆网络用于长江上游干支流径流预测...
- linux UID的长度,linux下文件数、目录数、文件名长度的各种限制
- JAVA new URL引起死机一例
- 常见的80道面试算法题
- 如何实现基于Electron的截图识字App(一)
- Android各控件绚丽Dome下载
- iphone11系列的尺寸_iPhone 11、11 Pro、11 Pro Max vs iPhone XR、XS、XsMax比较
- 电磁场与电磁波 试题含答案
- 田刚:庞加莱猜想与几何
- 报错:Ncat: bind to :::9999: Address already in use. QUITTING.
- 4135: [FJOI2015]世界树
- python报错(一):takes no arguments