对安装在VMware上的CentOS7.X进行封装,是为了后续的实验环境需要,可以批量去生成Linux系统。通过虚拟机模版来创建一台CentOS系统,跟原来机器一样,去掉了唯一性,而通过克隆出来的虚拟机,会与被克隆的机器一样,包含网卡的信息等。

1.将CentOS7.X系统升级到最新版

[root@localhost ~]# yum -y update

升级完成,重新启动机器

2.删除系统机器ID

(1)删除系统的ID:machine-id是系统的唯一性ID,每一台服务器的machin-ID都应该不一样,为了解决ID的冲突,故删除

[root@localhost ~] echo "" > /etc/machine-id

(2)重新生成mache-id

在/etc/profile文件最后添加:使之开机重启后,通过systemd-machine-id-setup的命令来生成全新的machine-id号

[root@localhost ~]# cat >> /etc/profile << EOF
systemd-machine-id-setup
EOF

(3)清除UDEV

​ 系统重启后会自动创建,删除/etc/udev/rules.d/目录下的所有文件

[root@localhost ~]#rm -fr /etc/udev/rules.d/*

(4)清除ssh私钥文件

不同的系统私钥应该是不同的,删除后重启系统会自动生成全新的私钥

[root@localhost ~]#rm -fr /etc/ssh/ssh_host_*

(5)清除网卡配置信息

删除/etc/sysconfig/network-scripts目录下的ifcfg-ens文件,如果是CentOS6.X可能是ifcfg-eth或是ifcfg-em*,重启后会自动生成此文件

[root@localhost ~]#rm -fr /etc/sysconfig/network-scripts/ifcfg-ens*

3.清除系统中的旧日志文件

(1)先停止系统的日志服务

[root@localhost ~]#systemctl stop systemd-journald.socket

(2)将原来的旧日志文件删除

[root@localhost ~]#find /var/log -type f -exec rm {} \;

(3)创建journal日志目录,用来保存日志使用,原日志是保存在/run/log/journal目录下,掉电就会丢失

[root@localhost ~]#mkdir -p /var/log/journal
[root@localhost ~]#chgrp systemd-journal /var/log/journal
[root@localhost ~]#chmod g+s /var/log/journal

(4)清除所有命令的历史记录

[root@localhost ~]#cd /root && rm -fr .bash_history && history -c

(5)关闭系统

[root@localhost ~]#systemctl poweroff

4.对封装好的系统做创建快照

5.启用虚拟机模板

6.通过虚拟机快照模版生成新的系统

为了节省实验磁盘空间,创建链接克隆

配置 全新克隆虚拟机的保存位置,最后单击“完成”即可

