OpenStack镜像制作系列2—Windows7镜像

2024-09-08 10:58

本文主要是介绍OpenStack镜像制作系列2—Windows7镜像,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

本系列文章主要对如何制作OpenStack镜像的过程进行描述记录

CSDN:OpenStack镜像制作教程指导(全)

OpenStack镜像制作系列1—环境准备

OpenStack镜像制作系列2—Windows7镜像

OpenStack镜像制作系列3—Windows10镜像

OpenStack镜像制作系列4—Windows Server2019镜像

OpenStack镜像制作系列5—Linux镜像


掘金社区:带你制作个性化OpenStack镜像系列教程


目录

(一)、Windows7镜像制作

1.文件准备

2.创建镜像磁盘文件

3.网络配置

4.开始制作

5.进行windows安装,


(一)、Windows7镜像制作

1.文件准备

------文件准备:

cn_windows_7_ultimate_with_sp1_x64_dvd_u_677408.iso

virtio-win-0.1.171.iso

virtio-win-0.1.171_amd64.vfd

方便使用上述3个文件放到同一个文件下面

$ pwd/home/centos$ mkdir tmp$ cd tmp/$ lscn_windows_7_ultimate_with_sp1_x64_dvd_u_677408.iso  virtio-win-0.1.171_amd64.vfd  virtio-win-0.1.171.iso 

2.创建镜像磁盘文件

创建一个安装虚拟机的镜像文件,这个文件相当于物理机的硬盘

格式为qcow2,

名称为win7.qcow2,

设置大小为64G。(PS:创建虚拟机的磁盘的时候注意查看物理机磁盘空间是否足够)

qemu-img create -f qcow2 -o preallocation=metadata win7.qcow2 64G qemu-img info win7.qcow2

注意:上述命令在直接创建qcow2格式之后,注意镜像制作完成后压缩一下qcow2文件的占用空间。也有可能是virt-install --connect具体命

令内容的不同,可详细比较CentOS中使用的命令。

3.网络配置

查看网桥,用于将虚拟机网卡桥接到某个网桥上:

brctl show

这个virbr0网桥用于自动生成的NAT网络,为了方便,一般创建一个跟物理网络直接桥接的网桥,比如创建的网桥名为br0:

sudo brctl addbr br0brctl show

加入一张与物理网络连接的网卡,并且将网卡的IP设置到网桥上。

现在与物理网络相连的网卡是ens33,IP是172.28.0.151:

将ens33这张网卡加入br0的网桥:

sudo brctl addif br0 ens33

取消ens33的IPv4地址:

sudo ifconfig ens33 0.0.0.0

配置br0的IPv4地址为ens33原来的IP:

sudo ifconfig br0 172.28.0.151/24

再次查看网桥可以发现ens33已经连接到了br0上了:

brctl show

ens33的IP已经配置到br0上了:

4.开始制作

使用创建的磁盘安装虚拟机,以win7的iso镜像为例

sudo virt-install --connect qemu:///system -n win7 \
--vcpus=1 -r 2048 \
--disk path=/home/win7.img,format=qcow2,device=disk,size=64,bus=virtio,cache=none \
--disk path=/home/cn_windows_7_ultimate_with_sp1_x64_dvd_u_677408.iso,device=cdrom,perms=rw  \
--vnc --vnclisten=0.0.0.0  \
--os-type windows --os-variant=win7 \
--accelerate --network=default,model=virtio  \
--disk path=/home/virtio-win-0.1.110.iso,device=cdrom,perms=rw \
--disk=/home/virtio-win-0.1.110_amd64.vfd,device=floppy注:
#(1)-r 1024表示内存大小为1024M#(2)--network=bridge:br0,model=virtio表示将网卡桥接到br0这个网桥上,网卡驱动为virtio#(3)--disk path=/var/win7_ultimate_empty.qcow2,size=20,format=qcow2,bus=virtio,cache=none表示使用win7.qcow2作为硬盘,大小为20G,磁盘格式为qcow2,磁盘驱动为virtio,不使用缓存#(4)--disk path=/home/hjj/cn_windows_7_ultimate_x64_dvd_x15-66043.iso,device=cdrom,perms=ro使用cn_windows_7_ultimate_x64_dvd_x15-66043.iso文件作为插入的CD光盘,ro代表只读#(5)--os-type windows --os-variant=win7操作系统类型为windows,且变种为win7。此处可以只填写windows。

命令介绍与详解可以百度一下

如果装了virt-viewer,则会自动弹出win7的安装界面,不需执行5-7步,直接到第8步。

如果没装virt-viewer或未弹出则可以进行5-7步,使用其他机器连接。(另找一台能连接上此机器的电脑,系统为windows即可)

5.进行windows安装,

需要注意的是:驱动的安装,其他安装步骤在此就不演示了。

使用virtio作为磁盘和网卡的驱动,由于一开始未安装virtio驱动,所以扫描不到磁盘:

需要先加载驱动程序,安装磁盘和网卡的virtio驱动:

磁盘驱动:

继续选择加载驱动程序,

网卡驱动:

 

接下来的过程就和安装普通win7一样了:

