Я создал a .deb
использование пакета equivs-build
команда и находящие деньги control
, preinst
, postinst
, и т.д. Я заметил это version
может также быть упомянут в control
файл. Теперь я хочу создать a .deb
пакет с обновленным исходным кодом и я хочу позволить пользователю обновить пакет, если он уже установлен (и имеет предыдущую версию, конечно), поскольку я не буду изменяться conf
связанные файлы, и т.д. Одним путем я могу думать, должен записать сценарий, который сначала проверит на установленную версию и примет меры соответственно (т.е., если установлено, просто обновите исходный код, миграции базы данных, и т.д. и в противном случае установите использование пакета dpkg -i <package-name>
). Я задавался вопросом, был ли способ достигнуть использования dpkg
только (что-то как dpkg upgrade <package-name>
) который обработает установку или-градацию как требуется.
Команда, которую Вы ищете, действительно dpkg -i
. Это установит, если не установленный и обновят, если уже установлено. dpkg
не изменяет измененные пользователями конфигурационные файлы. Это спросит Вас, что сделать о таких случаях (сохраните модификации, отбросьте модификации, и т.д.), и это будет всегда сохранять резервное копирование того, что Вы отбрасываете (новый файл конфигурации, предоставленный пакетом или старым измененным пользователями файлом). Любой файл, установленный пакетом в /etc/
, рассматривают dpkg
как конфигурационный файл.