【ubuntu】查看端口占用情况,以及系统详情
摘要 Ubuntu系统提供了多种查看端口占用情况的命令: 传统netstat命令:sudo netstat -tulnp 2.更现代的ss命令:sudo ss -tulnp lsof命令:sudo lsof -i -P -n 快速测试端口:telnet/nc命令 系统信息查看命令包括: 版本信息:lsb_release -a、uname -a 硬件信息:free -h(内存)、df -h(磁盘)、
·
文章目录
一、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
注意事项
- 查看端口占用通常需要
sudo
权限才能看到所有信息 - 如果端口被占用,命令会显示占用该端口的进程信息
- 没有输出通常表示端口未被占用
- 对于 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系统的硬件配置和运行状态。根据您的具体需求选择适合的命令即可。
更多推荐
所有评论(0)