как сделать сценарии, которые будут работать на установке способного пакета

Я создал сценарий удара, который будет хранить некоторые данные в mysql базу данных. Затем я создал deb файл с тем сценарием и сделал это доступным для установки путем создания локального способного репозитория.

Теперь, я могу установить тот пакет в любой системе (apt-get install packgename), но проблема, я должен вручную создать mysql базу данных для того сценария после каждой установки в каждой системе.

Есть ли любой путь так, чтобы я мог запустить скрипт для создания mysql база данных (поскольку это - одно требование времени для системы) во время самой установки. Я услышал что-то как post и pre сценарии, но не получение любой идеи погуглить. Могли Вы парни давать некоторые хорошие учебные руководства для этого?

3
задан 24 October 2014 в 15:00

1 ответ

Позволяет предполагают, что у Вас есть Ваш .deb - локальный файл (Если не можно загрузить его через apt-get download package).

Распаковывают Ваш deb файл:

ar x package.deb

Внутренняя часть текущая папка там теперь несколько файлов. data.tar.gz файл с содержанием пакета. Но мы заинтересованы файлом control.tar.gz, где пост - и предписания. Так, распакуйте файл управления в другой папке:

tar xfs control.tar.gz

Теперь, то, что Вы ищете, является сценарием, названным postinst, который выполняется после установки пакета. Если тот сценарий не существует, просто создайте его, с rwxr-xr-x полномочия (755). В том месте сценария Ваш дб создает команду и позволил сценарию закончиться exit 0 для успешной установки или exit 1 для отказа.

, Когда Вы сделали все свое имущество, tar файлы назад в файл управления. Используйте ту команду в папке для создания control.tar.gz файл.

tar -czf control.tar.gz *

Теперь, воссоздайте deb-пакет с теми новыми файлами с этой командой:

ar r package.deb debian-binary control.tar.gz data.tar.gz

Вот именно!

4
ответ дан 17 November 2019 в 20:22

Другие вопросы по тегам:

Похожие вопросы: