自動インストールを実行しようとしていますが、いくつかのコマンドをできるだけ早く実行する必要があります。そこで、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ファイルは、auto.seedファイルとしてUSBスティックにあります(これは正常にロードされます)。しかし、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
この状況をデバッグするにはどうすればよいですか?何度も何度もやり直すのは面倒です。
ユビキタスでは、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をセットアップし、インストールにその他の修正を行います。