1.在KVM环境上准备虚拟机磁盘

[root@localhost ~]# qemu-img create -f qcow2 -o size=50G

/opt/CentOS-7-1511-x86_64_50G.qcow2

[root@localhost ~]# qemu-img info CentOS-7-1511-x86_64_50G.qcow2

image: CentOS-7-1511-x86_64_50G.qcow2

file format: qcow2

virtual size: 50G (53687091200 bytes)

disk size: 196K

cluster_size: 65536

Format specific information:

compat: 1.1

lazy refcounts: false

备注:-f指定磁盘格式, -o size=40G 指定磁盘文件大小。创建完成后可以使用qemu-img info命令查看磁盘详细信息。

2.使用virt-manager 图形管理工具修改模板虚拟机属性

2.1从指定磁盘创建虚拟机

2.2选择存储路径

2.3 设置硬件属性

2.4 虚拟机名称

2.5添加ISO文件

2.6 选择磁盘驱动

2.7加载系统ISO

2.8选择网卡驱动

2.9修改键盘属性

3选择光盘引导安装系统

安装系统根据实际需求

安装系统注意事项:

1、 不能有lvm否则无法实现自动扩系统盘

4.修改系统信息

4.1关闭selinux和Firewall

[root@localhost ~]# systemctl stop firewalld.service

[root@localhost ~]# systemctl disable firewalld.service

[root@localhost ~]# sed -i 's/SELINUX=enforcing/SELINUX

=disabled/g' /etc/selinux/config

4.2修改网卡配置文件

[root@localhost ~]# echo 'NOZEROCONF=yes' >>/etc/sysconfig/network

[root@localhost ~]# cat /etc/sysconfig/network-scripts/ifcfg-eth0

TYPE=Ethernet

BOOTPROTO=dhcp

DEFROUTE=yes

PEERDNS=yes

PEERROUTES=yes

IPV4_FAILURE_FATAL=no

IPV6INIT=yes

IPV6_AUTOCONF=yes

IPV6_DEFROUTE=yes

IPV6_PEERDNS=yes

IPV6_PEERROUTES=yes

IPV6_FAILURE_FATAL=no

IPV6_ADDR_GEN_MODE=stable-privacy

NAME=eth0

DEVICE=eth0

ONBOOT=yes

PERSISTENT_DHCLIENT=1

[root@localhost ~]# systemctl stop NetworkManager.service

[root@localhost ~]# systemctl disable NetworkManager.service

[root@localhost ~]# /sbin/chkconfig network on

4.3修改grub.conf

[root@localhost ~]# vim /boot/grub2/grub.cfg

添加 console=ttyS0 console=tty0

4.4 ssh相关配置

修改sshd配置文件 /etc/ssh/sshd_config

将#PermitRootLogin yes的注释去掉

重新启动SSH服务systemctl restart sshd.service

[root@localhost ~]# systemctl enable sshd.service

[root@localhost ~]# mkdir /root/.ssh权限700

[root@localhost ~]# touch /root/.ssh/authorized_keys权限644

4.5 创建dhclient.conf文件

[root@localhost ~]# vi /etc/dhcp/dhclient.conf 添加下面两行

timeout 300;

retry 60;

4.6 安装cloud-init

[root@localhost ~]# yum install cloud-init -y

[root@localhost ~]# vi /etc/cloud/cloud.cfg

添加下面内容:

删除下面红框的两行内容:

4.7 安装qemu-guest-agent

[root@localhost ~]# yum -y install qemu-guest-agent

[root@localhost ~]# systemctl start qemu-guest-agent.service

[root@localhost ~]# systemctl enable qemu-guest-agent.service

4.8 安装cloud-utils-growpart实现云主机启动时可以自动扩展根分区

[root@localhost ~]# yum -y install cloud-utils-growpart

生新生成 initramfs:

[root@localhost ~]# dracut –f

等待30秒左右

清除日志 操作记录 ,最后关机。完成

