Проблема с передачей файлов из iso-образа в целевую ОС через конфигурацию preseed.

suspect

New member
Сообщения
13
#1
Добрый день!
Пытаюсь написать конфигурацию preseed для автоматизированной установки Орла. Столкнулся с проблемой передачи файлов из iso в целевую ОС. Что я делаю:
Распаковываю iso-образ, создаю в нем кастомную директорию packages. Кладу в нее свои deb-пакеты и несколько скриптов. Пишу файл preseed. В late_command указываю:

d-i preseed/late_command string cp /cdrom/packages /target/root;

После выполнения этой команды файлы из директории packages с iso-образа должны копироваться в директорию /root на устанавливаемой ОС, оттуда же должен запустится скрипт и этот скрипт должен установить нужные мне deb-пакеты в систему.
В итоге, установка системы падает с ошибкой.
Все остальные команды из late_command срабатывают как надо.
Точно такая же схема у меня нормально работает на ubuntu.
Скорее всего, нет такого пути "/cdrom", как я понимаю.
Прошу помочь.
 

Вложения

YNA

New member
Сообщения
321
#2
Не знаю, насколько это похожая пролема, но получилось так.
Ставлю новую систему Орёл с диска СД. После установки копирую с установочного диска пакеты usb-modswich, чтобы установить их и получить доступ в интернет.
И тут началось. Ни какой пакет не устанавливается, удалить эти файлы невозможно, система падает каждые 15-20 сек в начальный экран выбора юзера.
К счастью за эти 20 сек удалось задать пароль root. Потом, после очередного падения системы можно было зайти пользователем root, удалить эти злосчастные файлы, грохнуть пользователя и создать нового с тем же именем. Сейчас всё работает нормально, но я не понимаю какой статус у этого нового пользователя (или администратор или простой) в Астре ни чего не понятно, какой пользователь создаётся.
Вот как то так.
 

suspect

New member
Сообщения
13
#3
Суть в том, что мне нужно создать iso-образ, который сам ставит систему без ручных ответов на вопросы установщика и кроме этого, автоматически поставить кое-какие дебники и запустить несколько скриптов.
 

suspect

New member
Сообщения
13
#4
вывел поток ошибок в файл.
d-i preseed/late_command string cp /cdrom/packages /target/root 2>/target/root/error;

получаю в логе ошибок ожидаемое:
cp: can't stat '/cdrom/packages': No such file or directory

осталось понять - как же в орле называется этот таинственный /cdrom.
 

Montfer

New member
Сообщения
2 364
#5
Не знаю, насколько это похожая пролема, но получилось так.
Ставлю новую систему Орёл с диска СД. После установки копирую с установочного диска пакеты usb-modswich, чтобы установить их и получить доступ в интернет.
И тут началось. Ни какой пакет не устанавливается, удалить эти файлы невозможно, система падает каждые 15-20 сек в начальный экран выбора юзера.
К счастью за эти 20 сек удалось задать пароль root. Потом, после очередного падения системы можно было зайти пользователем root, удалить эти злосчастные файлы, грохнуть пользователя и создать нового с тем же именем. Сейчас всё работает нормально, но я не понимаю какой статус у этого нового пользователя (или администратор или простой) в Астре ни чего не понятно, какой пользователь создаётся.
Вот как то так.
через dpkg ставили?
 

YNA

New member
Сообщения
321
#6
Не, обычным двойным кликом. Для этого пакета всегда так делаю и всегда всё нормально. Правда устанавливаю эти пакеты с образа DVD, который лежит на диске с виндой.
А тут ситуация была другая, по определённым причинам пришлось ставить систему с реального DVD диска, причём попалась самая первая Астра 2.12.13.
После установки системы, при попытке установить пакеты с DVD система ругнулась что то типа о неудовлетворённых зависимостях или отсутствующих файлах (сейчас не помню). На скопированные с DVD файлы (в домашний каталог) среагировала точно так же и так и не смогла ни чего установить. Как выяснилось эти файлы потом невозможно было ни скопировать ни переместить не удалить - нету прав!
Примерно через полминутки выскочило сообщение: типа "Предыдущая сессия завершилась аварийно, Продолжить/Нет". На какую кнопку в этом окошке не нажмёшь - всё одно и то же - сброс в начальный экран входа в систему. И опять и опять и т. д. Хорошо что был небольшой запас времени и удалось успеть задать пороль root. Ну а дальше всё удалось "утрясти" как было написано.
Больше с реального DVD ни чего не буду устанавливать и ни чего не буду копировать! :mad::)
 

Montfer

