추가 읽기

추가 읽기

Debian에서 apt-get을 통해 패키지를 설치한 후 systemd의 서비스가 기본적으로 활성화되어 있음을 확인했습니다. 그러나 Arch Linux와 같은 다른 배포판에서는 이 패키지의 서비스가 기본적으로 비활성화되어 있습니다.

내 질문은 다음과 같습니다

  1. 이 행동은 무엇에 달려 있습니까? 활성화 여부를 결정하는 것은 패키지 관리자 또는 패키지 자체의 일부 설정입니까?

데비안에서는 설치 후에 실행되는 것처럼 보입니다 systemctl enable docker.service. Arch-linux에서는 docker.service비활성화되어 있습니다.

  1. 어떻게 바꿀 수 있나요?

답변1

systemd 기본 설명에 명시된 대로, 이는 딜러가 선택한 정책입니다.

Fedora에서는 기본적으로 모든 서비스가 꺼져 있으므로 패키지를 설치해도 서비스가 활성화되지 않습니다(일부 예외 있음). 데비안에서는 기본적으로 모든 서비스가 즉시 활성화되므로 패키지를 설치하면 해당 서비스가 즉시 활성화됩니다.

systemctl preset이론적으로 시스템 배포는 패키지 설치 후 유지 관리 스크립트를 실행하는 대신 기본 시스템을 사용하여 서비스를 활성화할지 여부를 결정합니다. systemctl enable배포 정책에 로컬 재정의를 적용하는 것은 높은 우선 순위 사전 설정에서 자체 업데이트를 만드는 것과 같습니다. 마찬가지로 쉽습니다 /etc/systemd/system-preset/. (Arch doco는 여기서 오해의 소지가 있습니다. 일반적인 시나리오는 특정 서비스를 처리하기 위해 별도의 로컬 사전 설정 파일을 만드는 것입니다.)

실제로 일부 systemd 배포판은 이를 위해 기본 시스템을 사용하지 않으며 systemd에 로컬 재정의를 적용하는 것은 배포판 자체 메커니즘을 사용하는 것입니다(실제로 그러한 메커니즘이 있는 경우).

추가 읽기

답변2

1) 이 행동은 무엇에 달려 있습니까? 활성화 여부를 결정하는 것은 패키지 관리자 또는 패키지 자체의 일부 설정입니까?

각 배포판은 Debian의 apt 또는 Arch Linux의 pacman과 같은 다른 패키지 관리자를 사용할 수 있습니다. 이를 위해서는 소프트웨어 개발자 및/또는 패키지 관리자가 다양한(종종 분리된) 방식으로 패키지를 준비해야 합니다. 이러한 차이점은 패키지 내 설정과 관련이 있을 수 있지만, 대상 시스템에서 systemd를 사용할 것이라는 가정하에 패키지가 준비되지 않은 경우도 있습니다.

2) 어떻게 바꿀 수 있나요?

배포를 위한 특정 패키지가 어떻게 준비되고 유지 관리되는지, 그리고 누가 해당 패키지를 담당하는지 이해합니다. 오픈 소스인 경우 설치 소스에서 동작을 직접 수정할 수 있습니다. 소프트웨어 개발자/유지관리자 커뮤니티에 연락하여 변경 사항을 제안할 수도 있습니다.

관련 정보