그것은 공식적이지는 않지만 systemd가 데비안에 온 것 같습니다. 그리고 그 결정에 대한 메일 링리스트 토론을 읽은 후, 리눅스 사용자들 사이에서 systemd의 양극화 특성에 대해 궁금합니다. 데비안 (sysvinit) 및 젠투 (OpenRC) 시스템을 실행하고 systemd에 대해서는 구체적으로 알지 못합니다.
나는 systemd vs upstart의 장단점을 묻는 이 관련 질문 을 보았지만 그 질문이 게시 된 지 3 년이 지났으며 그 당시에는 상황이 바뀌 었다고 확신합니다.
내 질문은 : systemd는 다른 init 시스템과 어떻게 비교됩니까?
- 다른 점은 무엇입니까? 다른 init 시스템이 할 수없는 일은 무엇입니까?
- 다른 초기화 시스템에서 전환 할 때 잃을 것이 있습니까?
- 시스템 관리는 다른 시스템과 어떻게 비교됩니까?
답변
아마도 여러분이 알고 싶은 모든 것은 데비안 프로젝트가 어떤 initsystem을 사용할 것인지 결정하는 데 사용 하는 ” Debate Init System To Use “페이지에 있습니다. 이 페이지에는 각 initsystems 선택에 대한 별도의 링크가 있습니다.
Systemd의 입문서를 위해이 페이지에는 RHEL7 : Systemd 시작 방법에 대해 알아야 할 모든 것이 있습니다.
내가 선택한 두 가지 주요 선택 사항을 더 잘 이해하는 데 도움이되는 추가 리소스는 해당 기술에 대한 Wikipedia 페이지도 참조하십시오.
젠투 프로젝트는 또한 다양한 초기 단계에서 주요 기능 중 일부를 훌륭하게 비교합니다.
나는 당신의 질문에
Q # 1 : systemd는 다른 init 시스템과 어떻게 비교됩니까?
이것은 SE 답변의 공간에서 다루기 매우 어려운 질문이므로 위에서 언급 한 다양한 출처를 선호합니다. 나는 이것을 말할 것이다. systemd
대안 에 대한 많은 기사를 읽으면서 Linux 시스템에서 서비스를 시작하는 데 사용 된 이전 도구에서 부족한 점에 대한 많은 측면을 다루려고합니다. 그것은 매우 잘 고안된 디자인을 가지고 있으며 매우 모듈 방식으로 제공하려고 시도하고 있습니다.
시스템 구성 요소
따라서 IMO는 디자인 노력, 디자인 실행 및 몇 가지 더 큰 Linux 배포판에 의한 채택 측면에서 매우 호의적으로 비교한다고 말합니다.
Q # 2 : 다른 점은 무엇입니까? 다른 init 시스템이 할 수없는 것은 무엇입니까?
sytemd
다른 시스템으로는 할 수없는 것들이 많이 있습니다. 가장 강력한 기능 중 3 개는 다음과 같습니다.
- 벌채 반출
- 자원 제한
- 분기하는 데몬 다루기
1. 로깅
로깅 프론트 systemd
에서 “Journal”이라는 새로운 로깅 시스템을 구축했으며이 서비스를이라고 systemd-journald.service
합니다. 이 주제는 독자적인 주제입니다.이 기사 에서 저널 소개 라는 주제에 대해 자세히 읽을 수 있습니다 . 다음은 로그인하는 사용자 “harald”의 예입니다.
_SERVICE=systemd-logind.service
MESSAGE=User harald logged in
MESSAGE_ID=422bc3d271414bc8bc9570f222f24a9
_EXE=/lib/systemd/systemd-logind
_COMM=systemd-logind
_CMDLINE=/lib/systemd/systemd-logind
_PID=4711
_UID=0
_GID=0
_SYSTEMD_CGROUP=/system/systemd-logind.service
_CGROUPS=cpu:/system/systemd-logind.service
PRIORITY=6
_BOOT_ID=422bc3d271414bc8bc95870f222f24a9
_MACHINE_ID=c686f3b205dd48e0b43ceb6eda479721
_HOSTNAME=waldi
LOGIN_USER=500
2 & 3. 자원 제한 및 분기 데몬
systemd
여기서는 cgroups
리소스에 대한 액세스를 포크하거나 제한해야하는 모든 서비스를 포함하고 리소스를 제한하는 데 사용하는 새로운 접근 방식을 사용 합니다.
발췌
Systemd는 동시에 데몬 제한을 처리하는 데몬을 추적하는 데몬 추적 문제에 대한 매우 영리한 솔루션을 보유하고 있습니다. Upstart가 ptrace를 사용하여 분기를 감시하는 경우 systemd는 제어 그룹 (Linux 2.6.24 이상 필요)에서 각 데몬을 실행합니다. 이것은 제어 그룹이 이런 종류의 것을 위해 만들어 졌기 때문에 포크 및 비 포크 데몬 모두에 대한 쉬운 자원 제한을 허용합니다.
출처 : 데몬 대결 : 신생 대 런트 대 시스템 대 서커스 대 신
Q # 3 : 다른 init 시스템으로 전환 할 때 잃을 것이 있습니까?
아마도 Upstart 또는 sysV init를 통해 시스템으로 전환 할 때 가장 큰 경고는 많은 새로운 복잡성을 수용해야한다는 것입니다. Systemd는 움직이는 부분이 많고 기능이 풍부하고 기능이 추가되어 모든 작동 방식에 대해 이해하는 데 상당한 시간을 소비 할 수 있습니다.
Q # 4 : 시스템 관리는 다른 시스템과 어떻게 비교됩니까?
Q # 3에 대한 위의 답변에 명시된 바와 같이. 다시 한 번 반복하겠습니다. sysV init가 몇 시간에서 며칠 동안 관리하고 탐색하는 방법을 배우는 것이 사소한 경우 Upstart는 속도를 높이는 데 일주일 이상이 걸리고 systemd는 훨씬 더 오래 걸릴 수 있습니다. .service
sysV init에서 즐기는 것과 똑같이 편리하게 서비스를 중지 / 시작할 수있는 자체 파일을 생성 할 수있는 충분한 정보를 얻을 수 있습니다.