虚拟机在安装过程中可能会重启,如果重启时未自动开机,则可以使用virsh list --all查看所有创建的虚拟机,然后virsh start win7打开关闭的win7虚拟机。

6.镜像文件占用空间压缩

减少qcow2虚拟磁盘文件实际占用的存储空间_qcow2 减少_Scape1989的博客-CSDN博客

ubuntu@ubuntu:~/Desktop/ops$ qemu-img info win7.qcow2 ubuntu@ubuntu:~/Desktop/ops$ qemu-img convert -O qcow2 win7.qcow2 win7_new.qcow2ubuntu@ubuntu:~/Desktop/ops$ ll -lh win7*-rw-r--r-- 1 ubuntu ubuntu 7.3G Sep 30 10:41 win7_new.qcow2-rw-r--r-- 1 root   root    65G Sep 30 10:33 win7.qcow2 ubuntu@ubuntu:~/Desktop/ops$

7、将安装好系统的qcow2文件上传到openstack平台即可使用此镜象启动实例。

当实例安装了软件需要保存时即可创建快照,此快照为硬盘快照,使用快照创建的实例就都安装了此软件。

这篇关于OpenStack镜像制作系列2—Windows7镜像的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1147918

相关文章

docker 重命名镜像的实现方法

《docker重命名镜像的实现方法》在Docker中无法直接重命名镜像,但可通过添加新标签、删除旧镜像后重新拉取/构建,或在DockerCompose中修改配置文件实现名称变更,感兴趣的可以了解一下... 目录使用标签(Tagging)删除旧的php镜像并重新拉取或构建使用docker Compose在Do

linux配置podman阿里云容器镜像加速器详解

《linux配置podman阿里云容器镜像加速器详解》本文指导如何配置Podman使用阿里云容器镜像加速器:登录阿里云获取专属加速地址,修改Podman配置文件并移除https://前缀,最后拉取镜像... 目录1.下载podman2.获取阿里云个人容器镜像加速器地址3.更改podman配置文件4.使用po

使用python制作一款文件粉碎工具

《使用python制作一款文件粉碎工具》这篇文章主要为大家详细介绍了如何使用python制作一款文件粉碎工具,能够有效粉碎密码文件和机密Excel表格等,感兴趣的小伙伴可以了解一下... 文件粉碎工具:适用于粉碎密码文件和机密的escel表格等等,主要作用就是防止 别人用数据恢复大师把你刚删除的机密的文件恢

Docker多阶段镜像构建与缓存利用性能优化实践指南

《Docker多阶段镜像构建与缓存利用性能优化实践指南》这篇文章将从原理层面深入解析Docker多阶段构建与缓存机制,结合实际项目示例,说明如何有效利用构建缓存,组织镜像层次,最大化提升构建速度并减少... 目录一、技术背景与应用场景二、核心原理深入分析三、关键 dockerfile 解读3.1 Docke

Python一次性将指定版本所有包上传PyPI镜像解决方案

《Python一次性将指定版本所有包上传PyPI镜像解决方案》本文主要介绍了一个安全、完整、可离线部署的解决方案,用于一次性准备指定Python版本的所有包,然后导出到内网环境,感兴趣的小伙伴可以跟随... 目录为什么需要这个方案完整解决方案1. 项目目录结构2. 创建智能下载脚本3. 创建包清单生成脚本4

Conda国内镜像源及配置过程

《Conda国内镜像源及配置过程》文章介绍Conda镜像源使用方法,涵盖临时指定单个/多个源、永久配置及恢复默认设置,同时说明main(官方稳定)、free(逐渐弃用)、conda-forge(社区更... 目录一、Conda国内镜像源二、Conda临时使用镜像源指定单个源临时指定多个源创建环境时临时指定源

java实现docker镜像上传到harbor仓库的方式

《java实现docker镜像上传到harbor仓库的方式》:本文主要介绍java实现docker镜像上传到harbor仓库的方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地... 目录1. 前 言2. 编写工具类2.1 引入依赖包2.2 使用当前服务器的docker环境推送镜像2.2

springboot项目打jar制作成镜像并指定配置文件位置方式

《springboot项目打jar制作成镜像并指定配置文件位置方式》:本文主要介绍springboot项目打jar制作成镜像并指定配置文件位置方式,具有很好的参考价值,希望对大家有所帮助,如有错误... 目录一、上传jar到服务器二、编写dockerfile三、新建对应配置文件所存放的数据卷目录四、将配置文

Docker安装MySQL镜像的详细步骤(适合新手小白)

《Docker安装MySQL镜像的详细步骤(适合新手小白)》本文详细介绍了如何在Ubuntu环境下使用Docker安装MySQL5.7版本,包括从官网拉取镜像、配置MySQL容器、设置权限及内网部署,... 目录前言安装1.访问docker镜像仓库官网2.找到对应的版本,复制右侧的命令即可3.查看镜像4.启

Gradle在国内配置镜像加速的实现步骤

《Gradle在国内配置镜像加速的实现步骤》在国内使用Gradle构建项目时,最大的痛点就是依赖下载贼慢,甚至卡死,下面教你如何配置国内镜像加速Gradle下载依赖,主要是通过改写repositori... 目录引言一、修改 build.gradle 或 settings.gradle 的 reposito