Cómo usar early_command con ubicuidad

Cómo usar early_command con ubicuidad

Estoy intentando realizar una instalación automática y necesito ejecutar algunos comandos lo antes posible. Entonces modifiqué mi medio de instalación USB (Ubuntu 16.04) y agregué:

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
}

esto se explica aquí: https://wiki.ubuntu.com/UbiquityAutomation y aquíhttps://wiki.ubuntu.com/DesktopCDOptions

El archivo early.sh está en mi memoria USB como mi archivo auto.seed (que está cargado perfectamente). Pero parece que mi script early.sh nunca se ejecuta.

Sólo quiero copiar un archivo al sistema en vivo:

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

Le he precedido /root como se explica en los enlaces anteriores. Incluso lo he probado:

#!/bin/bash
touch /root/test

Cuando detengo la instalación antes de que se ejecute partman, obtengo el Live Desktop habitual y espero abrir una consola y ver /root/test. Pero yo no.

Estaba mirando /var/log/syslog y puedo ver los parámetros de arranque pero no hay más líneas de registro sobre early_command

Mi archivo preestablecido contiene líneas como esta:

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

¿Cómo puedo depurar esta situación? Es molesto empezar una y otra vez.

Respuesta1

Creo que con la ubicuidad, early_command y late_command simplemente no funcionan. Entonces ahora estoy usando algo como

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

Estos comandos funcionan bien, configuro mi wifi y hago otras correcciones en mi instalación antes de reiniciar.

información relacionada