예를 들어 웹 서버가 다시 시작되는지 여부를 알 수 있도록 업그레이드로 인해 패키지와 관련된 스크립트 / 트리거를 볼 수 있기를 원합니다. 나에게 그것을 보여주는 적성 옵션을 찾을 수 없습니다 (또는 apt / dpkg). 내가 얻을 수있는 가장 좋은 것은 내용 (파일)입니다. 내가 놓친 시뮬레이션 / 세부 / 컨텐츠 스위치의 조합이 있습니까?
또한 패키지가 서비스 재시작과 같은 상황에서 지금 일어나고 싶지 않은 결과를 초래하는 경우 일부 또는 모든 스크립트를 실행하지 않고 패키지를 설치하는 방법이 있습니까?
답변
로 제어 파일 및 기타 정보를 인쇄 dpkg -I package.deb
하거나 dpkg -e package.deb
제어 정보 파일 만 추출 하는 데 사용할 수 있습니다.
또한, 드라이 런을 수행하여 dpkg의 기능을 확인할 수 있습니다 --dry-run
.
dpkg --dry-run -i package.deb
답변
아니요, 적성을 사용 하여이 작업을 수행 할 수있는 방법을 모르겠습니다.
스크립트를 직접 볼 수 있습니다. 업그레이드 중에 실행되는 스크립트는 패키지에 포함되어 있습니다. ar을 사용하여 deb의 압축을 풉니 다.
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.
답변
아니요, 관리자 스크립트의 일부를 실행할 수 없으며 그렇게 할 수있는 고리가 없습니다.
스크립트를 직접 검토하여 스크립트가 수행하는 작업 만 볼 수 있습니다. 다시 “드라 이런 (dry run)”은 정확히 무엇을 할 것인지 말하지 않을뿐 아니라 “이 인수로 postinst를 실행할 것”입니다.
이것이 우리가 준비 및 테스트 환경을 갖는 이유입니다.