Este conteúdo foi traduzido por máquina para sua conveniência e a Huawei Cloud não pode garantir que o conteúdo foi traduzido com precisão. Para exibir o conteúdo original, use o link no canto superior direito para mudar para a página em inglês.
Central de ajuda/ Image Management Service/ Melhores práticas/ Criação de uma imagem do Linux usando o VirtualBox e um arquivo ISO/ Configuração da VM/ Instalação de drivers e alteração dos identificadores de disco para o formato UUID
Atualizado em 2024-09-09 GMT+08:00

Instalação de drivers e alteração dos identificadores de disco para o formato UUID

Para garantir que os ECSs criados a partir da imagem suportem a virtualização Xen e KVM, instale os drivers Xen e KVM nativos e altere os identificadores de disco para o formato UUID da VM usada como origem da imagem.

Esta seção descreve como executar essas operações em uma VM do Linux que executa o Ubuntu 20.04. Para outros sistemas operacionais, consulte Processo de otimização (Linux).

Instalar drivers Xen e KVM nativos

  1. Execute o seguinte comando para abrir o arquivo modules:

    vi /etc/initramfs-tools/modules

  2. Pressione i para entrar no modo de edição e adicione os drivers Xen (xen-pv) e KVM (virtio) nativos ao arquivo /etc/initramfs-tools/modules (o formato depende dos requisitos do sistema operacional).
    [root@CTU10000xxxxx ~]#vi /etc/initramfs-tools/modules 
    ...
    # Examples: 
    # 
    # raid1 
    # sd_mOd 
    xen-blkfront 
    xen-netfront 
    virtio_blk 
    virtio_scsi 
    virtio_net 
    virtio_pci 
    virtio_ring 
    virtio  
  3. Pressione Esc, digite :wq e pressione Enter para salvar as configurações e sair do editor vi.
  4. Execute o seguinte comando para gerar o initrd novamente:

    update-initramfs -u

  5. Execute os seguintes comandos para verificar se os drivers Xen e KVM nativos foram instalados:

    lsinitramfs /boot/initrd.img-`uname -r` |grep xen

    lsinitramfs /boot/initrd.img-`uname -r` |grep virtio

    [root@ CTU10000xxxxx home]# lsinitramfs /boot/initrd.img-`uname -r` |grep xen 
    lib/modules/3.5.0-23-generic/kernel/drivers/net/ethernet/qlogic/netxen 
    lib/modules/3.5.0-23-generic/kernel/drivers/net/ethernet/qlogic/netxen/netxen_nic.ko 
    lib/modules/3.5.0-23-generic/kernel/drivers/net/xen-netback 
    lib/modules/3.5.0-23-generic/kernel/drivers/net/xen-netback/xen-netback.ko 
    lib/modules/3.5.0-23-generic/kernel/drivers/block/xen-blkback 
    lib/modules/3.5.0-23-generic/kernel/drivers/block/xen-blkback/xen-blkback.ko 
     
    [root@ CTU10000xxxxx home]# lsinitramfs /boot/initrd.img-`uname -r` |grep virtio 
    lib/modules/3.5.0-23-generic/kernel/drivers/scsi/virtio_scsi.ko

    Se você adicionar drivers internos ao arquivo initrd ou initramfs, a VM não será afetada. Isso facilita a modificação dos drivers. No entanto, os drivers não podem ser mostrados executando o comando lsinitrd. Você pode executar os seguintes comandos para verificar se os drivers são integrados no kernel:

    [root@ CTU10000xxxxx home]# cat /boot/config-`uname -r` | grep CONFIG_VIRTIO | grep y
    CONFIG_VIRTIO_BLK=y
    CONFIG_VIRTIO_NET=y
    CONFIG_VIRTIO=y
    CONFIG_VIRTIO_RING=y
    CONFIG_VIRTIO_PCI=y
    CONFIG_VIRTIO_MMIO_CMDLINE_DEVICES=y
    [root@ CTU10000xxxxx home]# cat /boot/config-`uname -r` | grep CONFIG_XEN | grep y
    CONFIG_XEN_BLKDEV_FRONTEND=y
    CONFIG_XEN_NETDEV_FRONTEND=y

Altere o identificador de disco no arquivo de configuração do GRUB para o formato UUID

