리눅스가 너무 느리나요? 원인을 찾는 방법은 다음과 같습니다.

Linux Running Slow Feature

PC에 리눅스를 설치했을 때 시스템이 여전히 느리게 느껴진다면 그보다 더 짜증나는 일은 없습니다. 기계 구축, 구매 또는 업그레이드에 돈을 썼다면, 빠르게 작동하기를 기대하게 마련입니다. 하지만 항상 그런 것은 아니며, 리눅스에서는 문제가 무엇인지 조사할 수 있는 여러 방법이 있습니다. 오늘은 리눅스 머신이 느리게 작동하는 원인을 찾는 방법을 보여드리겠습니다.

리눅스 컴퓨터가 느린 이유는 무엇인가요?

리눅스 컴퓨터가 느리게 작동하는 이유는 다음과 같을 수 있습니다:

  • systemd(또는 사용 중인 init 시스템)에 의해 부팅 시 시작된 불필요한 서비스
  • 여러 개의 리소스를 많이 사용하는 애플리케이션이 열려 있어 높은 리소스 사용량
  • 어떤 종류의 하드웨어 고장 또는 잘못된 구성

리눅스 컴퓨터 속도를 높이는 방법을 찾기 전에, 부팅 시 시작된 서비스, 높은 또는 낮은 우선 순위로 실행 중인 프로세스, CPU 상태 및 RAM이 필요한 데이터보다 더 많이 채워져 있는지 여부, 스왑 메모리의 여유 공간, 하드 디스크가 잘 작동하는지 여부를 확인해야 합니다.

CPU 정보 확인

느린 리눅스 컴퓨터의 속도를 높이고 싶다면 첫 번째 단계는 CPU 정보를 확인하는 것입니다. Firefox 또는 LibreOffice와 같은 프로그램을 여는 데 어려움이 있다면, CPU가 무거운 애플리케이션에 충분한 성능이 아닐 가능성이 있습니다.

터미널을 열고 다음 명령어 중 하나를 실행하세요:

cat /proc/cpuinfo

cpuinfo

lscpu

cpuinfo-list

위 명령어는 공급업체 ID, 모델 이름, CPU 속도(MHZ), 캐시 크기, 마이크로코드 및 bogomips와 같은 CPU에 대한 상세 정보를 표시합니다.

CPU 정보에 대한 몇 가지 중요한 세부 정보를 살펴보겠습니다.

  • bogomips: 초당 잘못된 백만 수의 명령어를 의미합니다. 시스템 성능을 표시하는 독립 실행형 프로그램입니다.
  • model_name: 모델 이름은 CPU의 제조업체, 모델 및 속도를 나타냅니다. 이 경우, 속도가 1.73GHz인 Intel(R) Celeron(R) CPU입니다.
  • cpu MHZ: cpu MHZ(메가헤르츠)는 채널, 버스 및 컴퓨터 내부 클록의 전송 속도를 측정하는 데 사용됩니다. 이 경우 전송 속도는 1733.329GHz입니다.

여기서 문제를 명확히 확인할 수 있습니다: Intel Celeron 1.73 GHz CPU는 처리 성능이 낮은 오래된 프로세서입니다. 속도가 낮은 단일 코어 CPU로, 많은 최신 CPU는 거의 5 GHz에서 16 코어로 작동합니다.

추가 읽기: /proc 파일 시스템을 사용하여 리눅스 내부 작동을 검토하기

해결책

오래되고 느린 CPU가 있는 경우, 유일한 솔루션은 더 최신 CPU로 교체하는 것입니다. 새로운 프로세서를 구매할 때 무엇을 찾아야 할지 알아보세요.

부팅 시 시작된 서비스 확인

부팅 시 시작된 서비스를 확인하는 방법은 여러 가지가 있습니다. 다음 명령어 중 하나를 사용할 수 있습니다.

이 명령어는 부팅 시 시작된 서비스를 나열합니다:

service --status-all

service

이 명령어는 부팅 시 시작된 서비스를 나열합니다. CentOS, AlmaLinux, Fedora 및 RHEL과 호환됩니다:

chkconfig --list

chkconfig1

이 명령어는 부팅시 시작된 서비스도 나열합니다:

initctl list

initctl은 시스템 관리자가 Upstart 데몬과 통신하고 상호 작용할 수 있게 해주는 데몬 제어 도구입니다.

init-ctl

