我有一台安装了 Gentoo Linux 的 Thinkpad T400。挂起到 RAM 的作用就像一个魅力。
但是,暂停到磁盘不起作用:如果我暂停,笔记本电脑会关闭电源并访问硬盘大约 30 秒。但是,如果我重新打开它,它只会正常启动,但不会恢复到之前的状态。
这是/var/log/pm-suspend.log
暂停之前的情况:
Sun Oct 21 14:16:44 CEST 2012: Finished.
Initial commandline parameters:
Blacklisting 01grub.
Sun Oct 21 15:26:06 CEST 2012: Running hooks for hibernate.
Running hook /usr/lib64/pm-utils/sleep.d/00logging hibernate hibernate:
Linux rgs-lenovo 3.4.9-gentoo #1 SMP Fri Aug 31 18:55:03 CEST 2012 x86_64 Intel(R) Core(TM)2 Duo CPU P8600 @ 2.40GHz GenuineIntel GNU/Linux
Module Size Used by
cdc_wdm 8704 0
cdc_acm 14890 0
rfcomm 21490 0
bnep 9782 0
btusb 10904 0
bluetooth 162465 5 rfcomm,bnep,btusb
mmc_block 16408 0
nls_iso8859_1 4521 0
nls_cp850 5362 0
vfat 8384 0
fat 45316 1 vfat
twofish_x86_64_3way 19478 0
lrw 3622 1 twofish_x86_64_3way
twofish_x86_64 5539 1 twofish_x86_64_3way
twofish_common 14649 2 twofish_x86_64_3way,twofish_x86_64
aes_x86_64 7768 0
aes_generic 26983 1 aes_x86_64
xts 2912 1 twofish_x86_64_3way
gf128mul 7431 2 lrw,xts
dm_crypt 13973 0
dm_mod 62853 1 dm_crypt
rndis_host 6143 0
cdc_ether 4584 1 rndis_host
usbnet 17584 2 rndis_host,cdc_ether
arc4 1345 2
sdhci_pci 10056 0
sdhci 20883 1 sdhci_pci
firewire_ohci 27077 0
mmc_core 82856 3 mmc_block,sdhci_pci,sdhci
firewire_core 49742 1 firewire_ohci
crc_itu_t 1635 1 firewire_core
iwlwifi 233406 0
snd_hda_codec_conexant 43770 1
mac80211 338064 1 iwlwifi
cfg80211 156724 2 iwlwifi,mac80211
snd_hda_intel 22760 4
snd_hda_codec 88731 2 snd_hda_codec_conexant,snd_hda_intel
snd_pcm 73911 3 snd_hda_intel,snd_hda_codec
snd_timer 18324 2 snd_pcm
snd_page_alloc 7332 2 snd_hda_intel,snd_pcm
loop 15063 0
vboxnetflt 12915 0
vboxdrv 1759366 1 vboxnetflt
fuse 60817 1
thinkpad_acpi 64233 0
snd 59641 12 snd_hda_codec_conexant,snd_hda_intel,snd_hda_codec,snd_pcm,snd_timer,thinkpad_acpi
total used free shared buffers cached
Mem: 8062552 6417912 1644640 0 427824 4174720
-/+ buffers/cache: 1815368 6247184
Swap: 12582908 0 12582908
/usr/lib64/pm-utils/sleep.d/00logging hibernate hibernate: success.
Running hook /usr/lib64/pm-utils/sleep.d/00powersave hibernate hibernate:
Blacklisting 01grub.
/usr/lib64/pm-utils/sleep.d/00powersave hibernate hibernate: success.
Running hook /usr/lib64/pm-utils/sleep.d/01grub hibernate hibernate:
/usr/lib64/pm-utils/sleep.d/01grub hibernate hibernate: success.
Running hook /usr/lib64/pm-utils/sleep.d/49bluetooth hibernate hibernate:
/usr/lib64/pm-utils/sleep.d/49bluetooth hibernate hibernate: success.
Running hook /usr/lib64/pm-utils/sleep.d/75modules hibernate hibernate:
/usr/lib64/pm-utils/sleep.d/75modules hibernate hibernate: success.
Running hook /usr/lib64/pm-utils/sleep.d/90clock hibernate hibernate:
/usr/lib64/pm-utils/sleep.d/90clock hibernate hibernate: success.
Running hook /usr/lib64/pm-utils/sleep.d/94cpufreq hibernate hibernate:
/usr/lib64/pm-utils/sleep.d/94cpufreq hibernate hibernate: success.
Running hook /usr/lib64/pm-utils/sleep.d/95led hibernate hibernate:
/usr/lib64/pm-utils/sleep.d/95led hibernate hibernate: success.
Running hook /usr/lib64/pm-utils/sleep.d/98video-quirk-db-handler hibernate hibernate:
Kernel modesetting video driver detected, not using quirks.
/usr/lib64/pm-utils/sleep.d/98video-quirk-db-handler hibernate hibernate: success.
Running hook /usr/lib64/pm-utils/sleep.d/99video hibernate hibernate:
/usr/lib64/pm-utils/sleep.d/99video hibernate hibernate: success.
Sun Oct 21 15:26:08 CEST 2012: performing hibernate
在/var/log/syslog
我发现以下行:
Oct 21 15:27:10 lenovo kernel: PM: Hibernation image not present or could not be loaded.
这是我的 grub 配置:
title Gentoo Linux
root (hd0,0)
kernel /3.4.9-gentoo root=/dev/sda3 rootfstype=ext4 resume=swap:/dev/sda2 i915.modeset=1 fan_control=1
/dev/sda2
是我的交换分区。
可能出什么问题了?
答案1
我通过更改 grub 配置解决了这个问题。参数swap:
中的不需要resume
。我的配置现在看起来像这样:
title Gentoo Linux
root (hd0,0)
kernel /3.4.9-gentoo root=/dev/sda3 rootfstype=ext4 resume=/dev/sda2 i915.modeset=1 fan_control=1