温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

Diskimage-builder的作用是什么

发布时间:2021-06-29 09:46:04 来源:亿速云 阅读:199 作者:chen 栏目:大数据

这篇文章主要介绍“Diskimage-builder的作用是什么”,在日常操作中,相信很多人在Diskimage-builder的作用是什么问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”Diskimage-builder的作用是什么”的疑惑有所帮助!接下来,请跟着小编一起来学习吧!

DIB阶段

root.d

  • 创建或适配初始化的 root 文件系统环境。这个一般是发行版内置的或直接建立在一个现有的 image 上的。

  • 在一个构建过程中,只能有一个 element 使用 root.d,除非能够非常仔细地适配由其它 elements 构建出来的上下文而不会盲目地覆盖掉其它的 elements 的 root.d。

  • 运行:在 chroot 外。

extra-data.d

  • 在构建 image 过程中从 host 环境拉取数据,这里应该把所有数据(比如说 SSH keys, http proxy 配置之类的)复制到 $TMP_HOOKS_PATH.

  • 运行:chroot 外

pre-install.d

  • 在 chroot 内运行代码,这个运行是在安装 packages 之前的,所以非常适合添加 apt 源。

  • 运行:chroot 内

install.d

  • 在 pre-install.d 之后运行,同样在 chroot 内。这里非常适合用来安装 packages,链入配置管理工具或做一些特定的 image 操作。

  • 运行:chroot 内

post-install.d

  • 在 chroot 内运行代码。这里非常适合用来处理一些想要在安装完系统/软件和第一次启动镜像之间的任务。一些使用示例:

  • 运行 chkconfig 以 disable 掉不需要的服务,清掉 package manager 遗留下来的缓存以减少 image 体积。

  • 运行:chroot 内

block-device.d

  • 自定义 image 所在的块设备(比如说分区)。在目标树准备就绪之后运行,但在 cleanup.d 之前。

  • 运行:chroot 外

finalise.d

  • 对 root 文件系统做一些最后的调试工作。在 chroot 内运行,并且在 root 文件系统被复制到挂载出来的文件系统之后。这是一个适合用来重置 SELinux metadata,安装 grub 启动加载之类操作的地方。

  • 由于这里的操作是在最终的 image 内发生的,所以限制这里的操作,只做一些必须修改文件系统的 metadata 和 image 的操作是很重要的。对大多数操作来说,更应该在 preferred 内进行。

  • 运行:chroot 内

cleanup.d

  • 清理 root 文件系统内容。

  • 运行:chroot 外

    注意:各种阶段,(root,extra-data,pre_install,install,post_install,block-device,fianlise)除了chroot中和chroot外没有任何区别,只是用他们来规范操作(当然意义是不同的,但是运行的流程是相同的).

DIB逻辑

启动流程

  • BIOS,硬件自检,然后交给第一个存储设备(硬盘,网络…)

  • MBR,MBR主要的作用是描述磁盘和找到boot(MBR代码详解)(GRUB 不是通过文件系统来找内核文件的,因为这时候内核还没有启动所以也不存在什么文件系统,而是直接访问硬盘的第1个硬盘第1个分区(MBR里面存在分区表)的来找到内核文件)

  • BOOT loader,现在的boot loader主要有两种grub和extlinux,boot loader的作用是把磁盘中的内核文件加载到内存汇中.在DIB中的bootloader元素,中bootloader安装脚本是一个非常好的bootloader安装脚本,几乎在所有的linux发行版上都可以用这个脚本进行bootloader的安装

  • 内核加载程序,这里也有多种,以前用的是init,现在很多linux系统使用systemd,但是同时也保留init的兼容.
    探测硬件
    加载驱动
    挂载根文件系统
    执行第一个程序/sbin/init

镜像本质

镜像就是一块存储,里面保留了从分区表到文件系统到文件内容的所有数据.大致的组成是这样的: MBR,文件系统的格式,比如inod

分区表

分区表保存在MBR中,它占据了磁盘的前512个字节:

  • 001-440 bytes 由 BIOS 启动的 MBR 启动代码

  • 441-446 bytes MBR 硬盘签名

  • 447-510 bytes 分区表 (主分区和扩展分区,而非逻辑分区)

  • 511-512 bytes MBR 启动签名 0xAA55.

到此,关于“Diskimage-builder的作用是什么”的学习就结束了,希望能够解决大家的疑惑。理论与实践的搭配能更好的帮助大家学习,快去试试吧!若想继续学习更多相关知识,请继续关注亿速云网站,小编会继续努力为大家带来更多实用的文章!

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI