当前位置: 首页 > news >正文

Ubuntu 系统端口查询与管理详细分析

目录

  • 前言
  • 1. 查询端口占用情况
  • 2. 释放占用的端口
  • 3. 修改应用程序的端口

前言

Window的端口被占用,类似的知识点:重装mysql时3306端口被占用解决方法

事情起因是宝塔的CPU负载过大,重启服务进程之后还是爆,后续发现是端口被占用,导致服务重启不起来!

对应需要kill相关进程的端口即可,对此补充相关知识

1. 查询端口占用情况

使用 lsof 命令查询端口占用

lsof(list open files)是一个强大的工具,用来列出系统中打开的文件,包括网络连接、端口等

查询特定端口(例如 48080)被哪个进程占用:sudo lsof -i :48080

在这里插入图片描述

参数描述
COMMAND进程名(例如 nginx、java)
PID进程的ID(进程标识符)
USER进程的拥有者
FD文件描述符(表示文件类型和打开模式)
TYPE连接类型(IPv4、IPv6)
DEVICE、SIZE/OFF、NODE网络连接的详细信息
NAME端口或IP地址信息

示例输出:

COMMAND   PID USER   FD   TYPE  DEVICE SIZE/OFF NODE NAME
java    2081361 www    6u  IPv6  842221658      0t0  TCP localhost:48080->localhost:49738 (CLOSE_WAIT)
java    2081361 www   21u  IPv6  842220852      0t0  TCP localhost:48080->localhost:47856 (CLOSE_WAIT)
java    2081361 www  194u  IPv6  841638236      0t0  TCP *:48080 (LISTEN)

此命令代表java 进程(PID:2081361)正在监听端口 48080

使用 netstat 命令查询端口占用

netstat(network statistics)命令可以用来显示网络连接、路由表、接口统计信息等

要查看所有占用端口的进程:sudo netstat -tuln

参数描述
Proto协议(TCP或UDP)
Recv-Q、Send-Q接收队列和发送队列的大小
Local Address本地地址和端口
Foreign Address远程地址和端口(对于监听中的端口为空)
State连接状态(如 LISTEN 表示正在监听)
PID/Program name进程ID和程序名称(需要-p选项)

查看端口 48080 是否被占用:sudo netstat -tuln | grep :48080

示例输出:

tcp6       0      0 :::48080                :::*                    LISTEN

此命令代表48080 端口在系统中是监听状态

使用 ss 命令查询端口占用

ss(socket statistics)是一个比 netstat 更快速的工具,它可以用于查看网络连接、监听端口等信息

查看所有监听端口:sudo ss -tuln

查看特定端口:sudo ss -tuln | grep :48080

示例输出:

LISTEN   0         128                *:48080             *:*                  

这表示端口 48080 正在监听中

2. 释放占用的端口

确认端口被某个进程占用时,可以选择停止该进程或杀死该进程以释放端口

停止服务进程
确认是一个服务进程(如 nginx 或 apache)占用了端口,可以通过系统的服务管理工具停止该服务

sudo systemctl stop nginx

或者,如果是其他服务(比如 Tomcat 或 MySQL),可以使用类似的命令来停止它们

杀死占用端口的进程

希望直接杀死占用端口的进程(如 java 进程),可以使用 kill 命令
使用 lsof 或 netstat 找到占用端口的进程ID(PID)

假设PID是 2081361,可以通过以下命令停止它:sudo kill -9 2081361
-9 参数表示强制杀死该进程

3. 修改应用程序的端口

不希望停止其他进程,另一种解决方案是修改你正在运行的应用程序使用不同的端口

修改 Spring Boot 的端口

在Spring Boot应用中,可以修改 application.properties 或 application.yml 文件来设置新的端口

application.properties: server.port=8081

application.yml:

server:port: 8081

保存后重启Spring Boot应用,新的端口配置生效

修改其他应用程序的端口
对于其他应用程序(例如 Node.js、Tomcat、nginx 等),也可以在它们的配置文件中修改端口

相关文章:

Ubuntu 系统端口查询与管理详细分析

