Ubuntu 22.04 与 24.04 常用操作命令

Ubuntu 22.04 与 24.04 常用操作命令

适用场景:系统管理员、开发人员针对 Ubuntu 22.04 LTS(Jammy Jellyfish)与 24.04 LTS(Noble Numbat)的日常运维

特别说明:Ubuntu 无 24.02 版本,推测为笔误,以下基于官方 LTS 版本 24.04 展开对比说明

版本核心差异总览

 

维度

Ubuntu 22.04 LTS

Ubuntu 24.04 LTS

内核版本

5.15(默认)/ 6.5(HWE 可选)

6.8(默认,支持 bcachefs 文件系统)

关键特性

稳定兼容主流硬件

帧指针默认启用、.NET 8 原生支持、Rust 1.75 集成

Python 环境

3.10(无全局 pip 限制)

3.12(默认启用externally-managed保护)

Docker 默认版本

20.10.x

27.3.1(安装流程兼容但版本提升)

硬件支持

最高支持 Intel 13 代 CPU

原生支持 Intel 14 代 CPU 及新 GPU

第一章 硬件配置查看

1.1 系统概览

 

功能

命令

示例

版本差异说明

内核与系统架构

uname -a

uname -a

24.04 显示 6.8.x 内核,支持嵌套 KVM 与系统调用优化

系统版本与发行信息

lsb_release -a && cat /etc/os-release

lsb_release -a

24.04 CODENAME 为noble,支持 12 年 Ubuntu Pro 服务

1.2 核心硬件组件

1.2.1 CPU 信息

 

功能

命令

示例

版本差异说明

简洁显示 CPU 核心 / 线程

lscpu

lscpu

24.04 默认启用帧指针,可通过perf精准剖析性能

详细 CPU 参数

cat /proc/cpuinfo

grep "model name" /proc/cpuinfo

24.04 更好支持 Intel Raptor Lake-S Refresh 平台

物理核心数

`grep "physical id" /proc/cpuinfo

sort

uniq

1.2.2 内存信息

功能

命令

示例

补充说明

内存使用(人类可读)

free -h

free -h

显示总内存、已用、缓存、交换分区

详细内存参数

cat /proc/meminfo

grep "MemTotal" /proc/meminfo

单位为 KB,可换算为 GB(÷1024²)

 

1.2.3 存储设备(新增文件系统支持)

 

功能

命令

示例

版本差异说明

磁盘分区与空间

df -h

df -h /home

24.04 可识别 bcachefs 分区,需手动挂载

所有磁盘设备(含未挂载)

lsblk

lsblk /dev/sda

两版本一致

硬盘健康信息

sudo smartctl -a /dev/sda

-

24.04 对 NVMe SSD 的健康数据支持更全面

 

1.2.4 其他硬件(显卡、网络、USB 等)

 

硬件类型

命令

示例

补充说明

显卡信息

`lspci

grep -i vga`

-

网络接口

ip addr show

ip addr show eth0

显示 IP、MAC 地址

USB 设备

lsusb

-

显示外接 USB 设备(如 U 盘、鼠标)

硬件温度 / 风扇

sensors

-

需先安装:sudo apt install lm-sensors -y,并执行 sudo sensors-detect 配置

笔记本电池

acpi -V

-

显示电量、充电状态、续航预估

 

第二章 已安装软件包与版本查看

2.1 系统级包管理(无核心差异)

2.1.1 DEB 包

 

功能

命令

示例

版本差异说明

列出所有已安装包

apt list --installed

`apt list --installed

grep nginx`

查看包详细信息

`dpkg -s

dpkg -s curl

两版本一致

查找包安装路径

`dpkg -L

dpkg -L nginx

两版本一致

查找包安装路径

`dpkg -L

dpkg -L nginx

显示包所有文件的系统路径(如配置文件、可执行文件)

         

2.1.2 Snap 包

 

功能

命令

示例

补充说明

列出已安装 Snap

snap list

-

含版本、发布者、安装日期

查看 Snap 详情(含依赖)

snap info  snap info snap-store`

显示 base 依赖、安装路径(/snap/>/)

 

2.1.3 Flatpak 包

 

功能

命令

示例

补充说明

列出已安装 Flatpak

flatpak list

-

含应用 ID、版本、运行时

查看 Flatpak 详情

flatpak info >

flatpak info org.gnome.gedit

显示安装路径(/var/lib/flatpak/app/)

 

2.2 语言级包管理

2.2.1 Python 包(pip)

 

功能

命令

示例

版本差异说明

列出全局 pip 包

pip3 list

-

22.04 直接可用;24.04 需加--break-system-packages(不推荐)或用虚拟环境

查看包详情(含路径)

pip3 show  pip3 show requests`

24.04 Location 默认指向/usr/local/lib/python3.12/

 

升级 pip

sudo apt install --only-upgrade python3-pip

-

24.04 推荐此方法,避免externally-managed错误

创建虚拟环境(推荐)

python3 -m venv myenv && source myenv/bin/activate

-

两版本通用,24.04 默认 Python 3.12

2.2.2 Node.js 包(npm)

 

功能

命令

示例

补充说明

列出全局 npm 包

npm list -g --depth=0

-

--depth=0 隐藏子依赖,更简洁

列出项目本地 npm 包

npm list --depth=0

-

需在项目根目录执行(含 package.json)

查看包版本

npm view 名> version

npm view express version

显示最新版及历史版本

 

2.2.3 新增 .NET/Rust 支持(24.04 专属)

 