시스템이 systemd를 사용하고 있다면, 다음 명령어를 사용하여 부팅 시 실행되는 서비스를 찾을 수 있습니다:

sudo systemctl list-unit-files --state=enabled

해결책

systemd를 사용하는 리눅스 배포판에서는 systemctl 명령어를 사용하여 서비스 관리를 수행하므로 부팅 시 실행되지 않도록 설정할 수 있습니다.

CPU 부하 확인

부팅 시 시작된 서비스를 확인하는 것 외에도, 프로세서/CPU가 프로세스로 과부하인지 확인할 수 있습니다. top 명령어나 시스템 모니터링 도구를 사용하여 CPU 부하를 확인할 수 있습니다.

top 명령어는 가장 높은 사용량의 프로세스를 상단에 정렬합니다. 아래 스크린샷을 보면 어떤 프로세스/애플리케이션이 CPU를 과도하게 사용하는지 명확히 식별하고 필요할 경우 kill 명령어를 사용해 종료할 수 있습니다.

topnew

해결책

너무 많은 애플리케이션(포그라운드와 백그라운드 모두)을 실행하고 있고 CPU 성능이 부족하다면, 사용하지 않는 애플리케이션을 종료하는 것이 가장 좋습니다. 또한 백그라운드에서 실행되고 있으나 사용하지 않는 애플리케이션도 비활성화하세요.

또는 preload를 사용하여 자주 사용하는 애플리케이션을 미리 로드할 수 있습니다. Preload는 백그라운드에서 실행되며 자주 실행되는 애플리케이션을 분석하는 데몬입니다.

터미널을 열고 다음 명령어를 실행하세요:

# Ubuntu/Debian  
sudo apt install preload  
  
# Fedora  
sudo dnf install preload

Preload는 백그라운드에서 작동하므로 따로 조정할 필요가 없습니다. Preload는 일반적으로 사용되는 애플리케이션을 메모리에 로드하여 이 애플리케이션들의 더 빠른 로드를 보장합니다.

여유 메모리 공간 확인

RAM은 일반적으로 사용되는 애플리케이션이 저장되는 곳입니다. free 명령어를 사용하여 RAM의 사용 가능한 여유 공간과 같은 메모리 정보를 확인할 수 있습니다. 메모리 공간이 부족하면 컴퓨터 성능에도 영향을 미칠 수 있습니다.

해결책

RAM을 업그레이드하거나 메모리 집약적인 애플리케이션을 경량 대안으로 교체하세요. LibreOffice와 같은 애플리케이션은 메모리 집약적입니다. LibreOffice 대신 Abiword를 사용할 수 있습니다.

하드 드라이브의 과도한 작업 확인

하드 드라이브의 불빛이 계속 깜빡거리는데, 도대체 무엇을 하고 있는지 모른다면? 신비로운 입력/출력은 문제를 일으킬 수 있습니다. 이러한 문제를 진단하는 데 도움을 주는 iotop이라는 top 유사 도구가 있습니다.

터미널을 열고 다음 명령어를 입력하세요:

# Ubuntu/Debian  
sudo apt install iotop  
  
# Fedora/CentOS  
sudo dnf install iotop

정상적인 대기 시스템은 대부분 0으로 표시되어야 하며, 데이터가 기록될 때 작은 폭발이 몇 번 있을 수 있습니다. 아래 스크린샷을 참조하세요.

linuxperformance-iotop1

그러나 find와 같은 디스크 집약적인 유틸리티를 실행하면, iotop에 그 이름과 처리량이 명확히 나열되어 있는 것을 볼 수 있습니다.

linuxperformance-iotop2

이제 어떤 프로그램이 당신의 I/O를 사용하고 있는지, 그것을 실행한 사람, 데이터가 읽히는 속도 등을 쉽게 확인할 수 있습니다.

결론

시스템 속도가 느려질 수 있는 여러 요인이 있지만, 대부분의 성능 문제의 원인은 CPU, RAM 및 디스크 I/O입니다. 여기에서 설명한 방법을 사용하면 성능 문제의 원인을 파악하고 문제를 해결하는 방법을 알 수 있습니다.

다음으로 할 수 있는 것은 Ubuntu 시스템의 속도를 높이는 것입니다. Wi-Fi 문제가 있다면, 리눅스에서 Wi-Fi가 작동하지 않는 문제를 해결하기 위한 가이드를 확인해 보세요.