Ubuntu查看端口占用情况以及系统详情的命令大全

 更新时间:2025年07月10日 09:29:03   作者:ladymorgana  
在Ubuntu下查看端口占用情况以及系统详情有很多种方法,常见的包括使用lsof、netstat、fuser、ss、nmap等工具,其中,每种工具都有其特点和适用场景,需要根据具体的需求选择合适的工具,文中通过代码示例介绍的非常详细,需要的朋友可以参考下

一、ubuntu 查看端口占用情况

在 Ubuntu 系统中,你可以使用以下几种方法来查看端口占用情况以及检查指定端口是否被占用:

方法 1:使用 netstat 命令(传统方式)

# 查看所有端口占用情况
sudo netstat -tulnp

# 查看指定端口是否被占用(例如检查 80, 443, 3306 端口)
sudo netstat -tulnp | grep -E ':(80|443|3306)\s'

选项说明:

  • -t:显示 TCP 端口
  • -u:显示 UDP 端口
  • -l:仅显示监听中的端口
  • -n:以数字形式显示地址和端口
  • -p:显示进程信息

方法 2:使用 ss 命令(更现代的替代方案)

# 查看所有端口占用情况
sudo ss -tulnp

# 检查指定端口是否被占用(例如 80, 443, 3306)
sudo ss -tulnp | grep -E ':(80|443|3306)\s'

ss 命令比 netstat 更快,是推荐的现代替代方案。

方法 3:使用 lsof 命令

# 查看所有端口占用
sudo lsof -i -P -n

# 检查指定端口(例如 80, 443, 3306)
sudo lsof -i :80,443,3306

方法 4:快速检查单个端口是否被占用

# 检查单个端口(例如 8080)
sudo lsof -i :8080
# 或
sudo netstat -tulnp | grep :8080
# 或
sudo ss -tulnp | grep :8080

# 如果端口未被占用,这些命令不会有输出

方法 5:使用 telnet 或 nc 测试端口连接性

# 检查本地端口(例如 3306)
telnet 127.0.0.1 3306

# 或使用 nc
nc -zv 127.0.0.1 3306

检查多个指定端口的脚本示例

如果你想一次性检查多个端口是否被占用,可以使用这个脚本:

#!/bin/bash
ports=(80 443 3306 8080 8000)

for port in "${ports[@]}"; do
    echo -n "Checking port $port... "
    if sudo lsof -i :$port > /dev/null 2>&1; then
        echo -e "\e[31m占用\e[0m"
        sudo lsof -i :$port | head -n 2
    else
        echo -e "\e[32m空闲\e[0m"
    fi
done

将上述脚本保存为 check_ports.sh,然后运行:

chmod +x check_ports.sh
./check_ports.sh

注意事项

  1. 查看端口占用通常需要 sudo 权限才能看到所有信息
  2. 如果端口被占用,命令会显示占用该端口的进程信息
  3. 没有输出通常表示端口未被占用
  4. 对于 Docker 容器使用的端口,也需要用上述方法检查

这些方法可以帮助你全面了解 Ubuntu 系统中的端口占用情况,并快速检查特定端口是否可用。

二、Ubuntu 系统信息查看命令大全

1. 查看系统版本信息

查看 Ubuntu 版本

lsb_release -a

输出示例:

No LSB modules are available.
Distributor ID: Ubuntu
Description:    Ubuntu 22.04.3 LTS
Release:        22.04
Codename:       jammy

查看内核版本

uname -a
# 或
cat /proc/version

查看系统架构

arch
# 或
uname -m

2. 查看内存信息

查看内存总量和使用情况

free -h

输出示例:

              total        used        free      shared  buff/cache   available
Mem:           15Gi       3.2Gi       8.4Gi       1.2Gi       3.4Gi        10Gi
Swap:         2.0Gi       0.0Ki       2.0Gi

查看详细内存信息

cat /proc/meminfo

监控内存使用(动态)

top
# 或
htop  # 需要安装:sudo apt install htop

3. 查看硬盘信息

查看磁盘分区和挂载情况

df -h

输出示例:

Filesystem      Size  Used Avail Use% Mounted on
/dev/nvme0n1p2  457G  123G  311G  29% /

查看所有磁盘设备

lsblk
# 或
sudo fdisk -l

查看磁盘IO情况

iostat -x 1
# 或安装
sudo apt install sysstat

4. 查看CPU信息

查看CPU型号和核心数

lscpu

输出示例:

Architecture:            x86_64
CPU op-mode(s):        32-bit, 64-bit
CPU(s):                16
Model name:            Intel(R) Core(TM) i9-9900K CPU @ 3.60GHz

查看CPU使用率

top
# 或
mpstat -P ALL 1

查看CPU温度(需要安装lm-sensors)

sudo apt install lm-sensors
sudo sensors-detect
sensors

5. 查看综合系统信息

