Menu Close

16.13. 기존 장치 파일 수정

시스템에 설치된 서비스는 /usr/lib/systemd/system/ 디렉터리에 저장된 기본 장치 파일과 함께 제공됩니다. 시스템 관리자는 이러한 파일을 직접 수정하지 않아야 하므로 사용자 지정을 /etc/systemd/system/ 디렉터리의 구성 파일로 제한해야 합니다.

절차

  1. 필요한 변경의 범위에 따라 다음 방법 중 하나를 선택합니다.

    • /etc/systemd/system/단위.d/ 에 보조 구성 파일의 디렉터리를 만듭니다. 이 방법은 대부분의 사용 사례에 권장됩니다. 원래 장치 파일을 참조하는 동안 추가 기능을 사용하여 기본 구성을 확장할 수 있습니다. 따라서 패키지 업그레이드에 도입된 기본 단위의 변경 사항은 자동으로 적용됩니다. 자세한 내용은 기본 장치 구성 확장을 참조하십시오.
    • /etc/systemd/system/ 에서 원래 장치 파일 /usr/lib/systemd/system/ 의 복사본을 만들고 변경합니다. 복사는 원본 파일을 덮어쓰므로 패키지 업데이트로 인한 변경 사항은 적용되지 않습니다. 이 방법은 패키지 업데이트에 관계없이 유지되어야 하는 중요한 단위 변경을 수행하는 데 유용합니다. 자세한 내용은 기본 장치 구성 덮어쓰기 를 참조하십시오.
  2. 단위의 기본 구성으로 돌아가려면 /etc/systemd/system/.에서 사용자 지정 생성 구성 파일을 삭제합니다.
  3. 시스템을 재부팅하지 않고 장치 파일에 변경 사항을 적용하려면 다음을 실행합니다.

    systemctl daemon-reload

    daemon-reload 옵션은 모든 유닛 파일을 다시 로드하고 전체 종속성 트리를 다시 생성합니다. 이 트리는 유닛 파일에 변경 사항을 즉시 적용하는 데 필요합니다. 또는 root 사용자가 실행해야 하는 다음 명령을 사용하여 동일한 결과를 얻을 수 있습니다.

    init q
  4. 수정된 유닛 파일이 실행 중인 서비스에 속하는 경우 새 설정을 수락하려면 이 서비스를 다시 시작해야 합니다.

    systemctl restart name.service
중요

SysV initscript에서 처리하는 서비스의 종속성 또는 시간 초과와 같은 속성을 수정하려면 initscript 자체를 수정하지 마십시오. 대신 다음에 설명된 대로 서비스에 대한 systemd 드롭인 구성 파일을 생성합니다. 기본 단위 구성 확장 및 기본 장치 구성 Overriding the default unit configuration.

그런 다음 이 서비스를 일반 systemd 서비스와 동일한 방식으로 관리합니다.

예를 들어 네트워크 서비스 구성을 확장하려면 /etc/rc.d/init.d/network initscript 파일을 수정하지 마십시오. 대신 새 디렉토리 /etc/systemd/system/network.service.d/systemd 드롭인 파일 /etc/systemd/system/network.service.d/my_config.conf 를 생성합니다. 그런 다음 수정된 값을 드롭인 파일에 배치합니다. 참고: systemd network.service 로 네트워크 서비스를 알고 있으므로 생성된 디렉토리를 network.service.d라고 지정해야 합니다.