目录 前言1. 查询端口占用情况2. 释放占用的端口3. 修改应用程序的端口 前言 Window的端口被占用,类似的知识点:重装mysql时3306端口被占用解决方法 事情起因是宝塔的CPU负载过大,重启服务进程之后还是爆,后续发现是端口被占用&…...

Unity中使用StartCoroutine协程和Lerp方法,使GameObject缓慢移动

移动方法(传入需要移动的instance和目标位置) public Transform targetPosition; //目标位置 Vector3 target targetPosition.position;private IEnumerator MoveTowardsTarget(GameObject instance, Vector3 target){// 缓慢移动到目标的方法Vector3 …...

C++根据特定字符截取字符串

前言 在 C 中&#xff0c;如果根据特定字符进行字符串的截取&#xff0c;可以使用 std::string 类的成员函数 find() 来查找字符的位置&#xff0c;然后使用 substr() 来截取字符串。以下是一个示例&#xff0c;展示了如何根据指定字符截取字符串。 示例 #include <iostr…...

【How AI Works】读书笔记3 出发吧! AI纵览 第二部分

目录 1.说明 2.第二部分(P9~P10) 机器学习算法总结(监督学习) 3.单词 4.专业术语 1.说明 书全名:How AI Works From Sorcery to Science 作者 Ronald T.Kneusel 2.第二部分(P9~P10) 总结机器学习算法 作者把机器学习的过程比喻成输入-->黑盒-->输出 这里的标签可…...

No Module named pytorchvideo.losses问题解决

问题描述 最近在跑X3D的源码时发现&#xff0c;在conda powershell prompt中安装了pytorchvideo&#xff0c;但是仍然报错&#xff1a;No Module named pytorchvideo.losses 解决方案&#xff1a; 直接去https://gitcode.com/gh_mirrors/py/pytorchvideo/overview?utm_sour…...

Mac终端字体高亮、提示插件

一、安装配置“oh my zsh” 1.1 安装brew /bin/zsh -c "$(curl -fsSL https://gitee.com/cunkai/HomebrewCN/raw/master/Homebrew.sh)" 按照步骤安装即可&#xff0c;安装完成查看版本 brew -v 1.2 安装zsh brew install zsh 安装完成后查看版本 zsh --version 1.3 …...

Flowable 构建后端服务(后端以及数据库搭建) Flowable Modeler 设计器搭建(前端)

案例地址&#xff1a;xupengboo-flowable-example Flowable 构建后端服务&#xff08;后端以及数据库搭建&#xff09; 以 Spring Boot 项目为例&#xff1a; 引入 Flowable 必要依赖。 <!-- flowable 依赖 --> <dependency><groupId>org.flowable</gr…...

[Java]微服务拆分

导入项目 本篇及后续的微服务学习都是基于Centos7系统下的Docker部署&#xff0c;因此需要准备: Centos7的环境SSH客户端安装好Docker会使用Docker 之前的学习, 导致虚拟机中存在黑马商城项目以及mysql数据库, 为了保持一致, 需要删除 cd /rootdocker compose down 安装mysq…...

JavaScript逆向爬虫教程-------基础篇之JavaScript混淆原理

目录 一、常量的混淆原理1.1 对象属性的两种访问方式1.2 十六进制字符串1.3 Unicode字符串1.4 字符串的ASCII码混淆1.5 字符串常量加密1.6 数值常量加密二、增加 JS 逆向者的工作量2.1 数组混淆2.2 数组乱序2.3 花指令2.4 jsfuck三、代码执行流程的防护原理3.1 流程平坦化3.2 …...

qt移植到讯为rk3568,包含一些错误总结

qt移植到arm报错动态库找不到 error while loading shared libraries: libAlterManager.so.1: cannot open shared object file: No such file or directory 通过设置环境变量 LD_LIBRARY_PATH就行了。 LD_LIBRARY_PATH是一个用于指定动态链接器在运行时搜索共享库的路径的环…...

使用阿里云快速搭建 DataLight 平台

