리눅스 트러블 슈팅(Trouble Shooting).INDEX

리눅스 서버를 공부 할 때 트러블 슈팅(Trouble Shooting)이란 단어를 접하게 되는데 서버 엔지니어와 개발자가 서버를 운영하면서 듣게 되는 단어로 말 그대로 ‘문제 해결’을 뜻 한다.

리눅스에서 Trouble Shooting은 문제가 발생한 시점에서 시스템, 소프트웨어 및 하드웨어, 네트워크 등에서 문제를 진단하고 해결하는 과정이다.

Ⅰ. 트러블 슈팅 시스템 구축

원인과 해결책을 찾는 과정에서 문제 해결이 되었다면 문제점과 해결책을 문서화 하는 것은 매우 중요하다. 동일한 문제가 발생했을 때 빠르게 문제 해결을 할 수 있기 때문이다. 과거에 있었던 해결 방법을 찾을 수 있으며, 서버의 변경 상태(사항)을 파악하고 시스템의 동작 방식을 이해하는 것이 중요하다고 할 수 있다.

  • Trouble Shooting을 위한 조건 1
  • 시스템 동작 방식 이해 및 관련 용어의 이해
  • DNS 및 프로세스 등의 이해와 네트워크 용어 및 시스템의 이해가 필요함.
  • 문제점과 해결책 문서화
  • 과거에 해결되었던 내용을 참조할 수 있도록 한다.
  • Trouble Shooting을 위한 조건 2
  • 시스템 동작 방식 이해 및 관련 용어의 이해
  • DNS 및 프로세스 등의 이해와 네트워크 용어 및 시스템의 이해가 필요함.
  • 시스템의 변경 사항 파악하기
트러블슈팅(Troubleshooting)

Ⅱ. 서버가 느린 경우

네트워크 쪽이 아닌 서버쪽에서 느린 것으로 판단되는 경우 시스템의 리소스가 소비되어 서버가 느린 경우를 생각할 수 있습니다. CPU, 메모리, 디스크 쪽의 문제를 점검할 수 있겠습니다.

1. 시스템 부하: top, uptime 명령어로 문제 진단

리눅스 uptime 명령어로 문제를 빠르게 진단할 수 있습니다.

2. CPU, RAM 문제 파악하기

 1분,5분,15분 동안의 평균 로드(load average)의 숫자가 높은 경우

~]# uptime                                                                                                         
 10:36:12 up 5 days, 17:35,  1 user,  load average: 2.03, 20.17, 15.09  

실행 중인 프로세스가 CPU를 사용 중이거나 CPU 사용을 위한 대기 상태일 가능성을 볼 수 있습니다.

평균 부하가 높은 원인을 CPU 문제인지 RAM의 문제인지 I/O에 대한 문제인지를 살펴 봐야 합니다.

리눅스 uptime 명령어 설명

top 명령어를 이용해서 시스템의 문제를 한 눈에 볼 수 있습니다.

  • top 명령어를 통한 진단
  • ⓐ 부팅 후 가동 시간을 확인하여 언제부터 가동되었는지 확인.
  • load average로 평균 부하 시간을 체크.
  • ⓒ 실행 중인 프로세스의 갯수 체크.
  • ⓓ 사용 중인 메모리는와 남아 있는 메모리는 어느 정도 인지 체크할 수 있습니다.
리눅스 TOP 명령어-메모리 및 스왑메모리 영역.png

3. 메모리 고갈 파악하기

4. 디스크 I/O 진단

Ⅲ. 시스템 부팅 문제

Ⅳ. 파티션 디스크가 FULL 상태인 경우

Ⅴ.웹 사이트 다운

Ⅵ. 데이터베이스 오류

Ⅶ. 하드웨어 진단

Ⅷ. 서버 다운 시 네트워크 문제 확인

Ⅸ. 네임서버 및 DNS 문제 해결

Ⅹ. 이메일 오류