Linux虚拟机封装成模板的更多相关文章

  1. Linux系统封装成iso文件

    #安装所需软件包yum -y install createrepo mkisofs anaconda-runtime 根据root下的install.log文件,得到安装的软件包awk '/Insta ...

  2. linux 虚拟机设置好固定ip 修改了 dns 网络需要设置成桥接模式

    linux  虚拟机设置好固定ip 修改了 dns  网络需要设置成桥接模式  可以修复网络连接(浏览器返回 server not  found)

  3. virtualbox linux虚拟机相关

    linux虚拟机设置为静态IP 在virtualbox中安装好linux虚拟机后,如果采用的是NAT方式的话,linux虚拟机默认采用dhcp方式自动上网,而且用的是NetworkManager服务而 ...

  4. 分析windows宿主机Ping不通linux虚拟机的其中一种情况

    ping不通的情况是由于设置网络选项的时候,可以看到界面名称的选择如下(当前选择的是无线网卡驱动):

  5. 阿里云至 Windows Azure 的 Linux 虚拟机迁移

    在Windows Azure中,用户可以对部署在Azure中的虚拟机的映像.磁盘以及快照进行生成和下载.用户可以方便地将Azure中的虚拟机实例迁移到本地.私有云甚至其他公有云平台进行测试.扩展或者再 ...

  6. Hyper-V下的Linux虚拟机网卡丢失问题原因及解决办法

    Hyper-V下的Linux虚拟机网卡丢失问题原因及解决办法   虚拟化大势所趋 公司推行了虚拟化,全部用的是Microsoft Windows 2008 R2 Enterprise with Hyp ...

  7. linux虚拟机命令行模式下,某些命令显示乱码问题。

    刚安装了linux虚拟机,使用vi命令试着修改IP配置,结果出现乱码.配置IP的文件内容本身没有乱码,主要是vi编辑的命令行的提示出现乱码,例如,按i是插入模式,结果底下出现乱码提升,不是提示插入. ...

  8. linux虚拟机网络连接模式 bridged, host-only, NAT

    最近安装了fedora9.0,却一直不能连接到外网,我用的是3G无线网卡上网的,起初以为是linux不支持3G无线方式的,可后来装了虚拟机ubuntu却可以上网,在后来用有ADSL网络连接的电脑安装f ...

  9. 超大文件上传到Azure Linux虚拟机最佳实践

    客户在实际进行迁移的时候,往往碰到需要将本地数据中心的超大文件,比如单个200GB的文件,或者总共1TB的无数文件上传到Azure上的情况,尤其是传到Azure的Linux虚拟机的场景,这种场景包括: ...

随机推荐

  1. leetcode230. 二叉搜索树中第K小的元素

    题目链接: https://leetcode-cn.com/problems/kth-smallest-element-in-a-bst/ 题目: 给定一个二叉搜索树,编写一个函数 kthSmalle ...

  2. 一文读懂 Kubernetes APIServer 原理

    前言 整个Kubernetes技术体系由声明式API以及Controller构成,而kube-apiserver是Kubernetes的声明式api server,并为其它组件交互提供了桥梁.因此加深 ...

  3. Python执行程序实可视化_heartrate

    最近发现了一个Python程序执行的简单实时可视化神器,名字叫 heartrate,安装完运行可以看到下面这样的炫酷过程. 虽然很炫酷,但有点看不懂. 来解释下,左边的动态数字代表每行被触发的次数.变 ...

  4. uni-app通过canvas实现手写签名

    分享一个uni-app实现手写签名的方法 具体代码如下: <template> <view > <view class="title">请在下面 ...

  5. 面试必问:如何实现Redis分布式锁

    摘要:今天我们来聊聊分布式锁这块知识,具体的来看看Redis分布式锁的实现原理. 一.写在前面 现在面试,一般都会聊聊分布式系统这块的东西.通常面试官都会从服务框架(Spring Cloud.Dubb ...

  6. 转 16 jmeter中的监听器以及测试结果分析

    16 jmeter中的监听器以及测试结果分析   常用监听器 断言结果.查看结果树.聚合报告.Summary Report.用表格查看结果.图形结果.aggregate graph等 指标分析 -Sa ...

  7. chain issues incorrect order,EXtra certs,Contains anchor

    背景: 下载颁发下来的ssl证书安装好之后网站正常显示安全,但是通过ssl证书网站去检测报错误:chain issues incorrect order,EXtra certs,Contains an ...

  8. MySQL进阶:约束,多表设计,多表查询,视图,数据库备份与还原

    MySQL进阶 知识点梳理 一.约束 1. 外键约束 为什么要有外键约束 例如:一个user表,一个orderlist 如果现在想要直接删除id为1的张三,但是orderlist里还有用户id为1的订 ...

  9. Connections could not be acquired from the underlying database!

    Connections could not be acquired from the underlying database! 报错截图: 报错内容: Exception in thread &quo ...

  10. Canvas实现弧线时钟

    最近试着用canvas元素的2d绘图函数做了一个弧线形的时钟. 我也没啥好说的,直接上代码: <div id="myclock"></div> <sc ...