Tomemos como exemplo o Ubuntu 20.04. Execute blkid para obter o UUID da partição raiz. Modifique o arquivo /boot/grub/grub.cfg e use o UUID da partição raiz para configurar o item de inicialização. Se a partição raiz já usa UUID, nenhuma modificação é necessária. O procedimento é o seguinte:
  1. Efetue logon na VM recém-criada como usuário root.
  2. Execute o seguinte comando para consultar todos os tipos de sistemas de arquivos montados e seus UUIDs de dispositivo:

    blkid

    As seguintes informações são exibidas:

    /dev/xvda1: UUID="ec51d860-34bf-4374-ad46-a0c3e337fd34" TYPE="ext3"
    /dev/xvda5: UUID="7a44a9ce-9281-4740-b95f-c8de33ae5c11" TYPE="swap"
  1. Execute o seguinte comando para consultar o arquivo grub.cfg:

    cat /boot/grub/grub.cfg

    As seguintes informações são exibidas:

    ......menuentry 'Ubuntu Linux, with Linux 3.13.0-24-generic' --class ubuntu --class gnu-linux --class gnu --class os --unrestricted $menuentry_id_option 'gnulinux-3.13.0-24-generic-advanced-ec51d860-34bf-4374-ad46-a0c3e337fd34' {
    recordfail
    load_video
    gfxmode $linux_gfx_mode
    insmod gzio
    insmod part_msdos
    insmod ext2
    if [ x$feature_platform_search_hint = xy ]; then
    search --no-floppy --fs-uuid --set=root ec51d860-34bf-4374-ad46-a0c3e337fd34
    else
    search --no-floppy --fs-uuid --set=root ec51d860-34bf-4374-ad46-a0c3e337fd34
    fi
    echo 'Loading Linux 3.13.0-24-generic ...'
    linux /boot/vmlinuz-3.13.0-24-generic root=/dev/xvda1 ro 
    echo 'Loading initial ramdisk ...'
    initrd /boot/initrd.img-3.13.0-24-generic 
    }
  1. Verifique se o arquivo de configuração /boot/grub/grub.cfg contém root=/dev/xvda1 ou root=UUID=ec51d860-34bf-4374-ad46-a0c3e337fd34.
    • Se root=UUID=ec51d860-34bf-4374-ad46-a0c3e337fd34 estiver contido, a partição raiz está no formato UUID e nenhuma ação adicional é necessária.
    • Se root=/dev/xvda1 estiver contido, a partição raiz será representada por um nome de dispositivo. Vá para a etapa 5.
  1. Obtenha o UUID da partição raiz com base em root=/dev/xvda1 e informações obtidas executando o comando blkid.
  2. Execute o seguinte comando para abrir o arquivo grub.cfg:

    vi /boot/grub/grub.cfg

  3. Pressione i para entrar no modo de edição. Altere o identificador da partição raiz para o formato UUID. Por exemplo, altere root=/dev/xvda1 para root=UUID=ec51d860-34bf-4374-ad46-a0c3e337fd34.
  4. Pressione Esc, digite :wq e pressione Enter para salvar as configurações e sair do editor vi.
  5. Execute o seguinte comando para verificar a alteração:

    cat /boot/grub/grub.cfg

    A alteração será bem-sucedida se informações semelhantes às seguintes forem exibidas:

    ......menuentry 'Ubuntu Linux, with Linux 3.13.0-24-generic' --class ubuntu --class gnu-linux --class gnu --class os --unrestricted $menuentry_id_option 'gnulinux-3.13.0-24-generic-advanced-ec51d860-34bf-4374-ad46-a0c3e337fd34' {
    recordfail
    load_video
    gfxmode $linux_gfx_mode
    insmod gzio
    insmod part_msdos
    insmod ext2
    if [ x$feature_platform_search_hint = xy ]; then
    search --no-floppy --fs-uuid --set=root ec51d860-34bf-4374-ad46-a0c3e337fd34
    else
    search --no-floppy --fs-uuid --set=root ec51d860-34bf-4374-ad46-a0c3e337fd34
    fi
    echo 'Loading Linux 3.13.0-24-generic ...'
    linux /boot/vmlinuz-3.13.0-24-generic root=UUID=ec51d860-34bf-4374-ad46-a0c3e337fd34 ro
    echo 'Loading initial ramdisk ...'
    initrd /boot/initrd.img-3.13.0-24-generic
    }

Altere os identificadores de disco no arquivo fstab para o formato UUID

Tomemos como exemplo o Ubuntu 20.04. Execute blkid para obter os UUIDs de todas as partições. Modifique o arquivo /etc/fstab e use os UUIDs da partição para configurar a montagem automática da partição.

  1. Execute o seguinte comando para consultar todos os tipos de sistemas de arquivos montados e seus UUIDs de dispositivo:

    blkid

    As seguintes informações são exibidas:

    /dev/xvda2: UUID="4eb40294-4c6f-4384-bbb6-b8795bbb1130" TYPE="xfs"  
    /dev/xvda1: UUID="2de37c6b-2648-43b4-a4f5-40162154e135" TYPE="swap"
  2. Execute o seguinte comando para consultar o arquivo fstab:

    cat /etc/fstab

    As seguintes informações são exibidas:

    [root@CTU1000028010 ~]# cat /etc/fstab  
    /dev/xvda2  /       xfs     defaults    0 0 
    /dev/xvda1  swap    swap    defaults    0 0     
  3. Verifique se os identificadores de disco no arquivo fstab são nomes de dispositivos ou UUIDs.
    • Se forem UUIDs, nenhuma ação adicional é necessária.
    • Se forem nomes de dispositivos, vá para a etapa 4.
  4. Execute o seguinte comando para abrir o arquivo fstab:

    vi /etc/fstab

  5. Pressione i para entrar no modo de edição e altere os identificadores do disco para o formato UUID.
  6. Pressione Esc, digite :wq e pressione Enter para salvar as configurações e sair do editor vi.