赛尔校园公共服务平台 Logo
平台使用
阿里云
百度云
移动云
智算服务
教育生态
登录 →
赛尔校园公共服务平台 Logo
平台使用 阿里云 百度云 移动云 智算服务 教育生态
登录
  1. 首页
  2. 百度云
  3. 云服务器 BCC
  4. 操作指南
  5. 镜像
  6. 导入自定义镜像
  7. 使用镜像检测工具检测镜像

使用镜像检测工具检测镜像

  • 导入自定义镜像
  • 发布于 2025-04-02
  • 0 次阅读
文档编辑
文档编辑

Linux系统镜像检测工具

在将自定义镜像导入至百度智能云之前,建议您使用镜像检测工具 bd_diagnosis 来检查镜像是否符合导入条件。这可以帮助确保自定义镜像的质量,从而顺利部署功能齐全且兼容性良好的实例。本文将介绍如何使用 bd_diagnosis 工具进行自定义镜像的检测。

bd_diagnosis 工具介绍

bd_diagnosis 是百度智能云提供的Linux镜像检测工具,用于扫描镜像中的系统和服务配置,并生成检测报告。该报告详细描述了镜像的系统信息以及检测到的异常情况。

当前不支持 FreeBSD 系统。

操作步骤

  1. 使用 root 用户登录待检测的服务器内。
  2. 依次运行以下命令,下载并解压 bd_diagnosis 工具。
wget https://wanjuan-docs.bj.bcebos.com/bd_diagnosis.tar.gz
tar xf bd_diagnosis.tar.gz

或者您也可以通过浏览器下载 bd_diagnosis 工具。

  1. 执行以下命令,运行检测工具
cd bd_diagnosis
./main

检测工具主要检查以下配置项:

检测项 级别 检查项说明 修复建议
virtio driver 高 检测是否安装 virtio 驱动。实例运行需要相关虚拟化设备驱动支持,未安装该驱动会导致实例启动异常。 安装virtio。
cloud-init 高 检测是否安装 cloud-init。cloud-init 能在启动时动态完成系统初始化,包括主机名和 SSH 密钥等,同时执行实例自定义数据(User data)脚本。未安装导致系统初始化配置缺失。 安装Cloud-init。
fstab config 高 检测镜像中/etc/fstab文件系统磁盘设备挂载信息是否配置正确,错误的配置会导致系统启动异常,例如配置的挂载设备信息不存在、设备UUID错误等。 无
grub 高 检测镜像中grub引导文件是否正常。例如device设备配置异常、相关设备不存在、UUID错误等,会导致系统启动异常。 无
root 高 检测系统是否存在 root 用户。若不存在,管理权限受控,安全风险增加。管理权限受控,安全风险增加。 您可以通过修改 /etc/passwd 中的 root 用户配置为 root:x:0:0:root:/root:/bin/bash
sshd service 高 检测 sshd 服务的配置文件(通常是 /etc/ssh/sshd_config)是否正常。若异常,实例 SSH 连接失败。 无
passwd command 高 检查 /etc/shadow 和 /etc/passwd 文件是否存在及读写权限
若无读写权限,实例修改密码等操作无法生效。
您可以在 root 用户下通过执行 chmod +rw /etc/shadow /etc/passwd 恢复文件的读写权限。
DHCP 高 检测网络配置是否为 DHCP。如果镜像中设置为静态模式,会导致实例启动后网络配置异常。 需将网络设置为DHCP动态获取IP模式和清空70-persistent-net.rules文件。
disk size 高 检查系统中磁盘的大小是否超过 500GB。
百度智能云最大支持500GB系统盘。建议你的系统分区大小不要超过500G。否则会无法导入。
无
disk partition 高 检测系统分区类型是否正确。
BCC实例以 BIOS 模式启动的磁盘分区为 MBR。EBC裸金属实例一般以 UEFI 模式启动,磁盘分区为 GPT与系统不兼容的分区模式会导致启动故障。
无
file system type 高 检测文件系统类型。推荐使用 ext2/ext3/ext4 文件系统,其他类型的文件系统会导致系统异常。 无
selinux 中 检测是否禁用 SELinux,建议您关闭SELinux。开启有可能会导致系统启动异常。 需将SElinux置为disable。
Firewall 中 检测防火墙服务是否开启。建议您关闭系统中的防火墙服务,使用安全组统一管理您云上实例的出入流量。开启系统防火墙应用可能导致您访问实例失败。 关闭防火墙。
LVM 中 检测使用lvm分区及设置。会导致无法挂载任务失败,用户无法使用根区容器登录。不建议您使用 lvm 分区。 无
disk uuid 中 检查 Linux 系统的根分区是否通过 UUID 挂载。
当根分区以设备名称挂载,系统启动时名称变化,将导致无法找到根文件系统而启动失败。建议根分区通过UUID挂载。
您可以执行 blkid id 获取分区 UUID,并用 UUID 替换 /etc/fstab 中的分区表示符。
mlx5 driver 中 检测是否安装Mellanox网卡驱动。若未安装,无法使用依赖 Mellanox 网卡设备的实例规格(如bcc.ga2、bcc.ica2、bcc.ma2、bcc.la2等)。 若您镜像应用实例规格依赖该网卡驱动,请安装Mellanox 网卡驱动。
Kernel config 中 检测 Linux 系统上的内核配置信息,确保系统的关键功能(如硬件热插拔)是否开启。关闭不影响实例运行,但系统不支持内核特性(如硬件热插拔)。比如若实例属于g4、c4、ic4、m4规格族,在线变配后系统内不生效,需重启生效。 此项异常不影响实例运行,可镜像导入后按需配置。
halt 中 检测是否配置halt。EBC裸金属实例关机依赖halt能力。若镜像用于创建EBC裸金属实例,建议配置halt。 此项异常不影响实例启动,可导入后按需配置。
SshPort 低 检测 22 端口是否启用。22端口关闭,将无法通过该端口执行登录和数据传输等操作。 此项异常不影响实例启动,可导入后按需配置。
online resize fs 低 检测镜像是否支持根分区自动扩容。例如您的镜像虚拟磁盘空间大小为10 GB,您购买实例的系统盘为 200 GB,如果您安装了cloud-init、growpart等组件,相关组件在实例初始化时会将根分区及文件系统扩容,扩容至您系统盘的大小 200 GB。 此项异常不影响实例运行,可导入后按需配置。
graphic 低 检测ubuntu系统是否开启图形桌面。若ubuntu系统用于EBC裸金属实例,不建议开启图形桌面。开启可能会导致睡眠,进而影响到 ssh 登录失败。 若用于EBC裸金属实例,建议关闭图形桌面。
bsm agent 中 检测是否安装bsm-agent。bsm-agent是为实现云服务器BCC、BBC等实例自动化运维打造的工具。建议您安装bsm-agent。 此项异常不影响实例启动,只是无法使用云助手、运维编排等能力。若需要,请镜像导入完成后创建实例后,再安装bsm-agent。
bcm agent 中 检测是否安装bcm-agent 。BCM-Agent 作为用户侧的采集程序,承担了采集和传输重要监控数据的任务,便于用户及时感知系统状态。建议您安装 bcm-agent。 此项异常不影响实例启动,只是实例无法监控指标数据。若需要,请镜像导入完成后创建实例后,安装bcm-agent。
has agent 中 检测是否安装has-agent。has-agent 能够确保硬件组件的健康状态得到实时监控,并在发现异常时上报,从而帮助运维人员快速定位问题并采取措施。建议您安装 has-agent 便于硬件监控服务。 此项异常不影响实例启动,只是无法及时检测到裸金属实例的硬件故障。若需要,请镜像导入完成后创建实例后,安装has-agent。
hosteye 中 检测是否安装hosteye客户端。主机安全监控端(Hosteye)是针对用户的服务监控与行业安全的延续,提供主机安全服务,其具备高稳定性、轻部署的特点,云主机安全端更加强大的防护能力。建议您安装 hosteye 客户端,并应用相关规则。 此项异常不影响实例启动,只是云上安全防护性降低。若需要,请镜像导入完成后创建实例后,再安装hosteye。

