Как использовать early_command с повсеместностью

Как использовать early_command с повсеместностью

Я пытаюсь сделать автоматическую установку и мне нужно запустить некоторые команды как можно раньше. Поэтому я модифицировал свой установочный USB-носитель (Ubuntu 16.04) и добавил:

menuentry "Install automatically" {
    set gfxpayload=keep
    linux   /casper/vmlinuz.efi file=/cdrom/auto.seed preseed/early_command=/cdrom/early.sh boot=casper auto=true automatic-ubiquity debug-ubiquity  quiet splash ---
    initrd  /casper/initrd.lz
}

это объясняется здесь: https://wiki.ubuntu.com/UbiquityAutomation и здесьhttps://wiki.ubuntu.com/DesktopCDOptions

Файл early.sh находится на моем USB-накопителе как файл auto.seed (который загружается просто отлично). Но, похоже, мой скрипт early.sh никогда не запускается.

Я просто хочу скопировать файл в работающую систему:

#!/bin/bash
cp /cdrom/wlan /root/etc/NetworkManager/system-connections/wlan;
chmod 0600 /root/etc/NetworkManager/system-connections/wlan;

Я добавил префикс /root, как описано в ссылках выше. Я даже пробовал:

#!/bin/bash
touch /root/test

Когда я останавливаю установку до запуска partman, я получаю обычный Live Desktop и ожидаю открыть консоль и увидеть /root/test. Но этого не происходит.

Я просмотрел /var/log/syslog и увидел параметры загрузки, но больше никаких строк журнала о early_command нет.

Мой preseed-файл содержит такие строки:

d-i preseed/early_command string in-target touch /root/test

Как мне исправить эту ситуацию? Надоедает начинать снова и снова.

решение1

Я думаю, что с ubiquity early_command и late_command просто не работают. Так что теперь я использую что-то вроде

ubiquity  ubiquity/success_command string \
  cp /cdrom/script /target/root/; \
  chmod 0700 /target/root/script; \
  in-target /root/script; \

Эти команды работают нормально, и я настраиваю свой Wi-Fi и вношу другие исправления в установку перед перезагрузкой.

Связанный контент