Monthly Archives: March 2018

qcow2镜像定制指南

背景 目前网络上关于定制镜像的说明很分散,需要搜寻很多文章才能完成镜像的定制任务。所以我尝试提供一个全面而系统的指南,遵循本指南,用户可以方便的完成镜像的定制。 实施步骤 一、环境配置 1、准备软件mac pro、VmWare fusion、CentOS-7-x86_64-DVD-1708.iso、CentOS-7-x86_64-GenericCloud-1708-20180123.qcow22、安装嵌套CentOs环境由于MacOs不支持Kvm,故需要在嵌套的操作系统中安装云镜像需要的软件,使用Fusion很容易在MacOs中虚拟出一个CentOs的环境。3、修改嵌套操作系统配置在centos关闭的情况下打开虚拟机“处理器和内存”配置,选择“高级配置”,选中“在此虚拟机中启用虚拟化管理程序”和“在此虚拟机中启用代码分析应用程序”,如无这步操作,则在启动virt-manager时会报:“virt-manager 报 WARNING : KVM不可用.这可能是因为没有安装KVM软件包,或者没有载入KVM内核模块.您的虚拟机可能性很差。”的错误,启动虚拟机。以下操作如无特殊说明都是在嵌套操作系统中执行。4、安装依赖 5、编译nbd内核模块(如不使用“nbd挂载方式修改镜像”则不需要安装此模块)执行命令,出现以下报错时,说明没有nbd模块,需要自己手动安装 执行下面的命令安装hbd模块 安装kernel组件 编译安装hbd组件 编译安装时的错误处理阶段:make CONFIG_BLK_DEV_NBD=m M=drivers/block 处理: 二、设置镜像共享 设置嵌套虚拟机文件夹共享qcow2文件放置在mac本地文件夹中,嵌套虚拟机通过文件共享的方式使用qcow2文件。需要注意的是qcow2文件权限需要在macos中设置为可读写,否则在嵌套虚拟机中无法更新配置。 嵌套虚拟机中,需要要关闭SeLinux否则同样无法更新镜像内容 三、guestfish工具使用 1、示例程序:获取镜像ip地址 2、示例程序:配置用户访问权限 四、nbd挂载方式修改镜像(qemu-nbd) 1、确保已安装nbd模块,加载模块 3、建立nbd连接,挂载到目录 4、执行chroot 5、执行修改,比如 6、修改完毕后解除挂载点,解除连接 五、通过virt-manager挂载虚拟机 1、执行 2、新建虚拟机选择“导入现有磁盘”,“使用ISO镜像”,选择qcow2文件…如果报:“WARNING : KVM不可用.这可能是因为没有安装KVM软件包,或者没有载入KVM内核模块.您的虚拟机可能性很差。”的警告相应的解决方案是: 关闭虚拟机 进入虚拟机设置(可以配置网卡,硬盘,光驱的地方) 点击“处理器和内存”,勾选虚拟化Inter VT-x/EPT … Continue reading

Posted in 未分类 | Leave a comment