2018/11/15 Supermin5

supermin工具可以在两种模式下使用,即准备一个小型超级设备,这是在构建系统上完成的。并构建,它采用supermin设备并构建一个完整的可引导设备,该设备在最终用户的系统上完成。 

Supermin不需要以root身份运行,通常应该以root身份运行。它不会影响主机系统或主机系统上安装的软件包。 

准备模式 

--prepare在给定的输出目录中创建微小的supermin设备。您给它一个要安装的软件包列表,supermin将自动找到依赖项。必须在主机上安装软件包列表。 

例如: 

 supermin  --prepare  bash  coreutils  -o  supermin .d 
 

创建一个包含“bash” “coreutils”包的supermin设备。具体来说,它在目录supermin.d创建了一些文件。该目录 supermin设备。(参见下面的“ 超级电器)。 

旨在将--prepare步骤在中央构建机器上完成,并将supermin设备分发给最终用户(这很容易,因为supermin设备非常小)。 

建立模式 

--build(以前是一个名为“supermin-helper”的独立程序)从supermin设备构建完整的设备: 

 supermin  --build  --format  ext2  supermin .d  -o  appliance .d 
 

这将创建名为appliance.d / kernelappliance.d / root等的文件,这是一个完整大小的可启动设备。 

构建需要之前,最后一秒的最终用户计算机上的--build步骤是完成的。必须在最终用户的计算机上安装supermin设备中的软件包(在准备超级设备时指定的软件包)。 

构建和缓存 

通常,您希望仅在需要时在最终用户计算机上重建设备。Supermin有一些额外的选项可以让这更容易: 

 超级 - 建造\ 
   - if -newer --lock / run / user / ` id -u` /supermin.lock \ 
   --format ext2 supermin.d -o appliance.d 
 

如果多个程序并行运行此命令,则实例将等待锁定文件。如果完整设备不存在或者它比输入文件和主机包数据库旧,则仅重建完整设备。 

请注意,锁文件不得存储在-o目录中。 

套餐 

是指RPM Debian,(等)包,例如。“coreutils”“perl” 

在所有情况下,supermin只能构建一个与主机相同的发行版,版本和体系结构的超级设备。它并没有做跨版本。 

 

# supermin5 -v --prepare bash coreutils -o supermin.d  镜像预安装的软件包 

# supermin5 -v --build --format chroot supermin.d -o appliance.d  镜像预安装的软件包 

# echo 7 > appliance.d/etc/yum/vars/releasever   指明镜像版本

# tar --numeric-owner -cpf centos-7.tar -C appliance.d .   备份

# cat centos-7.tar | docker import - centos/centos-7:latest   导入tar包到docker镜像仓库

 

在容器 server 节点,使用 supermin5 命令(若命令不存在,则自己安装)构建名为centos-7 

 centos7 系统 docker 镜像,镜像预装 yumnet-toolsinitscripts  vi 命令。构建完成后提 

交镜像至容器仓库,并查看此镜像。依次将操作命令及返回结果以文本形式提交到答题框。 

  

[root@server ~]# supermin5 -v --prepare bash yum  net-tools initscripts  vi coreutils -o  

supermin.d  

[root@server ~]# supermin5 -v --build --format chroot supermin.d -o appliance.d  

[root@server ~]# echo 7 > appliance.d/etc/yum/vars/releasever  

[root@server ~]# tar --numeric-owner -cpf centos-7.tar -C appliance.d .  

[root@server ~]# cat centos-7.tar | docker import - 10.0.6.126:5000/centos-7  

sha256:75b27ee7851e297faa2a085c7dac3c0f25bc4ac63949b04616fa3d247e52d007  

[root@server ~]# docker images centos-7  

REPOSITORY                 TAG                 IMAGE ID                                                            

CREATED             SIZE  

10.0.6.126:5000/centos-7   latest              75b27ee7851e        50 seconds ago       

261.5 MB  

 
 
 

-f 格式 

- 格式化格式 

(仅限构建模式) 

选择完整设备的输出格式。 

没有默认值。使用--build,必须指定--format选项。 

可能的格式是: 

chroot环境 

主机文件系统中的目录树。 

文件系统树被写入OUTPUTDIR(即-o选项)。 

这被称为“chroot”,因为之后您可以将chroot1)逐字地放入此目录中,尽管使用容 

器技术(LXC等)更好 

 

在此模式下不会生成内核,initrddtb,因为假定您将使用主机内核运行设备。 

输出内核写入OUTPUTDIR /内核,设备树(如果使用)写入OUTPUTDIR / dtb,一个小的initramfs可以将设备挂载到OUTPUTDIR / initrdext2文件系统映像写 

OUTPUTDIR / root。(哪里OUTPUTDIR-o选项指定。 

EXT2 

一个ext2文件系统磁盘映像。 

文件系统(OUTPUTDIR / root)的默认大小为4 GB (另请参阅--size选项)。 

 

posted @ 2020-08-18 17:19  接近风的地方coc  阅读(270)  评论(0编辑  收藏  举报