功能

命令

示例

适用版本

查看 .NET 版本

dotnet --version

-

24.04 默认支持.NET 8,22.04 需手动安装

查看 Rust 版本

rustc --version

-

24.04 默认 1.75,22.04 需手动安装

第三章 服务与端口监控(防火墙底层优化)

3.1 系统服务管理

3.1.1 Systemd 服务(主流)

 

功能

命令

示例

补充说明

列出所有服务状态

systemctl list-units --type=service --all

-

+ 运行、- 停止、? 未安装

仅显示运行中服务

systemctl list-units --type=service --state=running

-

快速排查活跃服务

查看单个服务状态

systemctl status <服务名>

systemctl status ssh

含 PID、日志片段、自启状态

检查服务自启状态

systemctl is-enabled 名>

systemctl is-enabled nginx

输出 enabled(自启)/disabled(不自启)

3.1.2 传统 init.d 服务(兼容旧系统)

 

功能

命令

示例

补充说明

列出传统服务

ls -la /etc/init.d/

-

显示所有 init.d 管理的服务脚本

查看传统服务状态

`sudo service

sudo service apache2 status

部分新服务可能不支持此方式

 

3.2端口与网络监控

3.2.1 监听端口查看

 

功能

命令

示例

补充说明

现代系统推荐(无依赖)

sudo ss -tulpn

-

tTCP、uUDP、l监听、p进程、n数字端口

传统方式(需安装)

sudo netstat -tulpn

-

需先安装:sudo apt install net-tools -y

查看特定端口占用

sudo lsof -i :>

sudo lsof -i :80

显示占用端口的进程 PID 和名称

3.2.2 防火墙与网络规则

 

功能

命令

示例

版本差异说明

查看 UFW 防火墙状态

sudo ufw status verbose

-

两版本一致,24.04 底层默认映射 nftables

查看 nftables 规则

sudo nft list ruleset

-

24.04 推荐直接使用,替代 iptables

查看 iptables 规则

sudo iptables -L -n -v

-

24.04 为兼容模式,实际转译 nftables 规则

3.2.3 服务日志查看

 

功能

命令

示例

补充说明

查看所有服务日志

journalctl -xe

-

按时间倒序,显示最新日志

查看单个服务日志

journalctl -u <服务名>

journalctl -u nginx

仅显示指定服务的日志

实时跟踪服务日志

journalctl -u  -f

journalctl -u ssh -f

类似 “tail -f”,实时刷新

 

第四章 容器列表与运维(Docker 版本提升)

4.1 Docker 容器(补充版本与安装差异)

 

功能

命令

示例

版本差异说明

安装 Docker

sudo apt install docker-ce

-

22.04 默认 20.10.x,24.04 默认 27.3.1

查看运行中容器

docker ps

-

两版本语法一致,24.04 支持更多统计字段

免 sudo 使用 Docker

sudo usermod -aG docker $USER

-

两版本一致,需重启生效

4.2 LXC/LXD 容器

 

功能

命令

示例

补充说明

查看所有 LXC 容器

lxc list

-

含状态、IP、架构

仅查看运行中容器

lxc list --running

-

过滤停止状态的容器

4.3 Podman 容器(无守护进程)

 

功能

命令

示例

补充说明

查看运行中 Podman 容器

podman ps

-

语法与 Docker 兼容

查看所有 Podman 容器

podman ps -a

-

含停止容器

4.4 Kubernetes(K8s)容器

 

功能

命令

示例

补充说明

查看当前命名空间 Pod

kubectl get pods

-

Pod 是 K8s 的最小部署单元(含容器)

查看所有命名空间 Pod

kubectl get pods -A

-

-A = all namespaces

查看 Pod 详情

`kubectl describe pod

kubectl describe pod my-app-pod

含容器日志、挂载卷、事件

第五章 软件包依赖关系查询(修正命令截断)

5.1 DEB 包依赖

 

功能

命令

示例

版本差异说明

查看未安装包依赖

apt-cache depends <包名>

apt-cache depends nginx

24.04 依赖版本要求更高(如 libc6 ≥ 2.39)

查看已安装包依赖

`dpkg -s 名 >

grep -A 10 "Depends:"`

`dpkg -s curl

查看反向依赖

apt-cache rdepends <包名>

apt-cache rdepends libc6

两版本一致

检查依赖冲突

sudo apt check

-

24.04 检测速度更快,支持 bcachefs 依赖校验

第六章 关键版本适配建议

  1. 硬件选择
    1. 旧设备(Intel 12 代及以下 CPU):优先 Ubuntu 22.04,兼容性更稳定
    2. 新设备(Intel 13/14 代 CPU、NVIDIA H100 GPU):必须用 Ubuntu 24.04,获取硬件支持
  2. Python 开发
    1. 22.04:可直接全局安装包,适合快速测试
    2. 24.04:强制使用虚拟环境或apt管理 Python 包,避免环境混乱
  3. 容器运维
    1. 24.04 的 Docker 27 + 支持容器快照、增量镜像,推荐生产环境升级
    2. K8s 集群:24.04 兼容 1.29 + 版本,22.04 最高兼容 1.26+
  4. 存储优化
    1. 新部署场景:24.04 可尝试 bcachefs 文件系统,提升读写性能
    2. 数据迁移:从 22.04 到 24.04 需注意 Python 虚拟环境重建
posted @ 2025-12-05 21:34  南山星火  阅读(1)  评论(0)    收藏  举报