며칠/몇 달 동안 나는 내 노트북(Toshiba Satellite L50-B-1K6)에서 메모리 사용량이 많은 동안 최대 절전 모드에 대한 솔루션을 찾으려고 노력해 왔습니다. 내 데스크톱 컴퓨터에서도 비슷한 문제가 발생합니다.
내 하드웨어 구성은 다음과 같습니다
$ inxi -Fx
Machine: System: TOSHIBA (portable) product: SATELLITE L50-B v: PSKTCE-02G009Y4
Mobo: Type2 - Board Vendor Name1 model: Type2 - Board Product Name1 v: Type2 - Board Version
Bios: INSYDE v: 1.70 date: 08/14/2014
Battery BAT1: charge: 7.2 Wh 29.5% condition: 24.2/30.0 Wh (81%) model: LGC PA5186U-1B status: Discharging
CPU: Dual core Intel Core i5-4210U (-HT-MCP-) cache: 3072 KB
flags: (lm nx sse sse2 sse3 sse4_1 sse4_2 ssse3 vmx) bmips: 9580
clock speeds: max: 2700 MHz 1: 1697 MHz 2: 1615 MHz 3: 1279 MHz 4: 1700 MHz
Graphics: Card-1: Intel Haswell-ULT Integrated Graphics Controller bus-ID: 00:02.0
Card-2: Advanced Micro Devices [AMD/ATI] Jet PRO [Radeon R5 M230] bus-ID: 09:00.0
Display Server: X.Org 1.17.4 driver: intel Resolution: [email protected]
GLX Renderer: Mesa DRI Intel Haswell Mobile GLX Version: 3.0 Mesa 12.0.1 Direct Rendering: Yes
Audio: Card-1 Intel 8 Series HD Audio Controller driver: snd_hda_intel bus-ID: 00:1b.0
Card-2 Intel Haswell-ULT HD Audio Controller driver: snd_hda_intel bus-ID: 00:03.0
Sound: Advanced Linux Sound Architecture v: k4.7.2-1-MANJARO
Network: Card-1: Intel Wireless 3160 driver: iwlwifi bus-ID: 07:00.0
IF: wlp7s0 state: up mac: 30:3a:64:ef:d2:29
Card-2: Realtek RTL8111/8168/8411 PCI Express Gigabit Ethernet Controller port: 4000 bus-ID: 08:00.0
IF: N/A state: N/A speed: N/A duplex: N/A mac: N/A
Drives: HDD Total Size: 1000.2GB (3.8% used) ID-1: /dev/sda model: HGST_HTS541010A9 size: 1000.2GB
Partition: ID-1: / size: 19G used: 13G (69%) fs: ext4 dev: /dev/sda11
ID-2: /home size: 29G used: 15G (54%) fs: ext4 dev: /dev/sda12
ID-3: swap-1 size: 9.01GB used: 0.00GB (0%) fs: swap dev: /dev/sda1
Sensors: System Temperatures: cpu: 46.0C mobo: N/A gpu: N/A
Fan Speeds (in rpm): cpu: N/A
사용 가능한 RAM 메모리는 4GB입니다. SWAP 파티션은 9GB입니다.
최대 절전 모드는 주로 하드웨어 구성(물론 내 실수는 Toshiba를 구입한 것임)과 커널 버전에 따라 달라집니다.
내 현재 커널 버전은 다음과 같습니다
4.7.2.1
이전 커널 버전(4.1, 4.4, 4.6, ...)에서도 비슷한 문제가 있습니다.
다양한 최대 절전 모드 방법을 시도했지만 소용이 없었습니다.
$ systemctl hibernate
$ sudo sh -c "echo disk > /sys/power/state"
$ pm-hibernate
$ s2disk
- TuxOnIce kernel
문제는 항상 비슷합니다. RAM 사용량이 500MB(12.5%)로 낮으면 최대 절전 모드가 성공합니다.
그러나 Firefox(또는 RAM 사용량이 높은 다른 프로그램(RAM의 50%))를 실행하고 최대 절전 모드로 전환하려고 하면 다음과 같은 문제가 발생합니다.
복구(해동) 중에 스왑 공간이 축적되고 최대 절전 모드가 3~7회 후에 결국 실패합니다.
시스템이 성공적으로 최대 절전 모드로 전환되지만 노트북을 켜려고 하면 다시 시작(해동)되는 대신 다시 시작됩니다.
요약: 최대 절전 모드를 수행할 때마다 스왑 공간 사용량이 증가하고 컴퓨터 속도가 느려지고 최대 절전 모드가 결국 실패하게 됩니다. 다시 시작하는 대신 재부팅됩니다.
이 문제는 다음에서도 찾을 수 있습니다.
https://ubuntuforums.org/showthread.php?t=1796851
https://www.kubuntuforums.net/showthread.php?59209-swap-gradually-filling-after-hibernate-resume
나는 이 문제에 대한 해결 방법을 게시할 것이며 여러분이 이 문제를 어떻게 해결했는지에 대한 조정 사항을 게시해 주시기를 바랍니다.
답변1
스왑이 누적되면 PC/노트북이 느려지고 최대 절전 모드를 위한 스왑 공간이 부족하여 최대 절전 모드가 결국 실패하게 됩니다.
따라서 해결책은 최대 절전 모드에서 돌아온 후 스왑 파티션을 수동으로 지우는 것입니다(https://ubuntuforums.org/showthread.php?t=1796851&p=11011907#post11011907).
~/.bashrc
이 문제를 처리하기 위해 내 기능을 추가했습니다 .
function nk-hibernate() {
sudo sh -c "echo disk > /sys/power/state"
# setsid i3lock -c 117864 # lock screen with tool of your choice
sudo swapoff -a
sudo swapon -a
}
경고 - swapoff
매우 느릴 수 있습니다!
스왑오프가 왜 그렇게 느린가요?
최대 절전 모드로 전환하려면 터미널을 열고 다음을 실행하면 됩니다.
$ nk-hibernate
최대 절전 모드에서 재개된 후 스왑 영역이 지워지고(swapoff) 다시 활성화되어(swapon) 다시 최대 절전 모드로 전환됩니다.
더 나은 솔루션을 아는 사람이 있으면 공유해 주세요.
편집하다: @sourcejedi가 언급했듯이 이 방법으로 문제가 완전히 해결되지는 않습니다. 잠시 후(최대 절전 모드 10회 이상) 노트북이 다시 시작되는 상황이 있었습니다. 최대 절전 모드에서 다시 시작한 후에만 시스템 속도가 향상됩니다.