使用阿里云快速搭建 DataLight 平台 本篇文章由用户 “闫哥大数据” 分享&#xff0c;B 站账号&#xff1a;https://space.bilibili.com/357944741?spm_id_from333.999.0.0 注意&#xff1a;因每个人操作顺序可能略有区别&#xff0c;整个部署流程如果出现出入&#xff0c;以…...

ubuntu设置自启动

1. 把要启动的程序或者脚本(比如A.sh、A1)放在 /usr/sbin 目录中。比如我的 A.sh 只是启动 A1 程序&#xff1a; #!/bin/bash/usr/sbin/A1echo "A1 finish!!!" 需要注意的是&#xff0c;脚本和程序都要有可执行的权限才行 2. 在 /etc/systemd/system 目录中创建 .…...

Paddle分布式训练报NCCL错

应该是没有装NCCL&#xff0c;但是通过NVIDIA官网方式用apt安装报错&#xff0c;说nccl签名有问题 打开官网查找对应版本的nccl&#xff1a;https://developer.nvidia.com/nccl/nccl-legacy-downloads 这里不下载local Ubuntu选项&#xff0c;下载O/S agnostic local install…...

PD3.1快充对我们到底有没有必要?

在科技飞速发展的今天&#xff0c;各种智能设备和电子产品已经渗透到了我们生活的方方面面。随之而来的&#xff0c;是对充电速度和效率的不断追求。正是在这样的背景下&#xff0c;USB联盟于2021年6月发布了最新的快充协议——PD3.1。那么&#xff0c;PD3.1快充协议对我们到底…...

Android OpenGL ES详解——立方体贴图

目录 一、概念 二、如何使用 1、创建立方体贴图 2、生成纹理 3、设置纹理环绕和过滤方式 4、激活和绑定立方体贴图 三、应用举例——天空盒 1、概念 2、加载天空盒 3、显示天空盒 4、优化 四、应用举例——环境映射:反射 五、应用举例——环境映射:折射 六、应用…...

Bugku CTF_Web——字符?正则?

Bugku CTF_Web——字符&#xff1f;正则&#xff1f; 进入靶场 <?php highlight_file(2.php); $keyflag{********************************}; $IM preg_match("/key.*key.{4,7}key:\/.\/(.*key)[a-z][[:punct:]]/i", trim($_GET["id"]), $match); if…...

C# 中Math.Round 和 SQL Server中decimal(18,2) 不想等的问题

首先了解Math.Round方法的默认舍入规则 在C#中&#xff0c;Math.Round方法使用的是“银行家舍入法”&#xff08;也叫四舍六入五成双&#xff09;。这种舍入规则是&#xff1a;当要舍弃的数字小于5时直接舍去&#xff1b;当要舍弃的数字大于5时进位&#xff1b;当要舍弃的数字正…...

lab2:docker基础实战

一、实验目的 1.通过本次实验&#xff0c;完成Docker主机的安装和配置、镜像的搜索和下载、容器生命周期的基本管理、容器网络的管理。 2.通过Dockerfile来构建nginx镜像&#xff0c;了解Dockerfile镜像构建过程。 二、实验内容与实验要求 1.完成Docker的安装和配置。 2.完…...

Druid 1.2 源码导读

Druid 是阿里巴巴开源的数据库连接池和监控组件&#xff0c;广泛用于 Java 应用程序中。Druid 1.2 版本提供了高性能的连接池和丰富的监控功能。以下是对 Druid 1.2 源码的导读&#xff0c;帮助你理解其架构和设计。 1. 源码获取 从 GitHub 上获取 Druid 1.2 的源码&#xff…...

千益畅行,共享旅游卡市场乱象解析与未来展望

在当今旅游市场蓬勃发展的大背景下&#xff0c;共享旅游卡作为一种新兴的旅游消费模式&#xff0c;受到了广泛关注。然而&#xff0c;伴随着其快速发展&#xff0c;市场乱象也层出不穷。作为千益畅行共享旅游卡的全国运营总监&#xff0c;我深感有必要对这些问题进行深入剖析&a…...

