openEuler самостоятельно генерирует ISO

17028603:

1. Загрузите изображение

Загрузите релизную версию с официального сайта https://repo.openeuler.org/openEuler-22.03-LTS/ISO/ .

2. Смонтируйте образ

Загрузите образ openEuler-22.03-LTS-SP2-x86_64.iso в каталог /root/ системы openEuler или системы centos и смонтируйте его в каталог /media.

mount /root/openEuler-22.03-LTS-SP2-x86_64.iso /media

3. Установите инструменты для создания дистрибутивов.

yum -y install createrepo genisoimage isomd5sum rsync

4. Синхронизируйте файлы компакт-диска с каталогом, в котором создан ISO.

Синхронизировать файлы по пути /media с /ISO, за исключением папок «Пакеты» и «repodata».

/usr/bin/rsync -a --exclude=Packages/ --exclude=repodata/ /media/ /ISO/

Создайте новые папки Packages и repodata в папке /ISO/.

mkdir -p /ISO/{
    
    Packages,repodata}

5. Скопируйте установленный пакет.

Создать файл install.log

rpm -qa >> /root/install.log

awk '{print $0}'  /root/install.log |xargs -i cp /media/Packages/{
    
    }.rpm /ISO/Packages/

6. Найдите несуществующие обороты и пропишите no_exist_rpms

awk '{print $0}'  /root/install.log |xargs -i ls /ISO/Packages/{
    
    }.rpm > no_exist_rpms.txt

7. Загрузите все зависимые пакеты в no_exist_rpms.txt.

#!/bin/sh   
for line in `cat /root/no_exist_rpms.txt`
    do
       echo "download file>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>and it's denpendies:"$line
       yum install -y --downloadonly --downloaddir=/ISO/Packages/ $line
    done

8. Измените файл isolinux.cfg.

vi /ISO/isolinux/isolinux.cfg

Воля

append initrd=initrd.img inst.stage2=hd:LABEL=openEuler-22.03-LTS-SP2-x86_64 quiet

изменить на:

append initrd=initrd.img inst.stage2=hd:LABEL=openEuler-22.03-LTS-SP2-x86_64 inst.ks=hd:LABEL=openEuler-22.03-LTS-SP2-x86_64:/isolinux/ks.cfg quiet

inst.ks — расположение файла ks.cfg,
inst.stage2 — расположение установочного носителя,
hd:LABEL — метка носителя, openEuler-22.03-LTS-SP2-x86_64. Это связано с параметром -V последующей команды genisoimage для создания файла образа ISO. Лучше всего заменить все значения после hd:LABEL строкой, которая будет использоваться позже, openEuler-22.03-LTS-SP2-x86_64.

9. Измените файл конфигурации автоматической установки.

После завершения первой ручной установки системы все параметры, выбранные в программе установки, сохраняются в файле с именем anaconda-ks.cfg, который находится в каталоге /root/ установленной системы. Затем вы можете скопировать этот файл, изменить его по мере необходимости и использовать полученный файл конфигурации в последующих установках.

cp /root/anaconda-ks.cfg /ISO/isolinux/ks.cfg

Добавьте группу пакетов, требующую выборочной установки, между %packages и %end.

Установите необходимые пакеты программного обеспечения. Добавьте настроенный установочный пакет, чтобы настроить программное обеспечение при установке системы, например: @my-des

%packages
@^web-server-environment
@base
@core
@java-platform
@python-web
@web-server
kexec-tools
@my-des
%end

Groupid пользовательской группы пакетов — это группа, определенная в файле /repodata/normal.xml.

10. Создание и изменение файлов noraml.

Войдите в каталог /ISO, скопируйте файл *normal.xml в путь /ISO/repodata и переименуйте его в нормальный.xml. По этому пути будет только один XML-файл с таким именем.

cp /media/repodata/*-noraml.xml  /ISO/repodata/normal.xml

Отредактируйте обычный файл, чтобы добавить индивидуальный пакет rpm.

<group>
    <id>my-des</id>
    <name>My Dependencies</name>
    <default>true</default>
    <uservisible>true</uservisible> # 这个值为true,在安装界面才能看到,否则不可见
    <packagelist>
        <packagereq type="default">python-webob</packagereq>
        ......
    </packagelist>
</group>

Список пакетов для сращивания на основе no_exist_rpms.txt
Примечание. Сначала вам необходимо обработать файл no_exist_rpms.txt и удалить версию и другую информацию после имени каждого пакета RPM,
например: libv4l-1.14.2-6.oe2203sp2.x86_64, после обработки: libv4l
может использовать возвышенные регулярные выражения - [0-9].*Замените следующую информацию о версии

#!/bin/sh
for line in `cat no_exist_rpms.txt`
do
    echo " <packagereq type=\"default\">"$line"</packagereq>" >> /root/package.txt
done

11. Добавьте индивидуальный идентификатор группы в указанную среду.

<environment>
    <id>web-server-environment</id>
    <name>Basic Web Server</name>
    <description>Server for serving static and dynamic internet content. </description>
    <display_order>30</display_order>
    <grouplist>
      <groupid>base</groupid>
      <groupid>core</groupid>
      <groupid>web-server</groupid>
      <groupid>my-des</groupid>
    </grouplist>
</environment>

Если вы больше не указываете среду для добавления, то есть добавляете вновь определенный идентификатор группы в узел среды, в интерфейсе установки системы появится сообщение об ошибке неопределенной группы.

12. Создайте новые данные реподанных.

Переключитесь на ISO/path и сгенерируйте пакет реподанных из нормального.xml. Обратите внимание: при добавлении нового пакета или обновлении файлаnormal.xml папку repodata необходимо создать заново.

createrepo -g repodata/normal.xml ./

13. Создайте ISO-образ

Обратите внимание, что -V в параметре относится к файлу isolinux.cfg, указанному выше.

cd /ISO
genisoimage -joliet-long -V openEuler-22.03-LTS-SP2-x86_64 -o openEuler-22.03.iso -b isolinux/isolinux.bin -c isolinux/boot.cat -no-emul-boot -boot-load-size 4 -boot-info-table -R -J -v -cache-inodes -T -eltorito-alt-boot -e images/efiboot.img -no-emul-boot /ISO

Параметр -V openEuler-22.03-LTS-SP2-x86_64 — это упомянутый выше inst.stage2=hd:LABEL=openEuler-22.03-LTS-SP2-x86_64. Если он содержит пробелы, добавьте двойные кавычки, например -V "CentOS 7 x86_64"

14. Создайте значение MD5 изображения.

implantisomd5 /ISO/openEuler-22.03-LTS-SP2-x86_64.iso

15. Когда система запустится, нажмите e, чтобы войти в конфигурацию и изменить конфигурацию запуска.

Вставьте сюда описание изображения

append initrd=initrd.img inst.stage2=hd:LABEL=openEuler-2 ks=hd:LABEL=openEuler-2:/isolinux/ks.cfg  quiet

Примечание. openEuler-2 — это буквенная метка USB-накопителя.

Supongo que te gusta

Origin blog.csdn.net/wyw0000/article/details/132574762
Recomendado
Clasificación