New member
Сообщения
2 364
#7
Не, обычным двойным кликом. Для этого пакета всегда так делаю и всегда всё нормально. Правда устанавливаю эти пакеты с образа DVD, который лежит на диске с виндой.
А тут ситуация была другая, по определённым причинам пришлось ставить систему с реального DVD диска, причём попалась самая первая Астра 2.12.13.
После установки системы, при попытке установить пакеты с DVD система ругнулась что то типа о неудовлетворённых зависимостях или отсутствующих файлах (сейчас не помню). На скопированные с DVD файлы (в домашний каталог) среагировала точно так же и так и не смогла ни чего установить. Как выяснилось эти файлы потом невозможно было ни скопировать ни переместить не удалить - нету прав!
Примерно через полминутки выскочило сообщение: типа "Предыдущая сессия завершилась аварийно, Продолжить/Нет". На какую кнопку в этом окошке не нажмёшь - всё одно и то же - сброс в начальный экран входа в систему. И опять и опять и т. д. Хорошо что был небольшой запас времени и удалось успеть задать пороль root. Ну а дальше всё удалось "утрясти" как было написано.
Больше с реального DVD ни чего не буду устанавливать и ни чего не буду копировать! :mad::)
Скорее всего, система не знала о репозитории на диске. Рекомендую не использовать графику, а ставить пакеты через терминал...
apt-cdrom add - добавить диск в список репозиториев
apt update - обновить список
apt install имя_пакета - установить пакет.
И все зависимости подтянулись бы с диска
 

Montfer

New member
Сообщения
2 364
#9
А вообще лучший вариант такой: https://forum.astralinux.ru/threads/1469/post-10682
И ни каких заморочек с интернетом. :)
Как бы и установка через консоль не особо сложный процесс (специально добавил вывод текущего времени в консоль):
[17:10:23] admpc@astra:~$ cat /etc/apt/sources.list
#Отключил дефолтные репы, чтобы астра не лезла в инет
#deb https://download.astralinux.ru/astra/current/orel/repository/ orel main contrib non-free
#deb http://mirror.yandex.ru/astra/current/orel/repository/ orel main contrib non-free
[17:10:44] admpc@astra:~$
[17:10:45] admpc@astra:~$
[17:10:46] admpc@astra:~$ sudo apt-cdrom add
Использование /media/cdrom/ в качестве точки монтирования CD-ROM
Размонтирование CD-ROM…
Ожидание операции работы с диском…
Вставьте диск в устройство и нажмите [Enter]
Монтирование CD-ROM…
Идентификация... [1dd9a3a8ef107c1d4fb360f3dd13d221-2]
Поиск на диске индексных файлов...
Найдено индексов: 3 для пакетов, 0 для источников, 0 для переводов и 1 для сигнатур
Название диска:
«OS Astra Linux 2.12.13 orel - amd64 DVD »
Копирование списков пакетов…gpgv: Signature made Пн 06 май 2019 15:39:12 MSK
gpgv: using RSA key 7A7A24A559D1F7A9C9FA1F9A7DB1E284F89C2962
gpgv: Good signature from "JSC RPA RusBITech (REPOSITORY RBT KEY 2018) <mail@rusbitech.ru>"
Reading Package Indexes… Готово
Запись нового списка источников
Записи в списке источников для этого диска:
deb cdrom:[OS Astra Linux 2.12.13 orel - amd64 DVD ]/ orel contrib main non-free
Размонтирование CD-ROM…
Повторите этот процесс для всех имеющихся CD.
[17:11:04] admpc@astra:~$ sudo apt update
Игн:1 cdrom://OS Astra Linux 2.12.13 orel - amd64 DVD orel InRelease
Сущ:2 cdrom://OS Astra Linux 2.12.13 orel - amd64 DVD orel Release
Чтение списков пакетов… Готово
Построение дерева зависимостей
Чтение информации о состоянии… Готово
Все пакеты имеют последние версии.
N: Пропускается получение настроенного файла «contrib/binary-i386/Packages», так как репозиторий «cdrom://OS Astra Linux 2.12.13 orel - amd64 DVD orel InRelease» не поддерживает архитектуру «i386»
N: Пропускается получение настроенного файла «main/binary-i386/Packages», так как репозиторий «cdrom://OS Astra Linux 2.12.13 orel - amd64 DVD orel InRelease» не поддерживает архитектуру «i386»
N: Пропускается получение настроенного файла «non-free/binary-i386/Packages», так как репозиторий «cdrom://OS Astra Linux 2.12.13 orel - amd64 DVD orel InRelease» не поддерживает архитектуру «i386»
[17:11:10] admpc@astra:~$ sudo apt install usb-modeswitch
Чтение списков пакетов… Готово
Построение дерева зависимостей
Чтение информации о состоянии… Готово
Будут установлены следующие дополнительные пакеты:
libjim0.76 usb-modeswitch-data
Предлагаемые пакеты:
comgt wvdial
НОВЫЕ пакеты, которые будут установлены:
libjim0.76 usb-modeswitch usb-modeswitch-data
обновлено 0, установлено 3 новых пакетов, для удаления отмечено 0 пакетов, и 0 пакетов не обновлено.
Необходимо скачать 0 B/217 kB архивов.
После данной операции, объём занятого дискового пространства возрастёт на 662 kB.
Хотите продолжить? [Д/н] y
Пол:1 cdrom://OS Astra Linux 2.12.13 orel - amd64 DVD orel/main amd64 libjim0.76 amd64 0.76-2 [114 kB]
Пол:2 cdrom://OS Astra Linux 2.12.13 orel - amd64 DVD orel/main amd64 usb-modeswitch-data all 20170120-1 [47,3 kB]
Пол:3 cdrom://OS Astra Linux 2.12.13 orel - amd64 DVD orel/main amd64 usb-modeswitch amd64 2.5.0+repack0-1 [56,3 kB]
Выбор ранее не выбранного пакета libjim0.76:amd64.
(Чтение базы данных … на данный момент установлено 117044 файла и каталога.)
Подготовка к распаковке …/libjim0.76_0.76-2_amd64.deb …
Распаковывается libjim0.76:amd64 (0.76-2) …
Выбор ранее не выбранного пакета usb-modeswitch-data.
Подготовка к распаковке …/usb-modeswitch-data_20170120-1_all.deb …
Распаковывается usb-modeswitch-data (20170120-1) …
Выбор ранее не выбранного пакета usb-modeswitch.
Подготовка к распаковке …/usb-modeswitch_2.5.0+repack0-1_amd64.deb …
Распаковывается usb-modeswitch (2.5.0+repack0-1) …
Настраивается пакет libjim0.76:amd64 (0.76-2) …
Настраивается пакет usb-modeswitch-data (20170120-1) …
Настраивается пакет usb-modeswitch (2.5.0+repack0-1) …
Обрабатываются триггеры для libc-bin (2.24-11+deb9u3) …
Обрабатываются триггеры для man-db (2.7.6.1-2) …
[17:11:41] admpc@astra:~$ lsb_release -a
No LSB modules are available.
Distributor ID: AstraLinuxCE
Description: Astra Linux CE 2.12.13 (Orel)
Release: 2.12.13
Codename: orel
[17:12:01] admpc@astra:~$