等待检测工具检测完成,检测结果类似如下信息。

9bd5945c3e6fe62ce3616e91f53e46b8.png

检测工具会根据检测项的等级给出OK、CRITICAL或WARNING检测结果。

检测结果说明

  • OK:检测项均符合要求。
  • CRITICAL:强烈建议修复项。使用该自定义镜像创建的实例会出现无法正常启动、网络异常等严重问题,建议您修复报错项后再导入镜像。
  • WARNING:建议优化项。不影响使用该自定义镜像创建的实例启动,但会缺少云助手自动化运维等能力。您可忽略报错项继续导入镜像,但建议您在镜像导入创建实例后按需进行优化,以提高您云上的运维效率。

Windows系统镜像检测工具

检查项如下:

检测项 说明 修复建议
VirtIO驱动 百度云支持KVM虚拟化技术,导入百度云的镜像需要安装KVM virtio驱动 如何为系统安装virtio 驱动,请参见安装virtio驱动
磁盘分区类型 百度云BCC默认支持MBR磁盘分区类型 无
磁盘大小 百度云服务器最大支持2TB系统盘 无
cloudbase-init 建议安装cloudbase-init,用来设置hostname、密码等 如何为系统安装cloudbase-init,请参考安装cloudbase-init
MLNX_WinOF2网络驱动 对于Windows Server 2016、2019、2022,建议安装MLNX_WinOF2网卡驱动,有些规格的实例(如bcc.ga2、bcc.ica2、bcc.ma2、bcc.la2等)需要安装该网卡驱动才能识别网络设备 如何为系统安装MLNX_WinOF2驱动,请参考安装MLNX_WinOF2驱动

下载检测工具 check-windows.ps1 到您的系统中,打开powershell窗口,执行该脚本:

windows show

相关文章

导入概述 2025-04-02 17:55

在导入镜像前,您应该已经完成如下工作: 通读镜像导入说明,保证待导入的镜像满足各种限制和要求; 开通对象存储BOS。 镜像导入步骤 1.登录百度智能云对象存储控制台,上传您制作好的镜像文件【参考BOS控制台用户指南】 注:WEB上传不支持直接上传超过5G的文件,如果您的镜像文件实际大小超过5G,请安

镜像导入限制 2025-04-02 17:55

检查virtio驱动 2025-04-02 17:55

安装virtio驱动 2025-04-02 17:55

安装cloudbase-init 2025-04-02 17:55

检测网络配置 2025-04-02 17:55

在镜像导入前,确保您的系统获取网络地址的方式为动态获取。

目录
Copyright © 2025 your company All Rights Reserved. Powered by 赛尔网络.
京ICP备14022346号-15
gongan beian 京公网安备11010802041014号