Я хотел бы иметь возможность просматривать сценарии / триггеры, связанные с пакетом, подлежащим обновлению, чтобы я мог, например, сказать, приведет ли это к перезапуску веб-сервера. Я не могу найти способ показать мне это (или apt / dpkg); лучшее, что я могу получить, - это содержимое (файлы). Есть ли какая-то комбинация переключателей симуляции / подробного / содержимого, которую я пропустил, которая покажет это?
Кроме того, если в результате пакета что-то происходит - например, перезапуск службы - чего я не хочу сейчас делать, есть ли способ установить пакет, не выполняя некоторые или все сценарии?
Вы можете распечатать контрольный файл и некоторую другую информацию с помощью dpkg -I package.deb
, или используйте dpkg -e package.deb
для извлечения только файлов с управляющей информацией.
Кроме того, вы можете выполнить пробный запуск, чтобы узнать, что dpkg будет делать с --dry-run
:
dpkg --dry-run -i package.deb
Нет, я не знаю, как это сделать с помощью aptitude.
Вы можете посмотреть сценарии напрямую; сценарии, запускаемые во время обновления, содержатся в пакете. Распакуйте deb с помощью ar:
ar -x package.deb
Тогда загляни в control.tar.gz
, он содержит скрипты.
Также есть --debug
вариант для dpkg
, как в sudo dpkg --debug=72200 -i package.deb
Для подробного вывода доступно несколько вариантов, и их можно комбинировать.
Вы можете увидеть все доступные варианты, запустив: dpkg --debug=help
.
pi@kaldi:~ $ dpkg --debug=help
dpkg debugging option, --debug=<octal> or -D<octal>:
Number Ref. in source Description
1 general Generally helpful progress information
2 scripts Invocation and status of maintainer scripts
10 eachfile Output for each file processed
100 eachfiledetail Lots of output for each file processed
20 conff Output for each configuration file
200 conffdetail Lots of output for each configuration file
40 depcon Dependencies and conflicts
400 depcondetail Lots of dependencies/conflicts output
10000 triggers Trigger activation and processing
20000 triggersdetail Lots of output regarding triggers
40000 triggersstupid Silly amounts of output regarding triggers
1000 veryverbose Lots of drivel about eg the dpkg/info directory
2000 stupidlyverbose Insane amounts of drivel
Debugging options can be mixed using bitwise-or.
Note that the meanings and values are subject to change.
Нет, вы не можете запустить часть сценария сопровождающего, для этого нет никаких ловушек.
Вы можете увидеть, что будет делать скрипт, только проверив его вручную - опять же, никакой «пробный прогон» не может сказать вам точно, что он будет, а что не будет, только «Я запущу postinst с этими аргументами».
Это причины, по которым у нас есть промежуточные и тестовые среды.