• openstack 动态加载usb,需要修改kvm虚拟机的xml文件


    一、利用libvirt命令动态挂载

    在利用KVM的虚拟桌面应用中,有时候需要在虚拟桌面起来后还能够动态的挂载或卸载数据盘,以达到类似热插盘U盘或移动硬盘的效果,当然管理上需要做处理。如果纯粹中技术上来讲,大概是下面的几步:
    
    1. 创建数据盘:
    
        创建数据盘可以用qemu-img命令,但是缺点是创建完以后还需要在虚拟机里面做磁盘初始化(在磁盘管理里)和格式化。相比较而言,用libguestfs带的 virt-make-fs就好很多,一条命令完成磁盘创建和初始化的功能,挂到虚拟机里面马上就可以使用。
    
    sudo virt-make-fs -F qcow2 -t ntfs -s 100G /home/.../workroom/test/temp test100G.img
    
    2. 定义数据盘配置文件:
    
    <disk type='file' device='disk'>
        <driver name='qemu' type='qcow2'/>
        <source file='/home/.../workroom/test/test500G.img'/>
        <target dev='hdf' bus='virtio' type='virtio'/>
    </disk>
    
    另存为 test-device-attach.xml
    
    3. 启动虚拟机,假设虚拟机的domain名是 DomainAttachDisk;
    
    4. 运行 virsh 命令完成挂载
    
    sudo attach-device DomainAttachDisk /home/.../workroom/test/test-attach.xml  
    
    测试下来从挂载命令到操作系统识别大概30秒-60秒之间
    
    5. 卸载命令:
    
    sudo detach-device DomainAttachDisk /home/.../workroom/test/test-attach.xml
    
    如果用应用程序把这些过程管理起来,那么就能做到动态的数据盘挂载和卸载功能。
    

      

  • 相关阅读:
    Linux学习——操作文件与目录
    链表去重
    Android主题换肤 无缝切换
    android 换肤模式总结
    NotificationListenerService不能监听到通知
    判断app是否在后台
    模拟接听电话的方法,兼容华为android5.0以上设备
    Windows下安装破解JIRA6.3.6
    一些as的配置
    Android BLE开发——Android手机与BLE终端通信初识
  • 原文地址:https://www.cnblogs.com/nulige/p/9042660.html
Copyright © 2020-2023  润新知