PM: 최대 절전 모드 이미지가 없거나 로드할 수 없습니다.

PM: 최대 절전 모드 이미지가 없거나 로드할 수 없습니다.

를 사용하여 최대 절전 모드로 전환한 후에 systemctl hibernate는 시스템이 종료된 것처럼 정상적으로 부팅됩니다. 커널 라인에 이력서 매개변수가 있고 mkinitcpio.conf에 이력서 후크가 있습니다.

관련 커널 메시지는 다음과 같습니다.

$ dmesg | grep -i swap
[    0.000000] Command line: initrd=\initramfs-linux.img root=/dev/sda2 rw resume=/dev/sda4
[    0.000000] Kernel command line: initrd=\initramfs-linux.img root=/dev/sda2 rw resume=/dev/sda4
[    0.350295] PM: Checking hibernation image partition /dev/sda4
[    8.776686] Adding 8191996k swap on /dev/sda4.  Priority:-1 extents:1 across:8191996k FS
$ dmesg | grep -i hibern
[    0.350295] PM: Checking hibernation image partition /dev/sda4
[    0.350301] PM: Hibernation image not present or could not be loaded.

그렇다면 남은 유일한 가능성은systemctl 디스크에 쓰지 않았습니다. 실제로 명령을 실행하면 화면이 처음 몇 초 동안 공백으로 바뀌었다가 터미널을 다시 볼 수 있으며 마지막에는 자체적으로 종료됩니다.

나는 pm-utils가 systemd와 잘 작동하지 않는다는 것을 읽었기 때문에 그것들로 전환하고 싶지 않습니다. 어떤 제안이 있으십니까?

감사해요!

답변1

@AdrianRatnapala의 의견을 자세히 설명하려면 다음을 수행해야 합니다.

  1. 스왑 파티션의 uuid를 찾으십시오. 파티션이 sdb3이라고 가정하면

    $ ls -l /dev/disk/by-uuid/ | grep sdb3
    lrwxrwxrwx 1 root root 10 окт.   9 08:59 1dd7e123-1f82-45f0-a202-0ff3ea6f081a -> ../../sdb3
    
  2. 을 열고 /etc/default/grub로 시작하는 줄을 찾습니다 GRUB_CMDLINE_LINUX_DEFAULT=". 따옴표 사이에 추가하세요 resume=/dev/disk/by-uuid/your-swap-uuid. 예로서:

    GRUB_CMDLINE_LINUX_DEFAULT="quiet splash resume=/dev/disk/by-uuid/1dd7e123-1f82-45f0-a202-0ff3ea6f081a"
    
  3. 루트로 실행update-grub
  4. 새로운 커널 명령줄을 사용하려면 재부팅이 필요합니다.

답변2

이 문제에 대해 다른 사람들에게 도움이 될 수 있기 때문에 여기서 내 성공을 공유하고 싶습니다. 세부 사항을 건너뛰고 싶은 분들을 위한 요점: /etc/default/grub 파일에서 GRUB_CMDLINE_LINUX_DEFAULT 줄을 변경하고 update-grub을 수행한 후 최대 절전 모드를 시도하기 전에 머신을 완전히 종료하고 다시 시작하세요.

세부 정보: /etc/default/grub의 GRUB_CMDLINE_LINUX_DEFAULT 줄에 이력서=UUID= 매개변수를 추가하라는 위의 조언에 따라 Lenovo ThinkPad T480(이중 부팅 Debian 9 및 Windows)의 Linux 설치에서 최대 절전 모드를 성공적으로 구현했습니다. 그러나 처음에는 작동하지 않았습니다. 매개변수를 추가하고 update-grub을 실행한 후 최대 절전 모드(systemctl-hibernate)를 시도했습니다. 시스템이 최대 절전 모드인 것처럼 보였지만 전원을 다시 켜면 이전 화면 이미지가 나타나고 시스템이 일반적으로 초기 시작 시 표시되는 로그인 화면으로 들어가기 전에 몇 초 동안 유지되었습니다. 최대 절전 모드 이전에 있던 모든 작업이 사라졌습니다. 마침내 변경된 GRUB_CMDLINE_LINUX_DEFAULT 행이 커널에 전달되지 않았음을 확인했습니다(grep 'command line' syslog). 더 많은 노력 끝에 완전히 종료하고 다시 시작하면 변경된 줄이 전달된다는 사실을 발견했습니다(grep 'command line' syslog). 그 후 systemctl hibernate는 이전과 같이 최대 절전 모드를 유도했지만 전원을 켤 때 머신의 이전 상태가 올바르게 복원되었습니다.

관련 정보