Рейтинг:1

Как сделать Ubuntu автоматической установкой ISO с помощью Cloud-init в Ubuntu 21.10

флаг uy

У меня есть рабочий процесс 20.04, в котором я могу создать файл ISO. Справка: https://gist.github.com/s3rj1k/55b10cd20f31542046018fcce32f103e

Но если я попытаюсь сделать то же самое с Ubuntu 21.10, в извлеченном каталоге пропадет несколько файлов. Есть ли серьезные изменения в Ubuntu 21.10?

Пожалуйста, помогите мне создать ISO с автоматической установкой Cloud-init.

Рейтинг:1
флаг cn

TL;DR:

Использовать xorriso -indev ubuntu.iso -report_el_torito as_mkisofs чтобы узнать параметры, необходимые для восстановления ISO после его исправления.

Полные шаги:

Это предполагает, что у вас есть "Убунту.исо" и создаст новый "ubuntu-autoinstall.iso".

  1. Распакуйте ISO с помощью: mkdir новый && bsdtar -C новый -xf ubuntu.iso

    (установить libarchive-инструменты получить бдтар)

  2. Пластырь новый/загрузочный/жратва/жратва.cfg следующее:

    Изменить установить время ожидания = 30 к установить время ожидания = 1

    Добавить новый вход в меню поверх всех остальных следующим образом:

    пункт меню "автоустановка" {
       установить gfxpayload = сохранить
       linux /casper/vmlinuz тихая автоустановка ds=nocloud\;s=/cdrom/server/ ---
       initrd /каспер/initrd
    }
    
  3. Добавьте файлы cloud-init следующим образом (зашифрованный пароль «убунту"):

    mkdir новый/сервер
    сенсорный новый/сервер/метаданные
    cat << _EOF_ > новый/сервер/данные пользователя
    #cloud-config
    автоустановка:
      версия: 1
      личность:
        имя хоста: ubuntu-сервер
        пароль: "$6$exDY1mhS4KUYCE/2$zmn9ToZwTKLhCw.b4/b.ZRTIZM30JZ4QrOQ2aOXJ8yk96xpcCof0kxKwuX1kqLG/ygbJ1f8wxED22bTL4F46P0"
        имя пользователя: убунту
    
  4. Создайте новый ISO (вывод -report_el_torito для вашего ISO может отличаться; отредактируйте соответственно)

xorriso -as mkisofs --modification-date='2021101314195100' --grub2-mbr --interval:local_fs:0s-15s:zero_mbrpt,zero_gpt:'ubuntu.iso' --protective-msdos-label -partition_cyl_align off -partition_offset 16 --mbr-force-bootable -append_partition 2 28732ac11ff8d211ba4b00a0c93ec93b --interval:local_fs:2470124d-2478587d::'ubuntu.iso' -part_like_isohybrid -iso_mbr_part_type a2a0d0ebe5b9334487c068b6b72699c7 -c '/boot.catalog' -b '/boot/grub/i386- pc/eltorito.img' -no-emul-boot -boot-load-size 4 -boot-info-table --grub2-boot-info -eltorito-alt-boot -e '--interval:appended_partition_2_start_617531s_size_8464d:all :: ' -no-emul-boot -boot-load-size 8464 -isohybrid-gpt-basdat -o ubuntu-autoinstall.iso -V 'Ubuntu autoinstall' new/

Длинная версия:

Я начал искать о подсобность, новый установщик Ubuntu. Мне было особенно интересно узнать, как они создали ISO, потому что у меня была точно такая же проблема, как и у вас! В его исходном коде я наткнулся make-edge-iso.sh который использовал что-то многообещающее под названием livefs-редактор. (Я не мог использовать это напрямую для того, что хотел, но вы увидите, что это предлагает --add-autoinstall-config опция, которая, вероятно, делает именно то, что нам нужно.) Копаясь в ее коде, я наткнулся на волшебную опцию xorriso "-report_el_torito as_mkisofs", которая ответила на наши вопросы! Он пытается рассказать вам, как именно был построен ISO.

Ответить или комментировать

Большинство людей не понимают, что склонность к познанию нового открывает путь к обучению и улучшает межличностные связи. В исследованиях Элисон, например, хотя люди могли точно вспомнить, сколько вопросов было задано в их разговорах, они не чувствовали интуитивно связи между вопросами и симпатиями. В четырех исследованиях, в которых участники сами участвовали в разговорах или читали стенограммы чужих разговоров, люди, как правило, не осознавали, что задаваемый вопрос повлияет — или повлиял — на уровень дружбы между собеседниками.