시스템 구성 파일은 어디에 있습니까?

시스템 구성 파일은 어디에 있습니까?

특정 대상에서 특정 유닛을 활성화하는 방법은 무엇입니까? 활성화되면 구성은 어디에 저장됩니까?

답변1

Hauke ​​​​Laging이 말했듯이 systemctl enable ...수행중인 작업에 대한 정보가 인쇄됩니다. 예를 들어 내 아치 시스템의 dhcpd인터페이스에서 서비스를 활성화 하면 enp0s3...

$ systemctl enable dhcpcd@enp0s3
Created symlink from /etc/systemd/system/multi-user.target.wants/[email protected]
to /usr/lib/systemd/system/[email protected]

systemctl이 서비스를 비활성화하면 이전 링크가 제거된 것을 볼 수 있습니다 ...

$ systemctl disable dhcpcd@enp0s3
Removed symlink /etc/systemd/system/multi-user.target.wants/[email protected]

이 출력에서 ​​알 수 있는 것은...

  • 호출되면 systemctl enable아래에 심볼릭 링크가 생성됩니다 /etc/systemd/system/multi-user.target.wants.
  • 호출되면 systemctl disable이 심볼릭 링크가 삭제됩니다.

따라서 활성화된 서비스 목록("구성"이라고 부르는 것 같습니다)을 얻으려면 다음 링크를 나열하기만 하면 됩니다.

ls /etc/systemd/system/multi-user.target.wants

systemctl list-unit-files그러나 사용 가능한 모든 서비스와 해당 상태(활성화, 비활성화, 정적)를 나열하는 를 사용하면 더 많은 정보를 찾을 수 있습니다 . 활성화된 유닛이 /etc/systemd/system속한 유닛에 따라 아래 어딘가에 링크가 있는 것을 볼 수 있습니다 .

$ find /etc/systemd/system -type l

systemd일부 배포판에서는 디렉터리가 변경될 수 있지만 이것이 배포판(및 그 이전의 다른 시스템)이 설정을 처리하는 방식입니다. /etc/systemd여러 구성 파일이 저장 되더라도 장치별 설정은 링크를 통해 처리됩니다. 나에게 있어 이 접근 방식은 개발자가 유닛과 해당 패키지(아래에 설치됨 /usr/lib/systemd/system)를 제공할 수 있도록 허용하지만 시스템에 예약된 유닛을 결정할 수 있는 관리자에게 제어권을 제공하므로 파일보다 훨씬 더 실용적입니다.

당신이 관심이 있다면,Arch Wiki는 실제로 좋은 소개를 제공합니다.systemd. RHEL은 또한해당 문서에 대한 일부 정보.

관련 정보