У автора прошу прощения за флуд. Но по опыта в таких вопросах на форуме мало кто поможет. Лучше обращаться в техподдержку, но она платная. Подробней в "Положении о техподдержке" https://astralinux.ru/support/
 

suspect

New member
Сообщения
13
#10
Как бы и установка через консоль не особо сложный процесс (специально добавил вывод текущего времени в консоль):
[17:10:23] admpc@astra:~$ cat /etc/apt/sources.list
#Отключил дефолтные репы, чтобы астра не лезла в инет
#deb https://download.astralinux.ru/astra/current/orel/repository/ orel main contrib non-free
#deb http://mirror.yandex.ru/astra/current/orel/repository/ orel main contrib non-free
[17:10:44] admpc@astra:~$
[17:10:45] admpc@astra:~$
[17:10:46] admpc@astra:~$ sudo apt-cdrom add
Использование /media/cdrom/ в качестве точки монтирования CD-ROM
Размонтирование CD-ROM…
Ожидание операции работы с диском…
Вставьте диск в устройство и нажмите [Enter]
Монтирование CD-ROM…
Идентификация... [1dd9a3a8ef107c1d4fb360f3dd13d221-2]
Поиск на диске индексных файлов...
Найдено индексов: 3 для пакетов, 0 для источников, 0 для переводов и 1 для сигнатур
Название диска:
«OS Astra Linux 2.12.13 orel - amd64 DVD »
Копирование списков пакетов…gpgv: Signature made Пн 06 май 2019 15:39:12 MSK
gpgv: using RSA key 7A7A24A559D1F7A9C9FA1F9A7DB1E284F89C2962
gpgv: Good signature from "JSC RPA RusBITech (REPOSITORY RBT KEY 2018) <mail@rusbitech.ru>"
Reading Package Indexes… Готово
Запись нового списка источников
Записи в списке источников для этого диска:
deb cdrom:[OS Astra Linux 2.12.13 orel - amd64 DVD ]/ orel contrib main non-free
Размонтирование CD-ROM…
Повторите этот процесс для всех имеющихся CD.
[17:11:04] admpc@astra:~$ sudo apt update
Игн:1 cdrom://OS Astra Linux 2.12.13 orel - amd64 DVD orel InRelease
Сущ:2 cdrom://OS Astra Linux 2.12.13 orel - amd64 DVD orel Release
Чтение списков пакетов… Готово
Построение дерева зависимостей
Чтение информации о состоянии… Готово
Все пакеты имеют последние версии.
N: Пропускается получение настроенного файла «contrib/binary-i386/Packages», так как репозиторий «cdrom://OS Astra Linux 2.12.13 orel - amd64 DVD orel InRelease» не поддерживает архитектуру «i386»
N: Пропускается получение настроенного файла «main/binary-i386/Packages», так как репозиторий «cdrom://OS Astra Linux 2.12.13 orel - amd64 DVD orel InRelease» не поддерживает архитектуру «i386»
N: Пропускается получение настроенного файла «non-free/binary-i386/Packages», так как репозиторий «cdrom://OS Astra Linux 2.12.13 orel - amd64 DVD orel InRelease» не поддерживает архитектуру «i386»
[17:11:10] admpc@astra:~$ sudo apt install usb-modeswitch
Чтение списков пакетов… Готово
Построение дерева зависимостей
Чтение информации о состоянии… Готово
Будут установлены следующие дополнительные пакеты:
libjim0.76 usb-modeswitch-data
Предлагаемые пакеты:
comgt wvdial
НОВЫЕ пакеты, которые будут установлены:
libjim0.76 usb-modeswitch usb-modeswitch-data
обновлено 0, установлено 3 новых пакетов, для удаления отмечено 0 пакетов, и 0 пакетов не обновлено.
Необходимо скачать 0 B/217 kB архивов.
После данной операции, объём занятого дискового пространства возрастёт на 662 kB.
Хотите продолжить? [Д/н] y
Пол:1 cdrom://OS Astra Linux 2.12.13 orel - amd64 DVD orel/main amd64 libjim0.76 amd64 0.76-2 [114 kB]
Пол:2 cdrom://OS Astra Linux 2.12.13 orel - amd64 DVD orel/main amd64 usb-modeswitch-data all 20170120-1 [47,3 kB]
Пол:3 cdrom://OS Astra Linux 2.12.13 orel - amd64 DVD orel/main amd64 usb-modeswitch amd64 2.5.0+repack0-1 [56,3 kB]
Выбор ранее не выбранного пакета libjim0.76:amd64.
(Чтение базы данных … на данный момент установлено 117044 файла и каталога.)
Подготовка к распаковке …/libjim0.76_0.76-2_amd64.deb …
Распаковывается libjim0.76:amd64 (0.76-2) …
Выбор ранее не выбранного пакета usb-modeswitch-data.
Подготовка к распаковке …/usb-modeswitch-data_20170120-1_all.deb …
Распаковывается usb-modeswitch-data (20170120-1) …
Выбор ранее не выбранного пакета usb-modeswitch.
Подготовка к распаковке …/usb-modeswitch_2.5.0+repack0-1_amd64.deb …
Распаковывается usb-modeswitch (2.5.0+repack0-1) …
Настраивается пакет libjim0.76:amd64 (0.76-2) …
Настраивается пакет usb-modeswitch-data (20170120-1) …
Настраивается пакет usb-modeswitch (2.5.0+repack0-1) …
Обрабатываются триггеры для libc-bin (2.24-11+deb9u3) …
Обрабатываются триггеры для man-db (2.7.6.1-2) …
[17:11:41] admpc@astra:~$ lsb_release -a
No LSB modules are available.
Distributor ID: AstraLinuxCE
Description: Astra Linux CE 2.12.13 (Orel)
Release: 2.12.13
Codename: orel
[17:12:01] admpc@astra:~$

