All Products
Search
Document Center

Elastic Compute Service:Check and repair custom images

Last Updated:Nov 20, 2025

The image check feature verifies that custom images are valid and can be used to create fully functional Elastic Compute Service (ECS) instances. You can use this feature when you create or import images. After the check is complete, you can view the results in the image console. Follow the repair suggestions to improve image quality and ensure that your ECS instances run in a stable and efficient manner.

Note
  • The image check is automatically triggered after you create or import an image. The check does not affect the creation or import process, even if it fails.

  • The image check feature is free of charge.

  • Images that pass the check are tagged with the operating system version (acs:ecs:image:osVersion) and kernel version (acs:ecs:image:kernelVersion) tags.

Limits

The image check feature is available only if the snapshots used to create the custom image are not encrypted, or if the source instance does not contain encrypted disks.

The image check feature does not support some Linux and Windows operating systems. For more information, see the following tables.

Unsupported Linux operating systems

Operating system

Version

Gentoo

Gentoo 13 64-bit

Gentoo_32

Gentoo_64

Gentoo_arm64

Aliyun

LifseaOS 10 64-bit

LifseaOS 3 64-bit

LifseaOS 3 64-bit GPU Edition

FreeBSD

FreeBSD 10.1 64-bit

FreeBSD 8.2 64-bit

Freebsd_32

Freebsd_64

FreeBSD 11.1 64-bit

FreeBSD 11.2 64-bit

FreeBSD 11.3 64-bit

FreeBSD 12.1 64-bit

FreeBSD 11.4 64-bit

Freebsd_arm64

FreeBSD 13.0 64-bit

FreeBSD 12.3 64-bit

CoreOS

CoreOS 681.2.0 64-bit

CoreOS_32

CoreOS_64

CoreOS 1353.8.0 64-bit

CoreOS 1465.8.0 64-bit

CoreOS 1576.5.0 64-bit

CoreOS 1688.5.3 64-bit

CoreOS 1745.7.0 64-bit

CoreOS 2023.4.0 64-bit

CoreOS 2247.6.0 64-bit

CoreOS 2303.3.0 64-bit

CoreOS 2303.4.0 64-bit

CoreOS 2345.3.0 64-bit

CoreOS_arm64

Fedora CoreOS

FedoraCoreOS_64

Fedora CoreOS 33.20210217.3.0_3

FedoraCoreOS_arm64

Fedora CoreOS 34.20210529.3.0_3

Solaris

Solaris 10u8 64-bit

mars

Aliyun Customized Linux

Customized Linux

CustomizedLinux_64

CustomizedLinux_32

CustomizedLinux_arm64

Unsupported Windows operating systems

Operating system

Version

Windows Server 2008

Windows Server 2008 Standard Edition 64-bit Chinese Edition

Windows Server 2008 Standard Edition 64-bit English Edition

Windows Server 2008 Standard Edition SP2 32-bit Chinese Edition

Windows Server 2008 Enterprise Edition 32-bit Chinese Edition

Windows Server 2008 Standard Edition SP2 32-bit English Edition

WindowsServer2008_64

WindowsServer2008_32

Windows Server 2008 Standard Edition SP2 32-bit Japanese Edition

Windows Server 2003

Windows Server 2003 R2 Standard Edition SP2 64-bit Chinese Edition

Windows Server 2003 R2 Standard Edition SP2 32-bit Chinese Edition

Windows Server 2003 R2 Standard Edition SP2 64-bit English Edition

Windows Server 2003 R2 Enterprise Edition 64-bit English Edition

Windows Server 2003 R2 Enterprise Edition 64-bit Chinese Edition

Windows Server 2003 R2 Enterprise Edition 32-bit Chinese Edition

WindowsServer2003_64

WindowsServer2003_32

Windows 7

Windows7_32

Windows 8

Windows8_32

Windows 10

Windows10_32

Configure image check

Configure the check when you create an image

Console

