🔍 YUM仓库哈希校验工具 📁 搜索目录: /home/data/public/rpm/uos/1070e_x86_64 📄 日志文件: /home/data/public/rpm/uos/1070e_x86_64/verify_repos_log_20261021_024531.txt 🕐 开始时间: 2026-10-21 02:45:31 ⚙️ 配置信息: 最大线程数: 8 (CPU核心数: 8) 缓冲区大小: 1.0MB ================================================================================ 🔧 检查系统哈希工具: 找到工具: sha256sum, sha1sum, md5sum, openssl ================================================================================ 🔍 正在搜索仓库目录... 搜索根目录: /home/data/public/rpm/uos/1070e_x86_64 找到 7 个仓库: 1. OS 2. everything 3. kernel510 4. Modular 5. update 6. GM 7. OpenStack-V ================================================================================ ================================================================================ 📦 开始验证仓库: OS 完整路径: /home/data/public/rpm/uos/1070e_x86_64/OS Packages目录: /home/data/public/rpm/uos/1070e_x86_64/OS/Packages 使用线程数: 8 元数据文件: 92c6c1ea2ee76043792fd3f5665da2434bdd35af4d154dd69fef58513d89b011-primary.sqlite.bz2 正在解析: 92c6c1ea2ee76043792fd3f5665da2434bdd35af4d154dd69fef58513d89b011-primary.sqlite.bz2 成功从 SQLite 解析 2536 个包 元数据包数: 2536 实际RPM文件数: 2536 开始多线程验证 (最大线程数: 8)... 进度: 500/2536 (匹配:500, 失败:0, 缺失:0) 速度: 75.0个/秒 剩余: 27.1秒 进度: 1000/2536 (匹配:1000, 失败:0, 缺失:0) 速度: 77.4个/秒 剩余: 19.8秒 进度: 1500/2536 (匹配:1500, 失败:0, 缺失:0) 速度: 81.2个/秒 剩余: 12.8秒 进度: 2000/2536 (匹配:2000, 失败:0, 缺失:0) 速度: 77.7个/秒 剩余: 6.9秒 进度: 2500/2536 (匹配:2500, 失败:0, 缺失:0) 速度: 80.6个/秒 剩余: 0.4秒 进度: 2536/2536 (匹配:2536, 失败:0, 缺失:0) 速度: 80.9个/秒 剩余: 0.0秒 校验结果: 元数据包数: 2536 实际文件数: 2536 哈希匹配: 2536 哈希不匹配: 0 文件缺失: 0 多余文件: 0 (仅统计) ✅ 仓库验证通过 (无哈希不匹配文件) ================================================================================ 📦 开始验证仓库: everything 完整路径: /home/data/public/rpm/uos/1070e_x86_64/everything Packages目录: /home/data/public/rpm/uos/1070e_x86_64/everything/Packages 使用线程数: 8 元数据文件: 062bcdb3ea61534e7ed2dec488a5956404741503d8941b5d0f0422906112110b-primary.sqlite.bz2 正在解析: 062bcdb3ea61534e7ed2dec488a5956404741503d8941b5d0f0422906112110b-primary.sqlite.bz2 成功从 SQLite 解析 22016 个包 元数据包数: 22016 实际RPM文件数: 22016 开始多线程验证 (最大线程数: 8)... 进度: 500/22016 (匹配:500, 失败:0, 缺失:0) 速度: 38.6个/秒 剩余: 557.1秒 进度: 1000/22016 (匹配:1000, 失败:0, 缺失:0) 速度: 43.4个/秒 剩余: 483.8秒 进度: 1500/22016 (匹配:1500, 失败:0, 缺失:0) 速度: 45.5个/秒 剩余: 450.7秒 进度: 2000/22016 (匹配:2000, 失败:0, 缺失:0) 速度: 46.6个/秒 剩余: 429.8秒 进度: 2500/22016 (匹配:2500, 失败:0, 缺失:0) 速度: 43.3个/秒 剩余: 450.6秒 进度: 3000/22016 (匹配:3000, 失败:0, 缺失:0) 速度: 43.9个/秒 剩余: 433.3秒 进度: 3500/22016 (匹配:3500, 失败:0, 缺失:0) 速度: 46.3个/秒 剩余: 399.9秒 进度: 4000/22016 (匹配:4000, 失败:0, 缺失:0) 速度: 47.2个/秒 剩余: 381.9秒 进度: 4500/22016 (匹配:4500, 失败:0, 缺失:0) 速度: 47.1个/秒 剩余: 372.2秒 进度: 5000/22016 (匹配:5000, 失败:0, 缺失:0) 速度: 47.1个/秒 剩余: 361.4秒 进度: 5500/22016 (匹配:5500, 失败:0, 缺失:0) 速度: 44.2个/秒 剩余: 373.3秒 进度: 6000/22016 (匹配:6000, 失败:0, 缺失:0) 速度: 45.6个/秒 剩余: 351.0秒 进度: 6500/22016 (匹配:6500, 失败:0, 缺失:0) 速度: 46.2个/秒 剩余: 336.1秒 进度: 7000/22016 (匹配:7000, 失败:0, 缺失:0) 速度: 47.3个/秒 剩余: 317.4秒 进度: 7500/22016 (匹配:7500, 失败:0, 缺失:0) 速度: 47.7个/秒 剩余: 304.5秒 进度: 8000/22016 (匹配:8000, 失败:0, 缺失:0) 速度: 48.6个/秒 剩余: 288.4秒 进度: 8500/22016 (匹配:8500, 失败:0, 缺失:0) 速度: 49.1个/秒 剩余: 275.3秒 进度: 9000/22016 (匹配:9000, 失败:0, 缺失:0) 速度: 49.7个/秒 剩余: 261.6秒 进度: 9500/22016 (匹配:9500, 失败:0, 缺失:0) 速度: 49.7个/秒 剩余: 251.7秒 进度: 10000/22016 (匹配:10000, 失败:0, 缺失:0) 速度: 50.1个/秒 剩余: 239.7秒 进度: 10500/22016 (匹配:10500, 失败:0, 缺失:0) 速度: 49.7个/秒 剩余: 231.5秒 进度: 11000/22016 (匹配:11000, 失败:0, 缺失:0) 速度: 50.3个/秒 剩余: 218.9秒 进度: 11500/22016 (匹配:11500, 失败:0, 缺失:0) 速度: 50.4个/秒 剩余: 208.7秒 进度: 12000/22016 (匹配:12000, 失败:0, 缺失:0) 速度: 50.8个/秒 剩余: 197.3秒 进度: 12500/22016 (匹配:12500, 失败:0, 缺失:0) 速度: 51.3个/秒 剩余: 185.4秒 进度: 13000/22016 (匹配:13000, 失败:0, 缺失:0) 速度: 51.9个/秒 剩余: 173.6秒 进度: 13500/22016 (匹配:13500, 失败:0, 缺失:0) 速度: 51.6个/秒 剩余: 165.1秒 进度: 14000/22016 (匹配:14000, 失败:0, 缺失:0) 速度: 52.1个/秒 剩余: 153.8秒 进度: 14500/22016 (匹配:14500, 失败:0, 缺失:0) 速度: 52.4个/秒 剩余: 143.3秒 进度: 15000/22016 (匹配:15000, 失败:0, 缺失:0) 速度: 52.7个/秒 剩余: 133.2秒 进度: 15500/22016 (匹配:15500, 失败:0, 缺失:0) 速度: 52.8个/秒 剩余: 123.5秒 进度: 16000/22016 (匹配:16000, 失败:0, 缺失:0) 速度: 53.2个/秒 剩余: 113.1秒 进度: 16500/22016 (匹配:16500, 失败:0, 缺失:0) 速度: 53.6个/秒 剩余: 102.9秒 进度: 17000/22016 (匹配:17000, 失败:0, 缺失:0) 速度: 54.0个/秒 剩余: 92.9秒 进度: 17500/22016 (匹配:17500, 失败:0, 缺失:0) 速度: 54.3个/秒 剩余: 83.2秒 进度: 18000/22016 (匹配:18000, 失败:0, 缺失:0) 速度: 54.2个/秒 剩余: 74.1秒 进度: 18500/22016 (匹配:18500, 失败:0, 缺失:0) 速度: 54.5个/秒 剩余: 64.5秒 进度: 19000/22016 (匹配:19000, 失败:0, 缺失:0) 速度: 54.9个/秒 剩余: 54.9秒 进度: 19500/22016 (匹配:19500, 失败:0, 缺失:0) 速度: 55.2个/秒 剩余: 45.6秒 进度: 20000/22016 (匹配:20000, 失败:0, 缺失:0) 速度: 55.3个/秒 剩余: 36.5秒 进度: 20500/22016 (匹配:20500, 失败:0, 缺失:0) 速度: 55.6个/秒 剩余: 27.3秒 进度: 21000/22016 (匹配:21000, 失败:0, 缺失:0) 速度: 56.0个/秒 剩余: 18.2秒 进度: 21500/22016 (匹配:21500, 失败:0, 缺失:0) 速度: 56.1个/秒 剩余: 9.2秒 进度: 22000/22016 (匹配:22000, 失败:0, 缺失:0) 速度: 56.3个/秒 剩余: 0.3秒 进度: 22016/22016 (匹配:22016, 失败:0, 缺失:0) 速度: 53.1个/秒 剩余: 0.0秒 校验结果: 元数据包数: 22016 实际文件数: 22016 哈希匹配: 22016 哈希不匹配: 0 文件缺失: 0 多余文件: 0 (仅统计) ✅ 仓库验证通过 (无哈希不匹配文件) ================================================================================ 📦 开始验证仓库: kernel510 完整路径: /home/data/public/rpm/uos/1070e_x86_64/kernel510 Packages目录: /home/data/public/rpm/uos/1070e_x86_64/kernel510/Packages 使用线程数: 8 元数据文件: 5f6376852f25280006882e91b89862ac1b54e7b0e5c95dc544ad447e7fe31563-primary.sqlite.bz2 正在解析: 5f6376852f25280006882e91b89862ac1b54e7b0e5c95dc544ad447e7fe31563-primary.sqlite.bz2 成功从 SQLite 解析 518 个包 元数据包数: 518 实际RPM文件数: 494 开始多线程验证 (最大线程数: 8)... 进度: 500/518 (匹配:476, 失败:0, 缺失:24) 速度: 52.2个/秒 剩余: 0.3秒 进度: 518/518 (匹配:494, 失败:0, 缺失:24) 速度: 53.2个/秒 剩余: 0.0秒 校验结果: 元数据包数: 518 实际文件数: 494 哈希匹配: 494 哈希不匹配: 0 文件缺失: 24 多余文件: 0 (仅统计) ✅ 仓库验证通过 (无哈希不匹配文件) ================================================================================ 📦 开始验证仓库: Modular 完整路径: /home/data/public/rpm/uos/1070e_x86_64/Modular Packages目录: /home/data/public/rpm/uos/1070e_x86_64/Modular/Packages 使用线程数: 8 元数据文件: f300589ba03d0d005544052bbe9d228844c91cb05ecb385c31d4632bb13937ce-primary.sqlite.bz2 正在解析: f300589ba03d0d005544052bbe9d228844c91cb05ecb385c31d4632bb13937ce-primary.sqlite.bz2 成功从 SQLite 解析 3588 个包 元数据包数: 3588 实际RPM文件数: 3588 开始多线程验证 (最大线程数: 8)... 进度: 500/3588 (匹配:500, 失败:0, 缺失:0) 速度: 88.2个/秒 剩余: 35.0秒 进度: 1000/3588 (匹配:1000, 失败:0, 缺失:0) 速度: 72.6个/秒 剩余: 35.6秒 进度: 1500/3588 (匹配:1500, 失败:0, 缺失:0) 速度: 75.8个/秒 剩余: 27.6秒 进度: 2000/3588 (匹配:2000, 失败:0, 缺失:0) 速度: 79.4个/秒 剩余: 20.0秒 进度: 2500/3588 (匹配:2500, 失败:0, 缺失:0) 速度: 82.2个/秒 剩余: 13.2秒 进度: 3000/3588 (匹配:3000, 失败:0, 缺失:0) 速度: 83.1个/秒 剩余: 7.1秒 进度: 3500/3588 (匹配:3500, 失败:0, 缺失:0) 速度: 83.7个/秒 剩余: 1.1秒 进度: 3588/3588 (匹配:3588, 失败:0, 缺失:0) 速度: 84.0个/秒 剩余: 0.0秒 校验结果: 元数据包数: 3588 实际文件数: 3588 哈希匹配: 3588 哈希不匹配: 0 文件缺失: 0 多余文件: 0 (仅统计) ✅ 仓库验证通过 (无哈希不匹配文件) ================================================================================ 📦 开始验证仓库: update 完整路径: /home/data/public/rpm/uos/1070e_x86_64/update Packages目录: /home/data/public/rpm/uos/1070e_x86_64/update/Packages 使用线程数: 8 元数据文件: fcd8dac1369104bb693a9ff1f2d6c65631200b91dc4b1ce5a8623e157e99db43-primary.sqlite.bz2 正在解析: fcd8dac1369104bb693a9ff1f2d6c65631200b91dc4b1ce5a8623e157e99db43-primary.sqlite.bz2 成功从 SQLite 解析 4440 个包 元数据包数: 4440 实际RPM文件数: 4440 开始多线程验证 (最大线程数: 8)... 进度: 500/4440 (匹配:500, 失败:0, 缺失:0) 速度: 63.8个/秒 剩余: 61.8秒 进度: 1000/4440 (匹配:1000, 失败:0, 缺失:0) 速度: 66.6个/秒 剩余: 51.6秒 进度: 1500/4440 (匹配:1500, 失败:0, 缺失:0) 速度: 68.2个/秒 剩余: 43.1秒 进度: 2000/4440 (匹配:2000, 失败:0, 缺失:0) 速度: 65.6个/秒 剩余: 37.2秒 进度: 2500/4440 (匹配:2500, 失败:0, 缺失:0) 速度: 53.7个/秒 剩余: 36.1秒 进度: 3000/4440 (匹配:3000, 失败:0, 缺失:0) 速度: 57.1个/秒 剩余: 25.2秒 进度: 3500/4440 (匹配:3500, 失败:0, 缺失:0) 速度: 60.5个/秒 剩余: 15.5秒 进度: 4000/4440 (匹配:4000, 失败:0, 缺失:0) 速度: 63.1个/秒 剩余: 7.0秒 进度: 4440/4440 (匹配:4440, 失败:0, 缺失:0) 速度: 64.3个/秒 剩余: 0.0秒 校验结果: 元数据包数: 4440 实际文件数: 4440 哈希匹配: 4440 哈希不匹配: 0 文件缺失: 0 多余文件: 0 (仅统计) ✅ 仓库验证通过 (无哈希不匹配文件) ================================================================================ 📦 开始验证仓库: GM 完整路径: /home/data/public/rpm/uos/1070e_x86_64/GM Packages目录: /home/data/public/rpm/uos/1070e_x86_64/GM/Packages 使用线程数: 8 元数据文件: 91f730448d1509455bdc88ffcdff5b4852359d029f3c7c6947132e698289b8db-primary.sqlite.bz2 正在解析: 91f730448d1509455bdc88ffcdff5b4852359d029f3c7c6947132e698289b8db-primary.sqlite.bz2 成功从 SQLite 解析 41 个包 元数据包数: 41 实际RPM文件数: 41 开始多线程验证 (最大线程数: 8)... 进度: 41/41 (匹配:41, 失败:0, 缺失:0) 速度: 14.9个/秒 剩余: 0.0秒 校验结果: 元数据包数: 41 实际文件数: 41 哈希匹配: 41 哈希不匹配: 0 文件缺失: 0 多余文件: 0 (仅统计) ✅ 仓库验证通过 (无哈希不匹配文件) ================================================================================ 📦 开始验证仓库: OpenStack-V 完整路径: /home/data/public/rpm/uos/1070e_x86_64/OpenStack-V Packages目录: /home/data/public/rpm/uos/1070e_x86_64/OpenStack-V/Packages 使用线程数: 8 元数据文件: 1af1996fec77d219b12d7ac17aea686ec4e6379a12824e6ce831bbaa9e0e00ec-primary.sqlite.bz2 正在解析: 1af1996fec77d219b12d7ac17aea686ec4e6379a12824e6ce831bbaa9e0e00ec-primary.sqlite.bz2 成功从 SQLite 解析 1694 个包 元数据包数: 1694 实际RPM文件数: 1694 开始多线程验证 (最大线程数: 8)... 进度: 500/1694 (匹配:500, 失败:0, 缺失:0) 速度: 89.3个/秒 剩余: 13.4秒 进度: 1000/1694 (匹配:1000, 失败:0, 缺失:0) 速度: 92.9个/秒 剩余: 7.5秒 进度: 1500/1694 (匹配:1500, 失败:0, 缺失:0) 速度: 96.7个/秒 剩余: 2.0秒 进度: 1694/1694 (匹配:1694, 失败:0, 缺失:0) 速度: 97.1个/秒 剩余: 0.0秒 校验结果: 元数据包数: 1694 实际文件数: 1694 哈希匹配: 1694 哈希不匹配: 0 文件缺失: 0 多余文件: 0 (仅统计) ✅ 仓库验证通过 (无哈希不匹配文件) ================================================================================ 📊 最终校验结果 ================================================================================ 📦 仓库统计: 总计仓库: 7 个 通过仓库: 7 个 失败仓库: 0 个 📦 文件统计: 哈希匹配: 34809 哈希不匹配: 0 文件缺失: 24 已删除: 0 📋 详细仓库统计: -------------------------------------------------------------------------------- ✅ OS 匹配:2536 失败: 0 缺失: 0 删除: 0 (32.8s) ✅ everything 匹配:22016 失败: 0 缺失: 0 删除: 0 (424.8s) ✅ kernel510 匹配: 494 失败: 0 缺失: 24 删除: 0 (10.1s) ✅ Modular 匹配:3588 失败: 0 缺失: 0 删除: 0 (44.4s) ✅ update 匹配:4440 失败: 0 缺失: 0 删除: 0 (71.2s) ✅ GM 匹配: 41 失败: 0 缺失: 0 删除: 0 (2.9s) ✅ OpenStack-V 匹配:1694 失败: 0 缺失: 0 删除: 0 (18.1s) 📄 报告已保存: /home/data/public/rpm/uos/1070e_x86_64/hash_verify_summary_20261021_025536.txt ✅ 所有文件哈希校验通过!