AMI
我有一个基于公共 AMI定制的旧版(Amazon Machine Image) ubuntu-trusty-14.04-amd64-server
。我计划用最新的公共映像替换此定制映像ubuntu-bionic-18.04-amd64-server
。
我计划根据这些图像设置简单的系统,比较并列出主要的配置差异,并逐一检查必要的更改。
有没有什么推荐的方法可以快速找出两个独立的 Ubuntu/Linux 系统之间的差异,例如比较某些配置目录和文件?
答案1
如果所有这些都基于 ubuntu,您可以比较/etc
文件夹及其内容以进行配置。但是,这可能不是全部。某些软件可以下载到自定义文件夹(例如/usr/share
或其他文件夹),这可能需要进一步调查。
您也可以使用以下命令开始检查已安装的软件:(
apt list --installed
它还会为您提供具体版本)
您可以使用软件包来比较文件夹meld
,它具有三向比较功能,但您需要运行 WindowManager 才能实现此目的。除此之外,建议使用简单的 diff 工具。
答案2
以下是我所做的:
- 初始化了 2 个独立实例,一个使用定制的 Ubuntu AMI,另一个使用公共 Ubuntu 14.04 AMI
- 将两个实例的根目录挂载到本地系统,并比较整体文件和目录的差异,但差异太大。
- 将比较范围缩小到某些目录,如、,
/etc
并重点关注:/home
/opt
- 用户和组(
/etc/group
) - 安装信息 (
/etc/fstab
) - 已安排作业 (
/etc/cron*
)
- 用户和组(
- 比较已安装软件包的列表。发现大量软件包存在差异,因为列出所有已安装软件包时,它包括了主软件包及其依赖项。
- 开发了一个脚本来构建已安装包的依赖结构,以获取主要安装包的差异。