У автора прошу прощения за флуд. Но по опыта в таких вопросах на форуме мало кто поможет. Лучше обращаться в техподдержку, но она платная. Подробней в "Положении о техподдержке" https://astralinux.ru/support/
Я должен был попробовать)
 

oko

New member
Сообщения
1 257
#11
to suspect
Аналогично вот этому не пробовали? Методика сборки в Ubuntu несколько отличается от методики Debian...
 

suspect

New member
Сообщения
13
#12
to suspect
Аналогично вот этому не пробовали? Методика сборки в Ubuntu несколько отличается от методики Debian...
да, пробовал. Директива in-target работает норм. Проблема в том, что мне нужно сначала пульнуть с, допустим, корня iso-образа несколько дебников и скриптов в целевую ОС, а потом их уже оттуда запустить с помощью in-target. А я не могу их прокинуть в целевую ОС, проблема в том, что в убунте (и в дебиане тоже, судя по многочисленным мануалам) смонтированный исошник в момент установки называется /cdrom, я просто указываю в директиве late_command: d-i preseed/late_command string cp -a /cdrom/packages /target/root и нужная мне директория копируется в целевую ОС. А в астре такого не происходит, не знает она такого пути.
 

oko

New member
Сообщения
1 257
#13
to suspect
/dev/cdrom? :)
Если без шуток, то на этапе первого запуска установленной ОС с использованием CD-ROM или вообще сетевого репозитория не подходит?
Или вам нужен автономный автоматический инсталлятор типа "воткнул CD, нажал, все поставилось само без сетей, преферанса и куртизанок"?
 