centos 7.3镜像制作的更多相关文章

  1. Centos 7.3 镜像制作

    1.在KVM环境上准备虚拟机磁盘 [root@localhost ~]# qemu-img create -f qcow2 -o size=50G /opt/CentOS---x86_64_50G.q ...

  2. 初涉定制linux系统之——自动化安装Centos系统镜像制作

    最近碰到个需求:要在内网环境安装centos6.5系统并搭建服务,但由于自动部署脚本里安装依赖包使用的是yum安装,而服务器无法连接外网,实施人员也不会本地yum源搭建O__O "….. 本 ...

  3. OpenStack镜像制作-CentOS

    云平台中镜像还是很重要的,提供各种定制化的镜像使得用户体验更好. 最开始玩OpenStack的时候用的是安装文档中提到的cirros,其密码cubswin:) 刚开始感觉很怪,现在已经可以随手打出.p ...

  4. openStack镜像制作

    参考链接: https://www.ibm.com/developerworks/community/wikis/home?lang=en#!/wiki/OpenStack/page/Creating ...

  5. OpenStack 镜像制作

    Contents [hide] 1 Centos6.5 img制作 1.1 基础环境安装 1.2 下载或从本地上传系统镜像 1.3 启动服务 1.4 建立镜像文件 1.5 通过virt-install ...

  6. openstack私有云布署实践【16.3 Windows Server2008 R2 只有C盘分区镜像制作】

    之所以要只有C盘分区镜像,是因为在创建VM或者调整云主机的硬盘大小时,它能自动扩容.无需人工介入   参考http://www.iyunv.com/thread-45149-1-1.html的灵感   ...

  7. openstack私有云布署实践【16.2 Ubuntu1404 只有根分区镜像制作】

    之所以要只有根分区镜像,是因为在创建VM或者调整云主机的硬盘大小时,它能自动扩容.无需人工介入   在原来的物理机10.40.41.1的CentOS 6.7上制作镜像. 宿主机坱要安装KVM相关软件: ...

  8. openstack私有云布署实践【16.1 CentOS7.1 只有根分区镜像制作】

    之所以要只有根分区镜像,是因为在创建VM或者调整云主机的硬盘大小时,它能自动扩容.无需人工介入   在原来的物理机10.40.41.1的CentOS 6.7上制作镜像.(当然如果你的制作镜像的宿主机是 ...

  9. #openstack centos6 centos7 kvm镜像制作

    #openstack centos6 centos7 kvm 镜像制作 openstack windows 2008镜像 制作 http://www.cnblogs.com/elvi/p/800129 ...

随机推荐

  1. endpoint

    你把机器关机一次,估计被你只写满不读,限速死锁了,因为目前没有心跳控制

  2. 关于多线程使用sqlite3的问题

    在window系统中使用sqlite3时,如果是多线程,如果设置不当会导致程序崩溃. 首先使用sqlite3_threadsafe()函数,确定当前使用的是线程安全. 之后在初始化的时候,sqlite ...

  3. sysbench运行autogen.sh报错

    ./autogen.sh: 4: autoreconf: not found是在不同版本的 tslib 下执行 autogen.sh 产生.它们产生的原因一样,是因为没有安装automake 工具, ...

  4. ios 打包 异常

    1. 问题:Xcode9升级到Xcode10后运行App报错: 2. 原因分析: Xcode10中libstdc++.6.0.9和libstdc++被移除,Frameworks中libstdc++.6 ...

  5. Autoprefixer:一个以最好的方式处理浏览器前缀的后处理程序

    Autoprefixer解析CSS文件并且添加浏览器前缀到CSS规则里,使用Can I Use的数据来决定哪些前缀是需要的.   所有你需要做的就是把它添加到你的资源构建工具(例如 Grunt)并且可 ...

  6. zeromq实践

    zeromq简介 zeroMQ不是TCP,不是socket,也不是消息队列,而是这些的综合体. ZeroMQ以嵌入式网络编程库的形式实现了一个并行开发框架(concurrency framework) ...

  7. RAID的多种实现

    RAID的诞生 由加利福尼亚大学伯克利分校(University of California-Berkeley)在1988年,发表的文章:"A Case for Redundant Arra ...

  8. Java基础重点

    几个比较重要基础的,以后用到概率比较大的合集. 第一个,是获取时间以字符串形式输出的,用到了Date类.simpleDateFormat类的方法.贴图: 第二个是字符串转时间类型的,与上一个相似,不过 ...

  9. 【Python之路】特别篇--property()函数 和 @property 装饰符

    Python中有一个被称为属性函数(property)的小概念,它可以做一些有用的事情.在这篇文章中,我们将看到如何能做以下几点: 将方法转换为只读属性 重新实现一个属性的setter和getter方 ...

  10. java批量下载

    最近做了一些有关批量压缩下载的功能,网上也找了一些资源,但都不是太全面,所以自己整理一份,已备不时之需. 直接上代码: // 获取项目路径     private static String WEBC ...