LINUX.ORG.RU

Preseed и запуск скрипта

 , ,


0

1

Добрый день, подскажите пожалуйста что не так? Ubuntu 20.04 Есть рабочий файл автоответов oem.seed, нужно что-бы в конце установки он создал директорию скачал скрипт и запустил его с правами sudo(желательно). На форумах нашел такой пример с коментом 100% рабочий, но нет, в конце установки ошибка 2. Пробовал по разному но все равно ошибки 2 172 1. Скрипт рабочий, через терминал все ок. Linuxоиды пожалуйста помогите.

d-i preseed/late_command string \

in-target mkdir /home/svcadm/share
in-target wget --no-proxy http://servername/tftp/hostgen.sh -p /tmp; \

in-target /bin/bash /tmp/hostgen.sh;


Последнее исправление: Hanzo (всего исправлений: 1)

Ну самое тупое - прописать в начале скрипта :)

#!/usr/bin/zsh -e
LordSlon
()

Во-первых, всё, что прописано в preseed выполняется от рута.
Во-вторых, у тебя потерялись ; \ после создания каталога.
Строка должна выглядеть так:

in-target mkdir /home/svcadm/share; \
Ps. А поледняя команда остаётся вообще без каких-либо закрывающих символов. Т.е. если после in-target /bin/bash /tmp/hostgen.sh; ничего больше нет, то должно выглядеть так
in-target /bin/bash /tmp/hostgen.sh

Gintoki
()
Последнее исправление: Gintoki (всего исправлений: 3)
Ответ на: комментарий от Gintoki

Спасибо, у меня так и было, не работает, сделал по другому d-i preseed/late_command string
apt-install mc net-tools openssh-server nfs-common;
in-target mkdir -p /home/svcadm/share;
in-target chmod 777 /home/svcadm/share;
cd /target;
wget http://10.61.1.51/tftp/hostgen.sh;
chroot ./ ./hostgen.sh;
d-i finish-install/reboot_in_progress note

в процессе установки есть ошибка 127, но скрипт отрабатывает.

Hanzo
() автор топика
Ответ на: комментарий от Hanzo
chroot ./ ./hostgen.sh;
d-i finish-install/reboot_in_progress note

Как минимум вижу здесь, что у тебя уже начинается новая команда, но после hostgen.sh стоит ";"(!). Поэтому finish-install приклеивается к late_command. Убери эту козяву!

Gintoki
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.