Linux은 강력하고 효율적인 운영 체제이지만 높은 RAM 및 CPU 사용량은 성능을 저하시키고 응용 프로그램을 느리게 만들며 서버, 워크스테이션 또는 임베디드 시스템을 실행할 때 시스템 충돌을 일으킬 수도 있습니다. 리소스 사용량을 최적화하는 것이 원활한 작동을 위해 중요합니다.
이 안내서에서는 Linux에서 RAM 및 CPU 사용량을 줄이는 실용적인 방법을 살펴볼 것입니다. 모니터링 도구, 프로세스 관리, 커널 조정 및 시스템 최적화 기술을 다룰 것이며 시스템이 효율적으로 작동하도록 유지할 것입니다.
1. 리소스 소비가 많은 프로세스 식별
RAM 및 CPU 사용량을 줄이는 첫 번째 단계는 몇 가지 명령줄 도구를 사용하여 가장 많은 리소스를 소비하는 프로세스를 식별하는 것입니다:
a. top 명령어 사용
top 명령어는 CPU 및 메모리 사용량을 포함한 시스템 프로세스의 실시간 뷰를 제공합니다.
top
P
를 눌러 CPU 사용량에 따라 프로세스를 정렬합니다.M
을 눌러 메모리 사용량에 따라 프로세스를 정렬합니다.- 과도한 리소스를 소비하는 프로세스를 찾아서 그들의 프로세스 ID(PID)를 메모하세요.

b. htop 명령어 사용
htop은 top
보다 사용자 친화적인 인터페이스를 제공하는 대화형 프로세스 뷰어입니다.
Linux에 htop을 설치하려면 특정 Linux 배포본에 맞는 적절한 명령을 사용하십시오.
sudo apt install htop [On Debian, Ubuntu and Mint] sudo dnf install htop [On RHEL/CentOS/Fedora and Rocky/AlmaLinux] sudo emerge -a sys-apps/htop [On Gentoo Linux] sudo apk add htop [On Alpine Linux] sudo pacman -S htop [On Arch Linux] sudo zypper install htop [On OpenSUSE] sudo pkg install htop [On FreeBSD]
htop
을 실행하여 프로세스를 쉽게 확인하고 관리할 수 있습니다.
htop
F6
을 눌러 CPU 또는 메모리 사용량에 따라 프로세스를 정렬할 수 있습니다.F9
를 눌러 선택한 프로세스를 종료할 수 있습니다.

c. ps 명령 사용
ps 명령을 사용하여 프로세스와 리소스 사용량을 나열할 수 있습니다.
ps aux --sort=-%mem | head # Top memory-consuming processes ps aux --sort=-%cpu | head # Top CPU-consuming processes

2. 불필요한 프로세스 종료
리소스를 많이 사용하는 프로세스를 식별한 후, 해당 프로세스를 해제하기 위해 kill 명령 다음에 PID를 사용하여 종료할 수 있습니다.
kill PID
프로세스가 종료되지 않는 경우, -9
플래그를 사용하여 강제로 종료할 수 있습니다.
kill -9 PID
또는 pkill 명령을 사용하여 이름으로 프로세스를 종료할 수 있습니다.
pkill process_name
3. 시작 프로그램 최적화
부팅 시 자동으로 시작되는 많은 응용 프로그램과 서비스가 가치 있는 시스템 리소스를 사용합니다.
시작 프로그램을 관리하기 위해 다음을 수행하십시오:
a. systemctl 명령어 사용
systemctl 명령어를 사용하여 모든 활성화된 서비스를 나열하십시오.
systemctl list-unit-files --type=service | grep enabled
불필요한 서비스를 비활성화하십시오.
sudo systemctl disable service_name

