Help Center/ Image Management Service/ FAQs/ ECS Creation/ What Do I Do If the Disks of a CentOS ECS Created from an Image Cannot Be Found?
Updated on 2024-11-06 GMT+08:00

What Do I Do If the Disks of a CentOS ECS Created from an Image Cannot Be Found?

Symptom

When you started a CentOS ECS, the system cannot find disks. Generally, this is because the xen-blkfront.ko module was not loaded during the startup. You need to modify OS kernel startup parameters.

Figure 1 Startup screen

Solution

Modify OS kernel boot parameters.

These operations can only be performed after a normal OS startup. So, perform them in the source ECS of the image instead of the current ECS.

  1. Run the following command to log in to the OS:
    lsinitrd /boot/initramfs-`uname -r`.img |grep -i xen
    • If the command output contains xen-blkfront.ko, contact the customer service.
    • If no command output is displayed, go to 2.
  2. Back up the GRUB file.
    • If the ECS runs CentOS 6, run the following command:

      cp /boot/grub/grub.conf /boot/grub/grub.conf.bak

    • If the ECS runs CentOS 7, run the following command:

      cp /boot/grub2/grub.cfg /boot/grub2/grub.cfg.bak

  3. Use the vi editor to open the GRUB file (CentOS 7 as an example).

    vi /boot/grub2/grub.cfg

  4. Add xen_emul_unplug=all to the default boot kernel.

    Search for the line that contains root=UUID= and add xen_emul_unplug=all to the end of the line.

    menuentry 'CentOS Linux (3.10.0-229.el7.x86_64) 7 (Core) with debugging' --class centos --class gnu-linux --class gnu --class os --unrestricted $menuentry_id_option 'gnulinux-3.10.0-229.el7.x86_64-advanced-bf3cc825-7638-48d8-8222-cd2f412dd0de' {
            load_video
            set gfxpayload=keep
            insmod gzio
            insmod part_msdos
            insmod ext2
            set root='hd0,msdos1'
            if [ x$feature_platform_search_hint = xy ]; then
              search --no-floppy --fs-uuid --set=root --hint='hd0,msdos1'  bf3cc825-7638-48d8-8222-cd2f412dd0de
            else
              search --no-floppy --fs-uuid --set=root bf3cc825-7638-48d8-8222-cd2f412dd0de
            fi
            linux16 /boot/vmlinuz-3.10.0-229.el7.x86_64 root=UUID=bf3cc825-7638-48d8-8222-cd2f412dd0de xen_emul_unplug=all ro crashkernel=auto rhgb quiet  systemd.log_level=debug systemd.log_target=kmsg
            initrd16 /boot/initramfs-3.10.0-229.el7.x86_64.img
    }
  5. Press Esc, enter :wq, and press Enter to exit the vi editor.
  6. Create an image using the ECS, upload and register the image on the cloud, and then use the image to create a new ECS.