When you create a custom image in the ECS console, the image check feature is enabled by default. Keep the default setting. For more information, see Create a custom image from an instance and Create a custom image from a snapshot.

API

Call the CreateImage operation and set the DetectionStrategy parameter to Standard. You can run this operation in OpenAPI Explorer to simplify signature calculation and automatically generate software development kit (SDK) code examples.

Configure the check when you import an image

Console

When you import a custom image in the console, the image check feature is enabled by default. Keep the default setting. For more information, see Import a custom image.

API

Call the ImportImage operation and set the DetectionStrategy parameter to Standard. You can run this operation in OpenAPI Explorer to simplify signature calculation and automatically generate SDK code examples.

View image check results

Console

  1. On the Custom Images page, find the image that you created. An image check is automatically performed after the image status changes to Available.

  2. Hover over the check result and click View More to view the detailed results of the image check.image

  3. If any items require repair, repair them as suggested.

    • (Linux only) You can click Repair to fix the image with the ACS-ECS-RepairImage public template from CloudOps Orchestration Service (OOS).

    • You can also manually repair the image based on the suggestions in the image details. For more information about the check items and repair suggestions, see Image check items and repair suggestions.

    image.png

API

Call the DescribeImages operation and query the results using the ID of the checked image. You can run this operation in OpenAPI Explorer to simplify signature calculation and automatically generate SDK code examples.

Note

In the return value, DetectionOptions indicates the check results. Status indicates the state of the check task, and Item indicates the result of each check item.

Image check items and fix suggestions

Linux

Check item

Description

Repair suggestion

GUESTOS.Platform

The system platform. The value must be a Linux operating system.

Not applicable

GUESTOS.OSVersion

The operating system version.

Not applicable

GUESTOS.Architecture

The system architecture.

Not applicable

GUESTOS.RtcTimeMode

The hardware clock (Real Time Clock (RTC)) time zone of the image. Valid values are UTC and local. The time zone must be set to UTC.

To set the hardware clock time standard to UTC, see Linux time and time zones.

GUESTOS.BootMode

The boot mode of the image. Valid values are LEGACY and UEFI.

Not applicable

GUESTOS.KernelVersion

The kernel version.

Not applicable

GUESTOS.Virtio

Checks whether the virtio driver is installed in the image. ECS instances require virtualization device drivers to run. If this driver is not installed, the instance may fail to start.

To install the virtio driver for an image, see Install the virtio driver.

GUESTOS.Nvme

Checks whether the NVMe driver is installed in the image. Some ECS instance types, such as ecs.g7se, use disks that are attached based on the NVMe protocol. The NVMe driver must be installed in the image.

To install the NVMe driver for an image, see How do I install the NVMe driver for an existing custom image?.

GUESTOS.Fstab

Checks the /etc/fstab file in the image, which contains mount information for system disk devices. Incorrect configurations, such as non-existent mount device information or incorrect device UUIDs, can cause the system to fail to start.

To correctly configure /etc/fstab, see Configure UUIDs in the fstab file to automatically mount data disks.

GUESTOS.Grub

Checks whether the GRand Unified Bootloader (GRUB) file in the image is valid. Invalid device configurations, non-existent devices, or incorrect UUIDs can cause the system to fail to start.

None

GUESTOS.Dhcp

Checks whether the network configuration file in the image is set to DHCP mode. If the image is set to a static mode, the network configuration of the instance is abnormal after startup.

To set the network configuration mode of the image to DHCP, see Configure DHCP for a Linux instance.

GUESTOS.Selinux

Checks whether SELinux is disabled in the image. We recommend that you do not enable SELinux for cloud images because it may cause the system to fail to start.

To disable SELinux, see Enable or disable SELinux.

GUESTOS.OnlineResizeFS

Checks whether the image supports automatic expansion of the root partition. If cloud-init and the growpart command are installed in the image, the root partition automatically expands after an instance is created from the image. For example, if your image size is 20 GB and the system disk size is set to 100 GB when you create an instance, the root partition automatically expands to 100 GB after the instance is created.