b. GUI 도구 사용
만약 GNOME이나 KDE와 같은 데스크톱 환경을 사용 중이라면, 내장된 시작 프로그램 관리자를 사용하여 불필요한 프로그램을 비활성화하십시오.
4. 스왑 사용 최적화를 위한 Swappiness 값 조정
Swappiness는 시스템이 RAM 대신 스왑 공간을 사용하는 빈도를 제어합니다. 높은 Swappiness 값은 과도한 스왑으로 시스템이 느려지는 원인이 될 수 있습니다.
현재 Swappiness 값을 확인하려면 다음을 수행하십시오:
cat /proc/sys/vm/swappiness
기본 값은 일반적으로 60이지만, Swappiness 값을 줄이기 위해 /etc/sysctl.conf 파일을 편집해야 합니다.
sudo nano /etc/sysctl.conf
다음 라인을 추가하거나 수정하십시오.
vm.swappiness=10
파일을 저장하고 변경 사항을 적용하십시오.
sudo sysctl -p
5. 가벼운 데스크톱 대안 사용
무거운 데스크톱 환경과 응용 프로그램은 시스템 리소스를 과도하게 사용할 수 있으므로 가벼운 대안으로 전환하는 것을 고려하십시오:
a. 데스크톱 환경
XFCE, LXDE, 또는 MATE와 같은 가벼운 옵션으로 GNOME 또는 KDE를 대체하십시오.
b. 응용프로그램
다음과 같이 가벼운 응용프로그램을 사용하십시오:
- 텍스트 편집기: LibreOffice를 AbiWord나 Mousepad로 대체하십시오.
- 웹 브라우저: 더 적은 확장 기능을 사용하는 Firefox를 사용하거나 Midori와 같은 가벼운 브라우저로 전환하십시오.
- 파일 관리자: Nautilus를 Thunar이나 PCManFM으로 대체하십시오.
6. 캐시 및 버퍼 지우기
Linux는 파일을 캐시하여 성능을 향상시킵니다. 그러나 필요한 경우 캐시를 수동으로 지울 수 있습니다:
sudo sync; sudo sysctl -w vm.drop_caches=3
이 명령은 페이지 캐시, dentries, 그리고 inodes를 지웁니다. 파일 액세스 속도가 일시적으로 느려질 수 있으므로 주의해서 사용하십시오.
7. 커널 매개변수 최적화
커널 매개변수를 조정하거나 최적화하려면 /etc/sysctl.conf
파일을 편집하여 다음을 추가하거나 매개변수를 조정하여 시스템 성능을 향상시키십시오.
vm.dirty_background_ratio=5 vm.dirty_ratio=10 vm.min_free_kbytes=65536 kernel.sched_autogroup_enabled=0
이러한 설정은 더러운 데이터가 디스크에 얼마나 자주 쓰이는지를 제어하여 RAM 사용량을 줄입니다.
8. ZRAM을 사용하여 메모리 사용량 줄이기
Zram과 Zswap은 RAM 사용량을 줄일 수 있는 압축 메모리 기술입니다.
sudo apt install zram-config sudo systemctl start zram-config
설치한 후에는 GRUB 구성 파일(/etc/default/grub
)을 편집하고 다음을 추가해야 합니다:
GRUB_CMDLINE_LINUX_DEFAULT="zswap.enabled=1"
GRUB를 업데이트하고 재부팅하십시오:
sudo update-grub sudo reboot
9. 프로세스의 CPU 사용량 제한
만약 프로세스가 CPU를 독점하고 있다면, cpulimit을 사용하여 그 사용량을 제한하세요.
sudo apt install cpulimit # Debian/Ubuntu sudo yum install cpulimit # RHEL/CentOS
프로세스(예: firefox)의 CPU 사용량을 30%로 제한하세요.
sudo cpulimit -e firefox -l 30
프로세스를 영구적으로 제한하려면 systemd를 사용하세요.
sudo systemctl set-property <service_name> CPUQuota=30%
10. 시스템을 정기적으로 업데이트하세요
시스템을 최신 상태로 유지하면 최신 성능 향상 및 버그 수정 사항을 활용할 수 있습니다.
sudo apt update && sudo apt upgrade # For Debian/Ubuntu sudo yum update # For CentOS/RHEL
문제 해결 팁
- 프로세스가
kill
로 종료되지 않는 경우,kill -9 PID
를 사용하여 강제로 종료하세요. zram
또는zswap
이 작동하지 않는 경우, 커널이 해당 기능을 지원하는지 확인하세요.- 시스템 성능이 향상되지 않는 경우, 하드웨어를 업그레이드하는 것을 고려해보세요(예: 더 많은 RAM 추가 또는 SSD로 전환).
결론
리눅스에서 RAM 및 CPU 사용량을 최적화하는 것은 모니터링, 조정 및 때로는 하드웨어 업그레이드의 조화입니다. 자원을 많이 사용하는 프로세스를 식별하고 시스템 설정을 조정하며 가벼운 대안을 선택함으로써 시스템에 새 생명을 불어넣을 수 있습니다.
이 최적화 기술을 시도해 보셨나요? 아래 댓글에서 경험을 공유하거나 더 많은 리눅스 가이드와 자습서를 보려면 Tecmint.com을 방문하세요.
Source:
https://www.tecmint.com/reduce-ram-cpu-usage-on-linux/