告别UUID!用Apache Commons Lang3的RandomStringUtils生成更灵活的随机字符串(Java实战)

告别UUID&#xff01;用Apache Commons Lang3的RandomStringUtils生成更灵活的随机字符串&#xff08;Java实战&#xff09; 在Java开发中&#xff0c;生成随机字符串的需求无处不在——从用户邀请码、临时密码到订单编号&#xff0c;我们经常需要快速生成一串既随机又可读的字…...

SAP 实战篇:Script脚本进阶,从录制到智能循环批量处理

1. SAP脚本自动化&#xff1a;从入门到进阶 刚接触SAP脚本时&#xff0c;我和大多数新手一样&#xff0c;以为它只是个简单的"动作录制器"。直到有次需要处理500多条订单修改&#xff0c;我才发现这个被低估的工具能带来多大改变。SAP Script脚本本质上是通过VBScrip…...

如何快速掌握炉石传说游戏自动化:开源智能助手完整教程

如何快速掌握炉石传说游戏自动化&#xff1a;开源智能助手完整教程 【免费下载链接】Hearthstone-Script Hearthstone script&#xff08;炉石传说脚本&#xff09; 项目地址: https://gitcode.com/gh_mirrors/he/Hearthstone-Script 你是否厌倦了每天重复的炉石传说日常…...

宽带卫星通信系统同步与大规模阵列波束成形技术【附程序】

✨ 长期致力于符号定时恢复、频率估计、可变分数延迟滤波器、时延估计、真时延阵列研究工作&#xff0c;擅长数据搜集与处理、建模仿真、程序编写、仿真设计。 ✅ 专业定制毕设、代码 ✅ 如需沟通交流&#xff0c;点击《获取方式》 &#xff08;1&#xff09;基于迭代短卷积的多…...

Multisim导入自定义三极管S8050/S8550保姆级教程:从SPICE文件到成功仿真

Multisim实战&#xff1a;从零构建S8050三极管模型与仿真验证全流程 在电子电路设计与仿真领域&#xff0c;准确的三极管模型往往是项目成功的关键。许多工程师和爱好者在使用Multisim时都遇到过这样的困境&#xff1a;官方元件库中缺少特定型号的三极管&#xff08;如常见的S8…...

宝塔面板如何定期清理日志垃圾_设置计划任务自动清理.txt

...

STC8H单片机低功耗实战:用掉电模式和外部中断,让电池续航翻倍

STC8H单片机低功耗实战&#xff1a;用掉电模式和外部中断&#xff0c;让电池续航翻倍 在电池供电的嵌入式设备开发中&#xff0c;功耗控制往往是决定产品成败的关键因素。想象一下&#xff0c;一款设计精良的便携式环境监测仪&#xff0c;如果因为功耗问题导致频繁更换电池&am…...

企业内网开发环境通过Taotoken安全调用外部大模型API

&#x1f680; 告别海外账号与网络限制&#xff01;稳定直连全球优质大模型&#xff0c;限时半价接入中。 &#x1f449; 点击领取海量免费额度 企业内网开发环境通过Taotoken安全调用外部大模型API 对于许多企业开发团队而言&#xff0c;在内部研发流程中引入大模型能力已成为…...

4.4 Spark SQL数据源 - JSON

Spark SQL JSON数据源实战涵盖&#xff1a;自动Schema推断读取JSON文件、spark.read.json()方法应用、文件格式规范&#xff08;每行独立JSON&#xff09;、HDFS文件操作及Spark Shell交互式查询。核心实践包括&#xff1a;从HDFS读取用户与成绩JSON文件创建DataFrame并关联分析…...

基于PyPortal与CircuitPython的桌面空气质量监测站DIY指南

1. 项目概述&#xff1a;打造你的桌面级空气质量监测站如果你和我一样&#xff0c;对身边的空气质量有点“强迫症”&#xff0c;总想知道窗外空气到底怎么样&#xff0c;但又不想总去翻手机App&#xff0c;那么这个项目就是为你量身定做的。我们将利用一块名为PyPortal的开发板…...