Similar Posts

  • 리눅스 FirewallD 설치 및 데몬 설정

    리눅스 FirewallD는 iptables의 체인과 정책이라는 규칙 대신 Zone과 Service를 대신 사용합니다. Firewalld를 사용하는 이유는 iptables의 규칙이 복잡하기 때문에 iptables 대신 사용할 수 있도록 하기 위함입니다. 목차Ⅰ. 트러블 슈팅 시스템 구축Ⅱ. 서버가 느린 경우1. 시스템 부하: top, uptime 명령어로 문제 진단2. CPU, RAM 문제 파악하기3. 메모리 고갈 파악하기4. 디스크 I/O 진단Ⅲ. 시스템 부팅 문제Ⅳ….

  • 리눅스 명령어 13가지 카테고리 분류&시스템의 이해

    리눅스의 명령줄 인터페이스(Command Line Interface, CLI)는 컴퓨터 프로그램 및 운영체제와 상호 작용하기 위한 텍스트 기반의 사용자 인터페이스입니다. 리눅스 명령어는 유닉스 계열 운영체제어서 거의 동일하게 작동하며, 명령어를 입력해서 파일의 생성, 수정, 복사 이동 및 서버 전반에 걸친 관리를 하게 됩니다. 명령어를 카테고리로 분류하지만 틀릴 수 있는 점을 참고하여 주시기 바랍니다. 목차Ⅰ. 트러블 슈팅 시스템…

  • 리눅스 netstat 명령어, ifconfig 명령어

    리눅스에 netstat 명령어 및 ifconfig 명령어를 실행하기 위해 리눅스 서버에 명령어 실행을 위한 net-tools이 설치되어 있어야 합니다. 목차Ⅰ. 트러블 슈팅 시스템 구축Ⅱ. 서버가 느린 경우1. 시스템 부하: top, uptime 명령어로 문제 진단2. CPU, RAM 문제 파악하기3. 메모리 고갈 파악하기4. 디스크 I/O 진단Ⅲ. 시스템 부팅 문제Ⅳ. 파티션 디스크가 FULL 상태인 경우Ⅴ.웹 사이트 다운Ⅵ. 데이터베이스…

  • Apache&Nginx에 Varnish Cache 설치 및 설정

    기존 Apache와 Nginx 조합의 서버에 Varnish Cache를 추가로 설치하고 적용 해 보도록 하겠습니다. Nginx에 Varnish Cache를 추가로 설정하는 작업이기 때문에 기존의 서버에 적용된 사항을 체크 해 보겠습니다. AlmaLinux release 9.4 버전에 Apache/2.4.57, nginx/1.28.0 , PHP 8.3.22를 사용하기 때문에, 설치는 varnish, collectd-varnish, varnish-modules 총 3개의 모듈 설치를 진행합니다. 목차Ⅰ. 트러블 슈팅 시스템 구축Ⅱ. 서버가…

  • SSH 명령어: 옵션 및 사용 방법

    리눅스에서 SSH(Secure Shell)는 네트워크를 통해 다른 시스템에 안전하게 접속할 수 있도록 해주는 프로토콜입니다. SSH는 원격 서버와 클라이언트 간의 통신을 암호화하여 보안성을 높이며, 주로 원격 접속, 파일 전송, 그리고 터널링 기능을 제공합니다. SSH 명령어를 사용하여 사용자는 원격 서버에 안전하게 접속한 뒤 다양한 작업을 수행할 수 있습니다. 터널링 기능: 한 네트워크에서 다른 네트워크로 데이터를 안전하게…

  • 리눅스 패키지(Linux Packag)란 무엇인가?

    리눅스 패키지(Linux Packag)를 윈도우와 비교하자면, 윈도우의 인스톨러 파일(.msi, .exe)는 소프트웨어를 설치하는 데 사용되며, 리눅스에서는 비슷한 개념으로 패키지 관리자를 이용하여 소프트웨어를 설치합니다. 리눅스 패키지는 실행파일, 라이브러리, 설정 파일 등을 하나의 패키지로 묶어 제공하며, 패키지 관리자를 통해 해당 패키지를 다운로드하고 시스템에 설치합니다. 윈도우의 인스톨러와 유사하게, 리눅스는 패키지 관리자를 통해 사용자가 소프트웨어를 쉽게 설치, 업데이트, 삭제할…

답글 남기기

이메일 주소는 공개되지 않습니다. 필수 필드는 *로 표시됩니다

Prove your humanity: 8   +   2   =