diff --git "a/DEVELOPER_DOCS/\350\277\233\351\230\266\345\274\200\345\217\221/Anolis 8 ISO \351\225\234\345\203\217\345\256\232\345\210\266\345\256\236\350\267\265.md" "b/DEVELOPER_DOCS/\350\277\233\351\230\266\345\274\200\345\217\221/Anolis 8 ISO \351\225\234\345\203\217\345\256\232\345\210\266\345\256\236\350\267\265.md" new file mode 100644 index 0000000000000000000000000000000000000000..3fd6145bfbc4fce1a44603358ae3a63ed2d1ba4c --- /dev/null +++ "b/DEVELOPER_DOCS/\350\277\233\351\230\266\345\274\200\345\217\221/Anolis 8 ISO \351\225\234\345\203\217\345\256\232\345\210\266\345\256\236\350\267\265.md" @@ -0,0 +1,150 @@ +摘要信息:蜥社区(OpenAnolis)成立于 2020 年 9 月,立足云计算打造数字创新基石,聚拢产业生态力量,共创数字化发展开源新基建。龙蜥操作系统(Anolis OS)是 OpenAnolis 龙蜥社区发行的开源 Linux 发行版,兼容主流 Linux 发行版操作习惯,支持多计算架构,提供稳定、高性能、安全、可靠的操作系统服务。当前 Anolis OS 提供 Anolis OS 23、Anolis OS 8 和 Anolis OS 7 三个主要版本。本文基于Anolis 8.2 QU2 介绍了一种Anolis 8 ISO镜像定制的方法。 + +# 1 操作系统安装 + +## 1.1 语言选择 + +![](https://oss.openanolis.cn/blog/rrdqhasifrihmesfrhcs) + +## 1.2 安装选项 + +操作系统安装的时候,选择server with gui模式,全包安装。 ![](https://oss.openanolis.cn/blog/yhuuixzgebyemviqufnc) + +注:安装时不连接网络,避免安装时系统升级,通常是一种更好的实践。 ![](https://oss.openanolis.cn/blog/uowbrisjubcoifezhjgw) + +## 1.3 创建用户 + +安装时创建 mockbuild用户。 ![](https://oss.openanolis.cn/blog/sqpzyucbgksdqizxropv) + +## 1.4 重启完成安装 + +安装完成后重启,完成安装。 ![](https://oss.openanolis.cn/blog/bfnjnnynffwiwyddnzzt) ![](https://oss.openanolis.cn/blog/jmwpgvqkybqsmgmiwqfo) + +# 2 安装相关工具依赖 + +## 2.1 制作本地yum源 + +首先备份系统的repo文件。 ![](https://oss.openanolis.cn/blog/witcqzyngadrzrgjfvhq) + +其次,挂载 ISO 镜像。 +**mount /home/AnolisOS-8.2-QU2-x86\_64-dvd.iso /mnt/iso** ![](https://oss.openanolis.cn/blog/jmtbhwtlrncxzvbxxjdk) + +再次,编辑本地repo文件。 +**vim /etc/yum.repos.d/local.repo** + +[BaseOS] +name=BaseOS +baseurl=[file:///mnt/iso/BaseOS](file:///mnt/iso/BaseOS) +gpgcheck=0 +enabled=1 +[AppStream] +name=AppStream +baseurl=[file:///mnt/iso/AppStream](file:///mnt/iso/AppStream) +gpgcheck=0 +enabled=1 + +最后,执行yum makecache。 +**yum clean all && yum makecache** + +## 2.2 安装相关工具 + +**yum install createrepo genisoimage syslinux isomd5sum** ![](https://oss.openanolis.cn/blog/eucoyjkqsqxhxqhnvmaa) + +注:提示缺少的包从[https://mirrors.openanolis.cn/anolis/8.2/](https://mirrors.openanolis.cn/anolis/8.2/) 下载,然后使用yum install \*.rpm进行安装。 + +# 3. ISO镜像定制 + +## 3.1 生成定制目录结构 + +### 3.1.1 创建根目录 + +**mkdir -p /iso/custom\_iso** ![](https://oss.openanolis.cn/blog/ppnitqmfecozhurcrwhm) + +### 3.1.2 拷贝原始ISO镜像文件 + +**rsync -av --progress /mnt/iso/ /iso/custom\_iso/** ![](https://oss.openanolis.cn/blog/quvsfyntpsssqflubfrl) + +### 3.1.3 查看定制目录结构 + +![](https://oss.openanolis.cn/blog/trombhcasaoelfxqkwmv) + +## 3.2 删除指定的rpm包 + +### 3.2.1 查找指定的rpm安装包 + + +find /iso/custom_iso/ | grep 4.18.0-193.60.2 + + +![](https://oss.openanolis.cn/blog/lvudgomvjrkafgtiwsil) + +### 3.2.2 移除指定的rpm安装包 + + +mkdir -p /iso/duplicated
+for i in $(find /iso/custom_iso/ | grep 4.18.0-193.60.2); do echo mv $i; mv $i
/iso/duplicated/; echo done ;done
+
+ + +![](https://oss.openanolis.cn/blog/zlvlwpealpxkhyumpnjs) + + +## 3.3 添加指定的rpm包 + + +cp /home/mockbuild/rpmbuild/RPMS/x86_64/*4.18.0-193.70.1*
+/iso/custom_iso/BaseOS/Packages/ +
+ +![](https://oss.openanolis.cn/blog/wdybjfyllcpziactyiqj) + +## 3.4 重建BaseOS repodata + +### 3.4.1 备份comps-BaseOS.x86\_64.xml + + +cd /iso/custom_iso/
+cd BaseOS/
+cp repodata/*-comps-BaseOS.x86_64.xml comps-BaseOS.x86_64.xml
+
+ +![](https://oss.openanolis.cn/blog/cydqlgrjffqngttchume) + +### 3.4.2 清空BaseOS/repodata + + +cd /iso/custom_iso/BaseOS
+rm -rf repodata/*
+
+ +![](https://oss.openanolis.cn/blog/orusoqxtbczczmspbrjm) + +### 3.4.3 重建BaseOS repodata + +**cd /iso/custom\_iso/ +createrepo -g comps-BaseOS.x86\_64.xml BaseOS/**![](https://oss.openanolis.cn/blog/tjoatwpborfzemyecamf) + +## 3.5 生成定制ISO镜像 + +**genisoimage -joliet-long -V anolis-8-x86\_64-dvd -o /home/AnolisOS-8.2-QU2-x86\_64-dvd-custom.iso -b isolinux/isolinux.bin -c isolinux/boot.cat -no-emul-boot -boot-load-size 4 -boot-info-table -R -J -T -eltorito-alt-boot -e images/efiboot.img -no-emul-boot /iso/custom\_iso/** +![](https://oss.openanolis.cn/blog/cunwrnkdbwkkfvwasbso) + +## 3.6 转为hybrid镜像(可选) + +**isohybrid -u /home/AnolisOS-8.2-QU2-x86\_64-dvd-custom.iso**![](https://oss.openanolis.cn/blog/aycoilovgemapvimnejw) + +## 3.7 嵌入md5(可选) + +**implantisomd5 /home/AnolisOS-8.2-QU2-x86\_64-dvd-custom.iso**![](https://oss.openanolis.cn/blog/dujgbxsgkgrgwuqpjhib) + +→→EOF←← + +**关于作者** + +![](https://img.alicdn.com/tfs/TB1Eh._UFP7gK0jSZFjXXc5aXXa-35-35.svg?x-oss-process=image/resize,h_110,w_110,m_fill,limit_0) + +tingyin + +荣获2021龙蜥社区年度突出贡献奖&2024龙蜥社区优秀贡献者。 + +