suspect

New member
Сообщения
13
#14
to suspect
/dev/cdrom? :)
Если без шуток, то на этапе первого запуска установленной ОС с использованием CD-ROM или вообще сетевого репозитория не подходит?
Или вам нужен автономный автоматический инсталлятор типа "воткнул CD, нажал, все поставилось само без сетей, преферанса и куртизанок"?
да, именно так, нужен полностью автоматизированный инсталлятор без использования интернета) чтобы прям все само устанавливалось и запускалось, чтобы вообще ничего не делать руками) на убунте реализовал это.
 

suspect

New member
Сообщения
13
#15
to suspect
/dev/cdrom? :)
Если без шуток, то на этапе первого запуска установленной ОС с использованием CD-ROM или вообще сетевого репозитория не подходит?
Или вам нужен автономный автоматический инсталлятор типа "воткнул CD, нажал, все поставилось само без сетей, преферанса и куртизанок"?
пробовал все варианты, которые приходили в голову, также и /dev/cdrom. ничего не прокатывает.
 

suspect

New member
Сообщения
13
#16
да, и еще один интересный нюанс:

у меня на iso-образе есть файл /isolinux/txt.cfg
в нем строкой file=/cdrom/preseed/oem.seed прописывается, где лежит oem.seed-файл с ответами на вопросы установщика для автоматизированной установки. и его, значит, он читает вполне нормально.
а вот когда запускается late_command из этого же oem.seed, он найти путь /cdrom/packages уже не может.
не понимаю.
 

ASnixs

New member
Сообщения
1
#17
Такая же ситуация.
В файле preseed.conf
в разделе d-i preseed/late_command указал затянуть в целевую систему файлы и выполнить их установку, но при установке вылетело с ошибкой.
После нескольких дней ковыряния и различных пересборок не удалось это сделать
Тогда, в процессе установки вышел в консоль и оказалось что на этапе late_command, установочный диск уже отмонтирован. Собственно, поэтому и не получится скопировать с него необходимые файлы

Там есть еще скрипт, который запускается перед late_command, называется типа astra_extra_postinst . Но в дистрибутиве я его пока не нашел. Видимо он и отмонтирует cdrom.

Проблему решил сборкой собственного пакета deb и пересборкой метаданных репозитория.
А late_command можно использовать только для выполенния каких-нибудь действий, но не копирования файлов с cdrom.
 

kate

New member
Сообщения
6
#18
В процессе сетевой установки так же как у вас возникла ошибка 127. Зашла в терминал #2 и смогла перекинуть файл командой wget по ftp.
wget ftp://192.168../astra/postinst.sh
Попробую сделать это через preseed
 

kate

New member
Сообщения
6
#19
Итак, получилось таки скопировать с двд диска в таргет систему файлы на этапе late_command. Диск отмонтируется перед этим этапом, но привод обнаружился по пути /dev/cdrom. Делаю прям в команде mount и копирую всё что мне нужно. Пробовала только на одном компе, на разном железе надо посмотреть. Вот строка:
d-i preseed/late_command string mount /dev/cdrom /cdrom; cp -R /cdrom/extra /target/root; chmod +x /target/root/extra/postinst.sh; /bin/sh /target/root/extra/postinst.sh; umount /cdrom
 

banzay242

New member
Сообщения
43
#20
Я должен был попробовать)
копайте в сторону свой livecd или кастромация ubuntu. Я переделываю в chroot по старинке. 8 скриптов сделал для обработки минт, и столько же под Росу(там упаковка немного другая), недавно толко lmde перебирал, на debian, скрипты пришлось подправить, в ubuntu папка casper а в debian live.