To configure the image to support automatic expansion, see Install cloud-init.

GUESTOS.SystemImage

Checks whether the image is a valid system disk image. Do not import invalid images, such as ISO images or empty images.

Not applicable

GUESTOS.CloudAssistant

Checks whether Cloud Assistant is installed in the image. Cloud Assistant is a native automated O&M tool for ECS. It lets you perform batch operations, run commands (such as Shell, PowerShell, and Bat commands), and send files to ECS instances without requiring passwords, logons, or jump servers. We recommend that you install Cloud Assistant in your image to efficiently perform O&M on ECS instances.

To install Cloud Assistant, see Install the Cloud Assistant Agent.

GUESTOS.CloudInit

Checks whether cloud-init is installed in the image. cloud-init is a standard service for initializing and configuring cloud servers. It configures the hostname, key, and root partition expansion for instances.

To install cloud-init for an image, see Install cloud-init.

GUESTOS.SecurityCenterAgent

Checks whether the Security Center Agent is installed in the image. Security Center is a unified security management system that identifies, analyzes, and warns about security threats in real time. It provides security capabilities such as anti-ransomware, anti-virus, tamper-proofing, and compliance checks to comprehensively detect and protect your servers and web applications.

To install the Security Center Agent for an image, see Install the client.

GUESTOS.SupportMocInstanceTypes

Checks whether the image supports Alibaba Cloud ECS Bare Metal Instance families.

The latest ECS instances from Alibaba Cloud are typically Bare Metal Instances, such as ecs.g6 and ecs.g7. If the system and kernel versions of the image are too old, the instance may fail to start on these instance families. For more information about instance types, see Instance family.

  • If you are using CentOS 5, upgrade to the latest CentOS 5.11. For more information, see How do I resolve instance downtime after migration?.

  • Operating systems that do not support Bare Metal Instance families are typically older, end-of-life (EOL) versions that are no longer maintained. Alibaba Cloud recommends that you update and upgrade to an operating system version that is still maintained by its vendor as soon as possible.

Windows

Check item

Description

Repair suggestion

GUESTOS.Platform

The system platform. The value must be a Windows operating system.

Not applicable

GUESTOS.OSVersion

The operating system version.

Not applicable

GUESTOS.Architecture

The system architecture.

Not applicable

GUESTOS.KernelVersion

The kernel version.

Not applicable

GUESTOS.Virtio

Checks whether the virtio driver is installed in the image. ECS instances require virtualization device drivers to run. If this driver is not installed, the instance may fail to start.

To install the virtio driver for an image, see Install the virtio driver.

GUESTOS.BCD

Checks whether the Boot Configuration Data (BCD) file in the image is correct. A lost or corrupted BCD file can prevent the instance from starting.

Use the correct BCD file.

GUESTOS.Registry

Checks whether the registry file in the image is correct. A lost or corrupted registry file can cause the instance to fail to start.

Use the correct registry file.

GUESTOS.Hotfix

Checks whether the patches in the image are correct. Missing required patches or installing problematic patches can cause the instance to fail to start.

  • Uninstall incorrect patches. Incorrect patches include the following: KB5009624, KB5009595, KB5009546, KB5009557, KB5009555, KB5014738, KB5014702, KB5014692, and KB5014678.

  • For Microsoft Windows Server 2008 R2 64-bit operating systems, you must also install the KB3033929 patch.

GUESTOS.Disk

Checks whether the disk settings in the image are correct. Residual driver entries on the disk can cause the instance to fail to start.

Clear residual drivers from the registry

GUESTOS.Sysprep

Checks whether the Sysprep process was completed when the image was created. If the Sysprep process was aborted due to operations such as a forced shutdown, the instance may fail to start.

Create the image again. Make sure not to interrupt the Sysprep process. For more information, see Create a VM and install an operating system.

GUESTOS.Update

Checks whether the Update process was completed when the image was created. If the Update process was aborted due to operations such as a forced shutdown, the instance may fail to start.

