VirtualBox에서 종료 이벤트 워크플로를 추적하는 방법

VirtualBox에서 종료 이벤트 워크플로를 추적하는 방법

안녕하세요, debian 9virtualbox를 이용해서 설치했습니다. ACPI를 지원하도록 커널을 다음과 같이 사용자 정의했습니다.

Power management and ACPI options  --->
    [*] ACPI (Advanced Configuration and Power Interface) Support  --->
        <M>   Button

옵션이 있는 virtualbox 창의 닫기 버튼을 클릭하면 send the shutdown signal아무 일도 일어나지 않습니다

button커널 모듈이 연결되어 있는지 확인했습니다 .

# lsmod | grep button
button                  5539  0

Linux debian 4.9.0-1-amd64 #1 SMP Debian 4.9.2-2 (2017-01-12) x86_64 GNU/Linux데비안의 공식 커널 과 send the shutdown signal옵션 으로 부팅하면 모든 것이 잘 작동합니다. systemd는 poweroff명령처럼 종료를 시작합니다.

저도 수정하려고 했는데/etc/systemd/logind.conf

HandlePowerKey=ignore

그런 다음 재부팅하고 종료 신호를 다시 보냈지만 예상대로 무시되었습니다.

acpid이벤트를 처리하기 위해 실행 중인 것이 없습니다 . logind.conf이벤트를 변경하면 systemd가 적용되므로 이제 신호는 systemd에 의해서만 처리됩니다.

사용자 정의가 종료 신호를 인식하도록 하려면 어떻게 해야 합니까? ( button이제 모듈만 컴파일되고 로드됩니다.) 다른 커널 옵션이 필요합니까?

답변1

이제 이해합니다. 시스템 소스 코드를 추적한 후에는 src/login/logind-button.c 다음과 관련이 있는 것 같습니다./dev/input/

그래서 커널 구성에서 이를 활성화했고 이제는 정상적으로 종료됩니다.

Device Drivers  --->
    Input device support  --->
         <M>   Event interface

관련 정보