為避免部分服務器、虛擬機或者雲主機的操作系統在導入自定義鏡像后,創建的ECS實例無法啟動,您需要在導入鏡像前檢查是否需要在源服務器中安裝virtio驅動。
背景信息
根據您源服務器的操作系統,判斷是否需要手動安裝virtio驅動。
源服務器的操作系統 | 說明 |
---|---|
|
如果源服務器的操作系統如左側所示,在導入自定義鏡像時,阿里雲將會自動處理virtio驅動。 默認已安裝virtio驅動的系統,需要注意修復臨時文件系統。具體操作,請參見步驟二:修復臨時文件系統。 |
其他操作系統 | 如果源服務器的操作系統為其他Linux版本,請根據以下步驟安裝virtio驅動: |
步驟一:檢查服務器內核是否支持virtio驅動
步驟二:修復臨時文件系統
通過檢查,發現源服務器內核支持virtio驅動,但是臨時文件系統initramfs或者initrd中沒有包含virtio驅動時,需要修復臨時文件系統。以CentOS等為例。
- CentOS/RedHat 5
mkinitrd -f --allow-missing \ --with=xen-vbd --preload=xen-vbd \ --with=xen-platform-pci --preload=xen-platform-pci \ --with=virtio_blk --preload=virtio_blk \ --with=virtio_pci --preload=virtio_pci \ --with=virtio_console --preload=virtio_console \
- CentOS/RedHat 6/7
mkinitrd -f --allow-missing \ --with=xen-blkfront --preload=xen-blkfront \ --with=virtio_blk --preload=virtio_blk \ --with=virtio_pci --preload=virtio_pci \ --with=virtio_console --preload=virtio_console \ /boot/initramfs-$(uname -r).img $(uname -r)
- Debian/Ubuntu
echo -e 'xen-blkfront\nvirtio_blk\nvirtio_pci\nvirtio_console' >> \ /etc/initramfs-tools/modules mkinitramfs -o /boot/initrd.img-$(uname -r)"
步驟三:下載內核安裝包
說明 本章節以linux-4.4.24.tar.gz為例,您需要修改為操作系統內核對應的版本。