Macbook이 깨어나는 데 20초가 걸립니다.

Macbook이 깨어나는 데 20초가 걸립니다.

Macbook Air의 Kubuntu 20.04는 일시 중지되지만 매번 깨어나는 데 너무 많은 시간(약 20초)이 걸립니다.

systemctl suspend동일한 동작을 유발 하는 경우 최대 절전 모드가 아닌 일반적인 일시 중지/절전 모드인 것 같습니다 .

달리고, 일어나서 달리고

journalctl -b --since "1min ago"

나는 얻다이것(Pastebin에서). 거기에는 최대 절전 모드에 대한 언급이 없습니다.

메모리와 스왑에 관해서는 RAM이 충분하다고 생각합니다.

~$ free -h
               total        used        free      shared  buff/cache   available
Mem:           3,8Gi       703Mi       1,7Gi       162Mi       1,4Gi       2,7Gi
Swap:          2,0Gi       440Mi       1,6Gi

답변1

짧은 답변:

22.04에서:

echo deep | sudo tee -a /sys/power/mem_sleep

위의 내용이 22.04에서 작동하지 않거나 22.10, 23.04 이상에서 발생하는 경우:

echo s2idle | sudo tee -a /sys/power/mem_sleep

커널 업데이트 후, 재부팅 후에도 솔루션 작동이 중지될 수 있으므로재부팅 시 필요한 명령이 포함된 스크립트를 실행할 수 있습니다..

첫 번째 부분은 약간 모순됩니다. 앞서 말했듯 deep이 항상 긴 웨이크업과 s2idle짧은 웨이크업을 트리거해야 하기 때문입니다.여기. 아마도 내 22.04에 뭔가 버그가 있었을 것입니다. 적어도 분명히 그 반대인 경우도 있었습니다.


긴 답변:

이 질문을 게시한 직후 나는 우분투포럼에서 작동하는 것처럼 보이는 해결책을 우연히 발견했습니다.여기, 이에 대한 답변으로 더 많은 조언을 드리며,여기.

이것이 어떻게 작동하는지 실제로 이해하지 못합니다. 버그가 관련되었을 수 있습니다. 해당 게시물에 따르면 해결책은 /sys/power/mem_sleep에서 로 s2idle전환 하는 것입니다 deep. 그 파일을 찾아보니 다음과 같은 한 줄이 포함되어 있었기 때문에 그것이 나에게는 불분명했습니다.

s2idle [deep]

의미하는 것은deep 이미 선택되었습니다(!!) — 위에서 말했듯이 반대 동작이 예상된다는 것은 말할 것도 없습니다. —

나는 그것에 대해 물어본 후에 명령이 무엇을 하는지 이해했습니다.여기.

초기 ubuntuforums 댓글에 지시된 대로 해당 파일을 변경하려고 시도하지는 않았지만 다음 명령을 사용했습니다(두 번째 댓글을 기반으로 함).

echo deep | sudo tee -a /sys/power/mem_sleep

그 파일을 다시 보면 변경되지 않은 것처럼 보였습니다. 다시 시작해도 여전히 남아 있었지만 s2idle [deep]그 시점에서는일시정지 해제가 즉각적으로 이루어졌습니다.! (내가 아는 한, 회고적으로 말했듯이 예상했던 것과 반대였습니다. deep긴 잠에서 깨어나야 함을 의미해야 합니다!)

해당 명령으로 파일이 변경되지 않은 것 같지만무엇변경되었습니다 - 해당 파일과 관련이 있는지 여부.

[s2idle] deep해당 명령을 사용하여 이를 변경하면 echo s2idle | sudo tee -a /sys/power/mem_sleep(링크된 질문과 관련된 의견에서 논의된 것처럼 이를 조금 조사하기 위해) 20초의 긴 깨어남 문제가 발생했습니다.~ 아니다다시 나타납니다.

어쩌면 내가 추적할 수 없는 버그가 작용했을 수도 있습니다.

일부 커널 업데이트 후 초기 문제가 다시 나타나 동일한 방식으로 수정되었습니다. (실제로 파일은 /sys/power/mem_sleep이미 명령이 실행될 것으로 예상되는 형식이었지만 그럼에도 불구하고 후자가 필요합니다.)


업데이트(2022년 10월 24일):

새 업데이트 후 위의 솔루션은 더 이상 작동하지 않지만 반대 솔루션은 작동했습니다 echo s2idle | sudo tee -a /sys/power/mem_sleep.반대되는내 소식통이 나에게 무엇을 하라고 지시했는지.

그 순간에는 그것이 이상해 보였지만 이제는 실제로 이것이 예상된 동작이었다는 것을 이해합니다. 이전에 일어난 일은 이상하고 버그가 많았으며 새 업데이트에서 이를 수정했습니다. s2idle빠른 기상을 입증했다고 합니다.

"일반" 22.10 릴리스로 업데이트한 후 문제가 한동안 해결된 것처럼 보였지만 파일 /sys/power/mem_sleepdeep. 그러나 20초 깨우기 지연 문제가 다시 나타났고 업데이트 2에서 위에서 언급한 대로 수정되었습니다. 쿠분투 22.10을 새로 설치한 후 다시 확인되었습니다. 한 달 동안 문제를 참은 후(이 문제가 수정될 수 있는지 확인하기 위해) 그렇지 않은 경우) 첫 번째 명령은 도움이 되지 않았고 두 번째 명령은 도움이 되었습니다(2023년 2월).


fix_suspend이 문제가 계속(예: 23.04에서 - 업데이트 사이에 자주 다시 나타나기 때문에) 다음 형식의 스크립트 파일을 생성하는 Application Launcher에서 해당 명령을 실행하기 위한 보다 빠른 절차를 설정했습니다 .

#!/bin/sh
echo s2idle | sudo tee -a /sys/power/mem_sleep

그리고 다음 줄을 포함하는 파일 ~/.local/share/applications/Fix suspend.desktop(플라즈마에 맞게 조정됨):

Exec=pkexec env DISPLAY=$DISPLAY XAUTHORITY=$XAUTHORITY KDE_SESSION_VERSION=5 KDE_FULL_SESSION=true /path/to/fix_suspend

잠시 후 재부팅 후 솔루션 작동이 중단되었으므로 시작 부분의 짧은 답변에 표시된 대로 재부팅 시 스크립트를 실행해야 했습니다.

관련 정보