일시 중단이 실패하는 이유를 어떻게 알 수 있습니까?


17

무언가가 때때로 일시 중단 충돌을 일으 킵니다. 충돌이 발생하면 시스템이 검은 색 화면으로 멈추고 중단되지 않고 계속 켜져 있습니다. 시스템이 종료 될 때까지 전원 버튼을 누르고 있어야합니다.

대부분의 사람들과의 한 가지 설정 차이점은 랩톱 덮개를 닫을 때 일시 중단 할 수있는 옵션을 사용하지 않는다는 것입니다. 따라서 랩톱 덮개를 열고 닫는 동작이 없습니다. 일시 중단을 수동으로 누르는 것을 좋아합니다. 이 환경 설정이 원인 일 수 있습니까?

충돌이 오류를 표시하지 않기 때문에 충돌을 일으키는 원인을 어떻게 찾을 수 있습니까?

답변:



17

나는 당신이 언급하는 것이 그것과 관련이 있다고 생각하지 않습니다.

/var/log/pm-suspend.log힌트가 있는지 확인 하십시오.

이러한 문제는 일반적으로 일부 프로세스가 시스템 정지를 중지하기 때문에 발생합니다.

하다

dmesg -T|grep Freez -A4

다음 항목을 찾으십시오.

--
[sun mar  3 15:19:48 2013] Freezing user space processes ... 
[sun mar  3 15:20:08 2013] Freezing of tasks failed after 20.01 seconds (3 tasks refusing to freeze, wq_busy=0):
[sun mar  3 15:20:08 2013] mount.nfs       D e8631aa0     0  5518   5517 0x00800004
[sun mar  3 15:20:08 2013]  e8631b10 00000086 f7bc0e00 e8631aa0 c1053cb4 c1809020 c192ee00 c192ee00
--

타임 스탬프를 확인하여보고 된 문제 중 일시 중지 시도와 관련된 문제를 확인하십시오. 이 경우 mount.nfs문제가 발생한 것입니다.

이제 스크립트를에 넣으면 /etc/pm/sleep.d/일시 중지 및 재개시 스크립트가 실행됩니다. 파일 이름은 사용자 스크립트의 경우 주문 번호 00-49로 시작해야합니다 (자세한 내용은 참조 man pm-suspend).

스크립트는 다음과 같습니다

#!/bin/sh
(killall -9 mount.nfs; exit 0)

문제가 발생한 다른 프로세스에 대한 해당 항목이있는 경우

괄호이며 exit 0속임수입니다. 프로세스를 찾을 수 없으면 killall종료 코드 1로 종료되어 전체 일시 중단이 취소됩니다. 위의 코드는 killall0으로 끝나는 하위 셸에서 실행 됩니다.

문제가있는 경우 /var/log/pm-suspend.log스크립트를 일시 중지하고 실행하려는 시도가 기록되는지 확인하십시오 .


때로는 SIGUP에서만 작동하지 않기 때문에 (killall -9 mount.nfs; exit 0) 다른 줄이 필요했습니다.
Juanin

@ Juanin : -9더 낫 습니다. 왜 내가 -1처음에 있었는지 모르겠습니다 . 지금 편집되었습니다.
Carl

실제 네트워크 마운트 시간이 몇 퍼센트인지 궁금합니다 (여기 참조). 그것도 내 문제 였지만 sshfs대신에 nfs.
nobar

더 하나의 작업 거부하는 것보다이 경우이 버그에 관련이있을 수 동결 : bugs.launchpad.net/ubuntu/+source/systemd/+bug/1676912
mhellmeier

이 방법이 Ubuntu 18.04에서도 작동합니까?. ??
Ramesh-X
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.