From 5760060a2883b4371717db3194d12a270e60f981 Mon Sep 17 00:00:00 2001 From: xujing Date: Thu, 21 Dec 2023 10:51:55 +0800 Subject: [PATCH] docs: add the guide to creating an ISO image for sysmaster as process 1 --- ...347\232\204iso\351\225\234\345\203\217.md" | 77 +++++++++++++++++++ 1 file changed, 77 insertions(+) create mode 100644 "docs/use/00-\345\210\266\344\275\234sysmaster\344\275\234\344\270\2721\345\217\267\350\277\233\347\250\213\347\232\204iso\351\225\234\345\203\217.md" diff --git "a/docs/use/00-\345\210\266\344\275\234sysmaster\344\275\234\344\270\2721\345\217\267\350\277\233\347\250\213\347\232\204iso\351\225\234\345\203\217.md" "b/docs/use/00-\345\210\266\344\275\234sysmaster\344\275\234\344\270\2721\345\217\267\350\277\233\347\250\213\347\232\204iso\351\225\234\345\203\217.md" new file mode 100644 index 00000000..aac03c6d --- /dev/null +++ "b/docs/use/00-\345\210\266\344\275\234sysmaster\344\275\234\344\270\2721\345\217\267\350\277\233\347\250\213\347\232\204iso\351\225\234\345\203\217.md" @@ -0,0 +1,77 @@ +# oemake制作sysmaster作为1号进程的iso镜像 + +## 一、安装工具包 + +1、配置待制作镜像同版本的repo源 + +``` +vi /etc/yum.repos.d/openEuler.repo +[openEuler] +name=openEuler +baseurl=https://repo.openeuler.org/openEuler-22.03-LTS-SP2/everything/aarch64/ +enabled=1 +gpgcheck=0 +priority=1 +``` + +2、安装oemker、createrepo + +``` +yum install oemaker createrepo +``` + +## 二、制作本地源 + +1、下载everything镜像到/root目录 + +2、挂载everything镜像到本地/root/iso + +``` +cd /root +mkdir iso +mount openEuler-22.03-LTS-SP2-everything-aarch64-dvd.iso iso +``` + +3、定制sysmaster软件包,在sysmaster的spec脚本中编写posttrans脚本 + +``` +%posttrans +if [ -L "/usr/sbin/init" ]; then + rm -rf /usr/sbin/init +fi +ln -s /usr/lib/sysmaster/init /usr/sbin/init + +#iso安装所有包之后会重做小系统,删除这些目录,确保重做的小系统不包含systemd相关信息,等效于重新执行了:dracut -f --omit "systemd systemd-initrd systemd-networkd dracut-systemd" /boot/initramfs-`uname -r`.img命令 +rm -rf /usr/lib/dracut/modules.d/00systemd /usr/lib/dracut/modules.d/01systemd-initrd /usr/lib/dracut/modules.d/01systemd-networkd /usr/lib/dracut/modules.d/98dracut-systemd +``` + +4、将编译出来的sysmaster和devmaster包下载下来保存在/root/repo目录 + +5、 生成本地源 + +``` +cd /root/repo +createrepo . +``` + +## 三、修改oemaker配置 + +oemaker安装后的脚本路径为“/opt/oemaker”,在/opt/oemaker/config/{arch}/normal.xml中的Core列表里新增sysmaster和devmaster +``` +sysmaster +devmaster +``` + +## 四、制作iso镜像 + +1、 保证有3个可用的loop设备(虚拟机可以不用管,但容器场景可能需要此条件) + +``` +ls /dev/loop* -l +``` + +2、制作iso镜像 + +``` +oemaker -t standard -p openEuler -v 22.03-LTS-SP2 -r '' -s "file:///root/iso file:///root/repo" +``` -- Gitee