https://unix.stackexchange.com/a/197682/674설명하다
모든 서비스는 기본적으로 "비활성화"되어 있으며 "활성화"는 선택 사항입니다.
맞아?
내가 달리기를 마친 후에
sudo apt install openssh-server
왜 자동으로 실행되나요 sshd
?
서비스가 systemd에 의해 자동으로 시작되면 시작하지 않도록 기본값을 변경하는 방법은 무엇입니까?
이제 내가 설치했어삼바서버와네트워크 파일 시스템서버를 사용하는 경우 기본적으로 비활성화하도록 systemd에 요청해야 합니까(그러면 Lubuntu를 부팅할 때마다 자동으로 시작되지 않음)? 그렇다면 어떻게?
감사해요.
답변1
모든 서비스는 기본적으로 "비활성화"되어 있으며 "활성화"는 선택 사항입니다.
맞아?
예, 디스크에 유닛 파일을 생성하는 경우에도 systemd에 대한 몇 가지 명령을 실행하여 새 유닛에 대해 알아보거나( systemctl daemon-reload
), 즉시 시작하거나( systemctl start ...
), 부팅 시 시작하도록 요청하거나( systemctl enable ...
) 바로가기 키( )를 사용해야 합니다. systemctl enable --now ...
.) 동시에 활성화하고 시작합니다.
그러나 systemd 장치가 포함된 패키지를 설치하면 패키지는 일반적으로 설치 후 스크립트의 일부로 대부분의 명령을 실행합니다.
내가 달리기를 마친 후에
sudo apt install openssh-server
sshd가 자동으로 실행되는 이유는 무엇입니까?
따라서 패키지의 설치 후 스크립트는 이를 활성화하고 설치 후 패키지를 실행합니다.
당신은 Lubuntu에 있다고 언급했습니다. Debian 자체, Ubuntu, Lubuntu 및 기타 변형과 같은 Debian 기반 배포판(일반적으로 apt-get
또는 사용 apt
)은 일반적으로 패키지가 설치되자마자 패키지를 시작하고 활성화합니다. 이들의 철학은 서비스를 시작하고 즉시 사용할 수 있도록 정상적이고 "안전한" 기본값을 제공하는 것입니다. ("보안"은 때때로 localhost 이외의 연결을 허용하지 않거나 키 기반 인증과 같은 강력한 인증 형식으로만 인증을 제한하는 것을 의미합니다.)
Red Hat 기반 시스템(RHEL, CentOS, Fedora 및 SuSE도 마찬가지)은 일반적으로 반대 작업을 수행하며 관리자가 패키지를 설치한 후 데몬을 명시적으로 활성화하고 시작해야 시작하기 전에 데몬 구성을 확인할 수 있습니다. 처음으로.
systemd는 이와 관련하여 배포판별 정책을 고려하는 활성화 및 초기화와 관련된 메커니즘을 만들었습니다.기본.
이 메커니즘을 사용하면 패키저가 설치 후 스크립트에서 간단히 호출할 수 있으므로 systemctl preset ...
배포별 정책에 대해 걱정할 필요가 없습니다.
Debian 기반 배포판은 기본적으로 모든 것을 활성화하는 정책을 구현하는 *.preset
이 줄이 포함된 파일을 푸시하는 반면, Red Hat 기반 배포판은 기본 설정을 구현하는 파일을 제공합니다 .enable *
*.preset
disable *
이러한 배포별 설정 뒤에 있는 메커니즘을 배포 전체에 일관되게 만드는 것 외에도 systemd 사전 설정은 관리자에게 특정 사전 설정 패키지에 대해 다른 옵션을 선택하거나 배포의 원래 선택을 완전히 재정의하여 이러한 설정을 사용자 정의할 수 있는 간단하고 일관된 방법을 제공합니다.
실제로 데비안 기반 배포판은 궁극적으로systemctl preset
곧장, 대신 주위에 작은 래퍼를 제공하며 이것이 패키지의 설치 후 스크립트에서 사용되는 것입니다. 래퍼를 사용하는 이유는 패키지가 제거될 때 패키지의 활성화 모드를 기록하여 나중에 동일한 호스트에 패키지를 다시 설치할 경우를 대비해 보존하기 위한 것입니다. systemd 기본 구성은 이러한 호스트에서 평소대로 작동하므로 이 작은 세부 사항은 대부분 무시할 수 있습니다.