> 운영 및 유지보수 > 리눅스 운영 및 유지 관리 > Linux의 SystemD를 사용하여 시스템 서비스를 어떻게 관리합니까?

Linux의 SystemD를 사용하여 시스템 서비스를 어떻게 관리합니까?

James Robert Taylor
풀어 주다: 2025-03-11 17:34:03
원래의
761명이 탐색했습니다.

Linux에서 SystemD를 통한 시스템 서비스 관리

SystemD는 대부분의 최신 Linux 배포판에서 사용하는 Init 시스템입니다. 시스템 서비스의 시작, 정지 및 전반적인 수명주기를 관리합니다. Sysvinit과 같은 오래된 Init 시스템과 달리 SystemD는보다 정교하고 강력한 접근 방식을 제공하여 종속성 관리 및 병렬 서비스 스타트 업과 같은 기능을 활용합니다. SystemD를 사용하여 서비스를 관리하려면 명령 줄 도구 (주로 SystemCTL )를 사용하는 것이 포함됩니다. SystemD 단위의 구조 (서비스, 대상 및 기타 시스템 구성 요소를 설명하는 파일)의 구조를 이해하는 것은 효과적인 관리에 중요합니다. 이 단위는 일반적으로 /etc/systemd/system/ 및 기타 관련 디렉토리에 있습니다. 단위 자체는 일반적으로 간단한 구성 언어로 작성되므로 이해하고 수정하기가 비교적 쉽습니다. 마지막으로, SystemD는 강력한 로깅 메커니즘을 제공하여 구형 이른 시스템보다 문제 해결을 훨씬 간단하게 만듭니다.

서비스를 시작, 중지 및 활성화하기위한 일반적인 SystemD 명령

SystemD와 상호 작용하기위한 기본 명령은 SystemCTL 입니다. 서비스 관리를위한 몇 가지 일반적인 명령은 다음과 같습니다.

  • 서비스 시작 : SystemCtl Start & Lt; Service_name & gt; . 예를 들어 SSH 서비스를 시작하려면 SystemCTL START SSH 를 사용합니다. 이 명령은 아직 실행되지 않은 경우 서비스를 시작합니다.
  • 서비스 중지 : SystemCTL STOP & LT; SERVICE_NAME & gt; . 이 명령은 지정된 서비스를 우아하게 중지합니다.
  • 서비스 재시작 : SystemCTL 재시작 & lt; service_name & gt; . 이 명령은 중지 된 다음 서비스를 시작합니다. 구성 변경을 적용하거나 사소한 문제에서 복구하는 데 유용합니다.
  • 서비스 활성화 : SystemCTL enable & lt; service_name & gt; . 이 명령은 부팅 시간에 서비스가 자동으로 시작되도록합니다. Systemd는 서비스 유닛을 적절한 런 레벨 디렉토리에 배치하기위한 기호 링크를 생성합니다.
  • 서비스 비활성화 : SystemCTL Disable & LT; Service_name & gt; . 이 명령은 상징적 링크를 제거하여 부팅시 서비스가 자동으로 시작되는 것을 방지합니다.
  • 서비스 상태 확인 : SystemCTL 상태 & lt; service_name & gt; . 이 명령은 PID (프로세스 ID), 활성 상태 및 최근 로그를 포함하여 서비스의 현재 상태를 표시합니다. 서비스의 건강에 대한 자세한 정보를 제공합니다.
  • 모든 활성 서비스 나열 : SystemCTL List-Units-type = service . 이 명령에는 현재 실행중인 모든 서비스가 나와 있습니다. 실행중인 서비스 만 필터링하기 위해 -state = running 를 추가 할 수 있습니다.

SystemD 서비스 실패 문제 해결 및 시스템이 실패하면 몇 가지 도구가 문제를 해결하는 데 도움이됩니다. 앞에서 언급 했듯이이 명령은 중요합니다. 시작 또는 런타임 중에 발생한 경우 오류 메시지를 포함하여 서비스 상태에 대한 정보를 제공합니다. "실패"또는 "비활성 (죽은)"상태 및 후속 오류 메시지에주의를 기울이십시오.

  • Journalctl : journalctl 명령은 SystemD 로그를보기위한 기본 도구입니다. 서비스 이름, 시간 및 기타 기준에 따라 로그를 필터링 할 수 있습니다. 예를 들면

    • : 지정된 서비스에 대해 특별히 로그를 표시합니다. -xe : 서비스에 대한 최신 오류 메시지가 표시됩니다. -f : 로그 출력을 실시간으로 따릅니다.
  • 서비스 구성 파일 확인 : 서비스 단위 파일 (일반적으로 /etc/systemd/system/에 위치한
  • )을 검토하는 데 도움이됩니다. 서비스

    사용자 정의 SystemD 서비스를 작성하려면 서비스를 설명하는 단위 파일을 작성해야합니다. 이 파일에는 일반적으로 .service 확장이 있습니다. 서비스 파일의 기본 예는 다음과 같습니다.

     <code class="ini"> [unit] description = 내 사용자 정의 서비스 후 = 네트워크. WANTEDBY = multi-user.target </code> 
    로그인 후 복사
  • [Unit] 섹션 : 은 설명 및 종속성을 포함하여 서비스에 대한 메타 데이터를 포함합니다.
  • [Service] executute ()
  • [install] 섹션 : 섹션 :
  • 이 파일을 작성한 후 (예 : /etc/systemd/systomsevice.svervice.svervice <p>. to : </p> <ol> <li> </li> <li> <strong> SystemD : </strong> <code> Systemctl Daemon-Reload

  • 서비스 활성화 : SystemCTL enable mycustomservice
  • 서비스 시작 : systemctl start> systemctl MyCustomService
  • 서비스 상태를 확인하십시오 :
  • /code/to/script.sh , myuser 와 같은 자리 표시자를 대체하는 것을 기억하십시오. 사용자와 그룹을 올바르게 설정하는 것은 보안에 필수적입니다. <code> 재시작 = 항상 다시 시작 = 5 옵션은 충돌시 서비스가 자동으로 다시 시작되도록합니다. 생산 환경에 배치하기 전에 항상 사용자 정의 서비스를 철저히 테스트하십시오.

    위 내용은 Linux의 SystemD를 사용하여 시스템 서비스를 어떻게 관리합니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

    본 웹사이트의 성명
    본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
    저자별 최신 기사
    인기 튜토리얼
    더>
    최신 다운로드
    더>
    웹 효과
    웹사이트 소스 코드
    웹사이트 자료
    프론트엔드 템플릿