使用neofetch(需要安装)

sudo apt install neofetch
neofetch

使用inxi工具(需要安装)

sudo apt install inxi
inxi -Fxz

6. 查看GPU信息

NVIDIA显卡

nvidia-smi
# 或
lspci | grep -i nvidia

AMD/Intel显卡

lspci | grep -i vga
glxinfo | grep "OpenGL renderer"

7. 查看网络信息

查看IP地址

ip a
# 或
hostname -I

查看网络接口

ifconfig
# 或
ip link show

查看路由表

ip route
# 或
route -n

8. 查看系统运行时间

uptime

输出示例:

 14:30:45 up 5 days,  2:15,  3 users,  load average: 0.08, 0.03, 0.01

9. 查看系统日志

查看内核日志

dmesg

查看系统服务日志

journalctl -xe

10. 常用组合命令

一键查看主要系统信息

echo -e "\n===== 系统版本 =====" && lsb_release -a && \
echo -e "\n===== 内存信息 =====" && free -h && \
echo -e "\n===== 磁盘信息 =====" && df -h && \
echo -e "\n===== CPU信息 =====" && lscpu | grep -E "Model name|CPU\(s\)" && \
echo -e "\n===== 运行时间 =====" && uptime

以上命令可以帮助您全面了解Ubuntu系统的硬件配置和运行状态。根据您的具体需求选择适合的命令即可。

以上就是Ubuntu查看端口占用情况以及系统详情的命令大全的详细内容,更多关于Ubuntu查看端口占用及系统详情的资料请关注脚本之家其它相关文章!

相关文章

  • linux VPS主机上备份网站和数据库的方法

    linux VPS主机上备份网站和数据库的方法

    现在看到越来越多的VPSer开始使用VPS,在使用VPS的时候一个很重要的任务就是VPS提供备份,虽然一些IDC也提供VPS的备份服务,但要不就是收费,都不太适合我们这些VPSer们使用。
    2010-12-12
  • Linux文件目录结构(小白版)

    Linux文件目录结构(小白版)

    这篇文章主要介绍了Linux文件目录结构(小白版),小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2017-10-10
  • 对send(),recv()函数的全面理解

    对send(),recv()函数的全面理解

    下面小编就为大家带来一篇对send(),recv()函数的全面理解。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2017-01-01
  • 使用Apache Hudi 加速传统的批处理模式的方法

    使用Apache Hudi 加速传统的批处理模式的方法

    这篇文章主要介绍了Apache Hudi 如何加速传统的批处理模式,借助Apache Hudi,我们希望在将数据摄取到数据湖中的同时,找到更好的重复数据删除和数据版本控制优化解决方案,需要的朋友可以参考下
    2022-04-04
  • Linux系统中卸载与安装JDK的详细教程

    Linux系统中卸载与安装JDK的详细教程

    本文详细介绍了如何在Linux系统中通过Xshell和Xftp工具连接与传输文件,然后进行JDK的安装与卸载,安装步骤包括连接Linux、传输JDK安装包、解压并配置环境变量,卸载过程则涉及查找JDK路径、删除文件及更新环境变量,需要的朋友可以参考下
    2025-04-04
  • linux中 shell 历史命令记录功能

    linux中 shell 历史命令记录功能

    这篇文章主要介绍了在 Linux 下面可以使用 history 命令查看用户的所有历史操作的一些详细配置小技巧,非常的简单实用,有需要的朋友可以参考下
    2014-10-10
  • linux下获取文件的创建时间与实战教程

    linux下获取文件的创建时间与实战教程

    这篇文章主要给大家介绍了关于linux下获取文件的创建时间与实战的相关资料,文中通过示例代码介绍的非常详细,对大家学习或者使用linux系统具有一定的参考学习价值,需要的朋友们下面来一起学习学习吧
    2019-12-12
  • 在Linux系统中查看目录大小的方法小结

    在Linux系统中查看目录大小的方法小结

    在 Linux 系统中,管理文件和目录的磁盘空间使用情况是日常维护的一部分,特别是在数据密集型的应用场景中,了解各个目录和文件的大小至关重要,du(disk usage)命令是一个强大的工具,可以帮助我们获取目录及其子目录的大小信息,需要的朋友可以参考下
    2024-11-11
  • CentOS7 mini的安装和静态ip设置教程

    CentOS7 mini的安装和静态ip设置教程

    本篇文章主要介绍了CentOS7 mini的安装和静态ip设置教程,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2017-02-02
  • 使用VMware 15 安装虚拟机和使用CentOS 8的步骤详解

    使用VMware 15 安装虚拟机和使用CentOS 8的步骤详解

    这篇文章主要介绍了使用VMware 15 安装虚拟机和使用CentOS 8的详细步骤,本文给大家介绍的非常详细,具有一定的参考借鉴价值,需要的朋友可以参考下
    2020-01-01

最新评论