우분투 16.04 전력관리 모듈 TLP 설치 노트북 PC 발열 낮추기

우분투 순정 설치 상태에선 컴퓨터에 열이 많이 납니다(발열=전력소모!). 윈도우보다 전력관리가 잘 안되는 것 같아요.

TLP라는 전력관리 모듈을 설치했더니 발열이 사라졌습니다.
TLP 소개 페이지는 ▼여기입니다.
https://linrunner.de/tlp/
세부 설치 가이드도 위 페이지를 참고해 주시고요,
저는 이렇게 설치했습니다.

우선 터미널 창을 띄워요(Ctrl+Alt+T).

sudo add-apt-repository ppa:linrunner/tlp
라고 입력하여 PPA를 추가해 줍니다.

 

sudo apt-get update
라고 쳐서 (PPA를 포함한) 패키지 목록을 업데이트 해줘요.

 

sudo apt-get install tlp tlp-rdw

위처럼 입력하여 TLP를 설치해줍니다. 설치가 끝나더라도 TLP 서비스가 자동으로 실행되지는 않습니다.

 

—————————————————————————

 

아래 사항은 옵션인데요, TLP는 기본적으로 WOL(Wake On Lan)을 OFF 상태로 유지합니다. 저는 외부에서 우분투 PC를 켜고 제어하는 것을 중요시하므로, WOL을 ON으로 바꿀 겁니다.(WOL을 ON으로 해두면 컴퓨터가 꺼져있더라도 랜포트가 전기를 미량 소모합니다. 그래서 전력관리 측면만 보면 WOL을 끄는 게 유리합니다.)

 

GEdit를 루트권한으로 실행시키고(터미널에서 sudo gedit 입력), /etc/default/tlp 파일을 엽니다.

 Ctrl+F 누르고 wol 이라고 넣어보면 WOL_DISABLE=Y 라는 부분이 나올 겁니다. WOL_DISABLE=N 으로 바꿔주고 저장. 지에디트를 종료합니다.

 

—————————————————————————

▲ 이제 터미널 창에서 sudo tlp start 라고 입력합니다. TLP가 실행될 것이고, 이제부터 부팅시 자동으로 실행될 겁니다.

 

——————————————–

 

★ 추가 : 오류 증상 경험과 해결 ★

TLP가 정상 작동하면 터미널 창에 “sudo service –status-all” 라고 쳤을 때 “[ + ]  tlp” 라고 뜹니다. 터미널 창에 “sudo service tlp status (또는 sudo /etc/init.d/tlp status )” 라고 쳐보면 아래처럼 나오고요.

 

● tlp.service – TLP system startup/shutdown
   Loaded: loaded (/lib/systemd/system/tlp.service; enabled; vendor preset: enab
   Active: active (exited) since Mon 2018-09-24 20:12:11 KST; 1h 28min ago
     Docs: http://linrunner.de/tlp
 Main PID: 7223 (code=exited, status=0/SUCCESS)
    Tasks: 0 (limit: 4915)
   CGroup: /system.slice/tlp.service

 

그런데 우분투 16.04에서 18.04로 업그레이드한 일부 PC에서는 터미널 창에 “sudo service –status-all” 라고 쳤을 때 “[ – ]  tlp” 처럼 나오더군요. “sudo service tlp status” 라고 쳐보면 아래처럼 나오고요.

 

● tlp.service – TLP system startup/shutdown
   Loaded: loaded (/lib/systemd/system/tlp.service; enabled; vendor preset: enab
   Active: inactive (dead)
     Docs: http://linrunner.de/tlp

 

뭔가 잘못된 듯해서 TLP 제거(purge) 및 재설치해봐도 정상화되지 않았고, tlp 설치할 때 제안하는 패키지들(tp-smapi-dkms acpi-call-dkms smartmontools)을 추가 설치해도 마찬가지였습니다.

부팅할 때마다 터미널 창에 “sudo service tlp start” 라고 쳐서 “[ + ]  tlp” 상태로 바꿔놓는 게 번거롭게 느껴져서 시작프로그램 경로가 어디인지 찾아봤습니다.
/lib/systemd/system/tlp.service 경로에 시작프로그램 원본 파일이 있고 심볼릭링크로 /etc/systemd/system/multi-user.target.wants/tlp.service 경로에 연결되어 있더군요. systemd에 “sudo service tlp start” 명령어를 등록하면 될 것 같습니다. ^^

터미널 창에 아래의 명령어를 입력해서 tlp2.service 파일을 생성했습니다.
sudo nano /etc/systemd/system/tlp2.service

그리고 아래처럼 내용을 넣고…

 

[Unit]
Description=TLP Additional Start after tlp.service run
After=network.target

[Service]
ExecStart=/bin/bash service tlp start

[Install]
WantedBy=multi-user.target

 

Ctrl+X 눌러서 저장+빠져나왔습니다. 그리고 터미널 창에 아래처럼 쳐서 tlp2 서비스를 실행.

 

sudo systemctl daemon-reload
sudo systemctl enable tlp2
sudo systemctl start tlp2

 

이제 터미널 창에 sudo service –status-all 이나 sudo service tlp status 등을 입력해서 tlp 서비스의 상태를 살펴봤더니 작동이 되더군요. 재부팅 후에도 작동하고.

 

나중에 tlp2 서비스를 중지+없애고 싶으면 터미널 창에 아래처럼 입력하면 될 거고요.

sudo systemctl stop tlp2
sudo systemctl disable tlp2

 

임시 방편이고, 제가 구성한 tl2.service 파일이 작성 규칙을 지켰는지도 모르겠습니다. 지도해주시면 감사히 받아들이고 포스팅에 반영하겠습니다.

CC BY-NC-ND 4.0