Advanced
Тема интерфейса

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.

Note

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.
    Note

    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.