EVE-NG制作自定义Linux系统

2018年6月3日 857点热度 6人点赞 0条评论

EVE-NG制作自定义Linux系统,这里以eve-ng community 2.0.3-111、CentOS 7为例。

步骤

1. 在EVE-NG的/opt/unetlab/addons/qemu/下新建目录。目录名称以“linux-”开头,后面的字符可自定义,这是EVE-NG的命名规则,这样就能在EVE web界面添加节点时找到Linux节点。

mkdir /opt/unetlab/addons/qemu/linux-centos

2.将Linux安装镜像(ISO文件)上传到刚才新建的目录,可以用XFTP、winscp等工具上传。

3.将iso文件的名称修改为cdrom.iso,这样可以让EVE将iso文件加载到系统中,相当于挂上一个光驱,新建的系统会以这个ISO进行启动并安装系统。

mv CentOS-7-x86_64-DVD-1810.iso cdrom.iso

4.新建一个虚拟机磁盘文件。

/opt/qemu/bin/qemu-img create -f qcow2 virtioa.qcow2 80G
-f 指定虚拟磁盘格式 qcow2 虚拟磁盘格式 virtioa.qcow2 虚拟磁盘文件名,或者命名为hda.qcow2 80G 虚拟磁盘容量(这个是虚拟磁盘的最大容量,新建时有多少数据就占用多少主机的空间,并不是立即分配80G给虚拟磁盘。)

5.在EVE web页面新建一个实验,添加Linux节点。

新建节点
在Web界面新建一个Linux节点

 

选择Linux后,在具体版本中会显示刚才新建的目录名称(linux-centos)。

选择镜像
为节点选择磁盘镜像

可以添加一个clound0网络,这是EVE连接到主机所在的网络(可以上网),以便对新装的Linux系统进行更新、安装软件等。

添加网络
添加一个网络
拓扑
拓扑

6.接下来启动Linux节点,按常规安装、更新Linux系统即可。

7.系统安装、更新完成后,将虚拟机关机,最好在虚拟机中正常关机。将cdrom.iso文件删除,或者修改成其它名称,这样系统重启时就不会加载iso。

8.进入这个实验所在的目录,执行qemu-img commit命令,即提交更改。

实验ID在WEB页面左边的菜单中选择lab details即可看到

实验ID
查看实验的ID
cd /opt/unetlab/tmp/0/f49c160d-5457-417d-b4e0-fedf28fa1833/1/
qemu-img commit virtioa.qcow2

f49c160d-5457-417d-b4e0-fedf28fa1833 实验的ID
1 节点的ID
virtioa.qcow2 节点的磁盘文件
实验的磁盘文件来自模板
实验的磁盘文件来自模板

qemu-img commit的作用是提交更改。刚才手动创建的磁盘文件/opt/unetlab/addons/qemu/linux-centos/virtioa.qcow2是空的,就像新装的硬盘一样。这个磁盘文件也是以后新建Linux节点的模板文件。安装Linux系统时,新产生的数据都保存在/opt/unetlab/tmp/0/f49c160d-5457-417d-b4e0-fedf28fa1833/1/virtioa.qcow2。执行qemu-img commit就是将新产生的数据提交到模板磁盘文件中。

当我们删除这个实验时,/opt/unetlab/tmp/0/f49c160d-5457-417d-b4e0-fedf28fa1833/这个目录也会被删除,而/opt/unetlab/addons/qemu/linux-centos/目录是节点模板,被保留下来。

9.可以使用现有的模板,再创建另一个模板。

例如从刚才新建的Linux模板再新建一个安装有FTP服务器的Linux模板,以后可以通过添加Linux节点的方法,在实验中添加一个FTP服务器。

新建一个实验,新建节点,节点的镜像使用刚才创建完成的Linux模板。

启动Linux节点,在系统中安装一个FTP服务器,关闭Linux虚拟机。

将安装了FTP的Linux节点保存成另一个磁盘文件。

qemu-img convert -c -O qcow2 /opt/unetlab/tmp/0/752e5443-9d56-45e4-8fa7-51f0b1c05949/1/virtioa.qcow2 /tmp/virtioa.qcow2

新建一个节点模板目录,用于存放新的磁盘模板。

mkdir /opt/unetlab/addons/qemu/linux-ftp

将新生成的磁盘文件移到新的模板目录。

mv /tmp/virtioa.qcow2 /opt/unetlab/addons/qemu/linux-ftp/

新建实验的节点磁盘文件来自模板磁盘文件/opt/unetlab/addons/qemu/linux-centos/virtioa.qcow2,而安装FTP服务器产生的新磁盘数据保存在实验所在的目录中/opt/unetlab/tmp/0/752e5443-9d56-45e4-8fa7-51f0b1c05949/1/virtioa.qcow2,qemu-img convert命令会将模板磁盘文件和新产生的数据合并成一个磁盘文件/tmp/virtioa.qcow2。

参考资料

EVE-NG官方文档

 

arben

这个人很懒,什么都没留下

文章评论