ubuntu服务器资产清点与管理的核心是建立持续、可执行、可回溯、可自动化的机制,涵盖硬件、软件、服务、配置等全维度识别,结构化登记与变更留痕,并通过脚本实现定期自动化扫描。

Ubuntu 服务器资产清点与管理,核心是把硬件、软件、服务、配置等关键资源“看得见、管得住、查得清”。它不是一次性任务,而是持续运行的运维习惯。重点不在装多少工具,而在建立可执行、可回溯、可自动化的机制。
资产识别:先摸清家底
服务器资产不只是CPU内存这些硬件,还包括:
- 运行中的服务(nginx、mysql、docker等)
- 已安装的软件包(含版本号)
- 挂载的磁盘与分区(/dev/sda1、/dev/sdb1、/data等)
- 网络端口监听状态(哪些端口在用、谁在监听)
- Docker镜像与容器(镜像ID、创建时间、大小、是否在运行)
- 关键配置文件路径(如/etc/nginx/nginx.conf、/etc/mysql/my.cnf)
快速汇总命令示例:
# 基础信息
hostname && lsb_release -r && uname -r
# 硬件概览
lshw -short -class system,cpu,memory,disk 2>/dev/null | head -10
# 已安装软件(去重+按大小排序)
dpkg --get-selections | grep -v deinstall | awk '{print $1}' | xargs -r dpkg-query -s 2>/dev/null | grep -E "^(Package:|Version:|Size:)" | paste -d' ' - - - | sort -k6,6nr | head -10
# 挂载点与容量
df -hT | grep -E "(ext|xfs|btrfs)"
# 监听端口及对应进程
sudo ss -tulnp | grep -v "127.0.0.1:" | grep -v "localhost"
# Docker资源占用(若已安装)
docker images --format "{{.Repository}}:{{.Tag}}\t{{.Size}}" | sort -k2,2hr | head -5
docker ps --format "{{.ID}}\t{{.Image}}\t{{.Status}}\t{{.Ports}}" | head -5
资产登记:结构化记录而非截图存档
不要只靠记忆或零散笔记。推荐两种轻量但有效的落地方式:
-
本地清单文件(适合中小规模)
在/opt/assets/inventory.yaml或/etc/assets/summary.md中维护一份人工更新+脚本辅助的文本清单,包含:- 主机名、IP、用途(如“数据库主库”、“API网关”)
- CPU/内存/磁盘型号与容量
- 主要服务列表及端口(如
postgresql: 5432,redis: 6379) - 关键数据目录(如
/var/lib/postgresql,/data/uploads) - 最后一次核对时间(手动填写或脚本自动写入)
-
轻量级Web系统(适合团队协作)
部署 Snipe-IT 或 OCS Inventory NG(支持Linux Agent)。它们能自动采集:- 硬件信息(通过
dmidecode,lshw,lsblk) - 已安装软件(解析
dpkg -l或apt list --installed) - 网络接口与IP(
ip addr) - 服务状态(
systemctl list-units --type=service --state=running)
- 硬件信息(通过
注意:Snipe-IT 更侧重物理设备与许可证,OCS 更擅长自动发现服务器软硬件;两者都支持API导入导出,便于和CMDB对接。
Ubuntu 26.04下载Ubuntu 26.04 LTS(代号“Resolute Raccoon”)是Canonical于2026年4月23日发布的下一代长期支持版操作系统,提供长达10年的技术支持。它搭载Linux 7.0内核与GNOME 50桌面环境,全面转向Wayland协议,并引入Rust重写的核心工具以增强安全性。官方提供适用于AMD64和ARM64架构的桌面及服务器ISO镜像,是追求前沿技术与极致稳定的开发者
资产变更跟踪:让每次改动留下痕迹
清点不是静态快照,而是动态过程。关键动作必须留痕:
- 所有软件安装/卸载统一走
apt install/remove,避免curl | bash类操作; - 修改配置前,用
cp /etc/nginx/nginx.conf /etc/nginx/nginx.conf.$(date +%Y%m%d)备份; - 使用
journalctl --since "2026-07-01" | grep -i "systemd\[.*\]: Started"查看近期服务启停; - 对Docker环境,定期执行
docker system df -v记录镜像/容器/卷增长趋势; - 把重要变更写进
/var/log/assets-change.log,例如:[2026-07-28 14:22] added /dev/sdb1 → /data (ext4, 100G), mounted via fstab [2026-07-28 16:03] upgraded nginx from 1.18.0 to 1.22.1 via apt
自动化辅助:减少人为遗漏
用简单脚本把高频检查固化下来:
#!/bin/bash
# /usr/local/bin/asset-scan.sh
echo "=== Asset Scan Report $(date) ===" > /var/log/assets/last-scan.log
echo "Hostname: $(hostname)" >> /var/log/assets/last-scan.log
echo "Disk usage:" >> /var/log/assets/last-scan.log
df -h | grep -E "^/dev/" >> /var/log/assets/last-scan.log
echo "Top 5 largest packages:" >> /var/log/assets/last-scan.log
dpkg-query -Wf '${Installed-Size}\t${Package}\n' | sort -nr | head -5 >> /var/log/assets/last-scan.log
配合 cron 每周日凌晨运行一次,日志自动归档,随时可查。
不复杂但容易忽略——资产清点的价值,从来不在“做完”,而在于“常做”。