Create the image again. Make sure not to interrupt the system update process. For more information, see Create a VM and install an operating system.

GUESTOS.Xen

Checks for residual Xen drivers, which can prevent the system from starting normally.

Xen driver configuration does not take effect

GUESTOS.CloudAssistant

Checks whether Cloud Assistant is installed in the image. Cloud Assistant is a native automated O&M tool for ECS. It lets you perform batch operations, run commands (such as Shell, PowerShell, and Bat commands), and send files to ECS instances without requiring passwords, logons, or jump servers. We recommend that you install Cloud Assistant in your image to efficiently perform O&M on ECS instances.

To install Cloud Assistant, see Install the Cloud Assistant Agent.

GUESTOS.Server

Checks whether the service configuration in the image is correct. If driver installation is disabled, driver updates will fail on instances created from the image.

Allow driver installation

GUESTOS.DesktopConfig

Checks whether the desktop configuration file (desktop.ini) is missing. If it is missing, the desktop configuration will be invalid.

Configure the correct desktop.ini file.

GUESTOS.BootMgr

Checks whether the system boot manager (BootMgr) is missing. If it is missing, the system cannot start.

Configure the correct BootMgr.

Clear residual drivers from the registry

The HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control registry tree contains configuration information that controls system startup and certain device aspects. The Class subkey contains filter drivers registered on the device. If these filter drivers have been deleted but their entries remain in the registry, the instance may fail to start. You must clear these residual filter driver entries. The following steps describe how to manually clear residual entries from the disk class registry.

  1. Log on to the source server from which the image file was created.

  2. Open the registry.

    For example, on Windows 10, enter regedit in the search box on the taskbar and press Enter to open the registry.

  3. Open the disk registry key.

    The path to the disk registry is HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Control\Class\{4d36e967-e325-11ce-bfc1-08002be10318}.

  4. Confirm and delete the residual drivers.

    1. Check the value of the UpperFilter property to determine whether there are residual drivers in the system.

      If a driver no longer exists in the image (check in C:\Windows\System32\drivers) but its entry remains in UpperFilters, it is a residual driver.

      Warning

      Be careful when you delete drivers. To avoid system exceptions caused by accidental deletion, make sure that the driver is not a system-provided driver.

      For example, `partmgr` in the following figure is a system-provided driver. Do not delete it from UpperFilters.系统自带驱动

    2. Delete the names of the residual drivers from UpperFilters.

Disable the Xen driver

A virtual private cloud (VPC) does not use the Xen driver. However, some old images may contain residual Xen drivers, which can cause instance startup exceptions. You can configure the Xen driver in the registry to disable it.

  1. Log on to the source server from which the image file was created.

  2. Open the registry.

    For example, on Windows 10, enter regedit in the search box on the taskbar and press Enter to open the registry.

  3. Open the corresponding registry key.

    The registry path is HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Services\XenPCI\Parameters.

  4. Modify the value of the hide_devices property in the registry and leave it empty.

    修改注册表

Allow driver installation

The HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services registry tree records all services in the system. Some of these services can control whether drivers can be installed. If installation is disabled, the drivers of instances created from the image cannot be updated. You must modify the registry property in the image that prohibits driver installation.

  1. Log on to the source server from which the image file was created.

  2. Open the registry.

    For example, on Windows 10, enter regedit in the search box on the taskbar and press Enter to open the registry.

  3. Open the corresponding registry key.

    • For Windows Server 2008 R2 and later: The registry path is HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Services\DeviceInstall\Parameters.

    • For Windows Server 2008 R2 and earlier: The registry path is HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Services\PlugPlay\Parameters.

  4. Modify the registry property that prohibits driver installation. If the DeviceInstallDisabled property exists and its value is not 0, change its value to 0 or delete the property.

    • Example for Windows Server 2008 R2:2008R2系统注册表

    • Example for Windows Server 2016:windows server 2016注册表

What to do next

After you check and repair a custom image, you can use it to create fully functional ECS instances. For more information, see Create an instance from a custom image or a shared image.