데비안 안정 버전이 cgmanager를 먼저 설치하는 이유는 무엇입니까?

데비안 안정 버전이 cgmanager를 먼저 설치하는 이유는 무엇입니까?

Debian Unstable 컨테이너를 사용 debootstrap하고 시작합니다. systemd-nspawn호스트 시스템은 Debian Jessie입니다.

systemctl컨테이너에 실패한 서비스가 있음을 보여줍니다 cgproxy. ( cgmanager데몬이 실행 중이지만 호스트 시스템에 설치해도 도움이 되지 않습니다 cgmanager).

컨테이너에서 제거하는 방법을 묻는 경우 apt-get제거 및 설치가 권장됩니다.cgmanagersystemd-shimsystemd-sysvaptitudesystemd-shim

$ aptitude why cgmanager
i   systemd        Recommends libpam-systemd                        
i A libpam-systemd Depends    systemd-shim (>= 10-3~) | systemd-sysv
i A systemd-shim   Depends    cgmanager (>= 0.32)
  • 무엇에 따라 또는 중 하나가 제공될 libpam-systemd수 있습니까 ? 설명에는 "sysvinit를 대체하기 위해 systemd에 필요한 매뉴얼 페이지와 링크"가 있다고만 나와 있습니다.systemd-shimsystemd-sysvsystemd-sysv
  • 패키지를 libpam-systemd선호하는 이유는 무엇입니까?systemd-shimsystemd-sysv
  • 간접 설치가 없도록 전환하면 systemd-shim의도 cgmanager한 기능이 손실됩니까?

답변1

libpam-systemd는 구체적으로 무엇에 의존하며, systemd-shim 또는 systemd-sysv 중 하나에서 제공할 수 있나요? systemd-sysv에 대한 설명에는 "sysvinit를 대체하기 위해 systemd에 필요한 매뉴얼 페이지와 링크"가 있다고만 나와 있습니다.

나는 그것이 systemd-그것의 일부라고 생각합니다 :-P.

libpam-systemd에서 사용하도록 설계되었습니다 systemd. 또는 다른 초기화 시스템을 사용하여 시작하는 경우 systemd와 함께 사용됩니다.틈 메우는 물건.

당신은 이름 때문에 약간 오해를 받았습니다 systemd-sysv. 이는 사용자 프로그램에 대한 이전 버전과의 호환성을 제공하는 것 이상의 역할을 합니다. 또한 에서 까지의 심볼릭 링크를 생성하여 systemd커널 로딩을 위한 기본 초기화 시스템으로 설정합니다 ./sbin/init/lib/systemd/systemd

libpam-systemd패키지 종속성은 systemd가 기본 초기화 시스템인 경우에만 운영 체제가 시작된다고 가정합니다 .systemd

결론적으로:데비안에 systemd를 설치하려면 일반적으로 systemd-sysv 패키지를 설치해야 합니다.

혼란스러운 진짜 이유는 systemd-nspawn. systemd-nspawn평소에 init 시스템을 검색하는 것 같은데 ,그런 다음 다시/lib/systemd/systemd.

Linux 커널을 사용하여(예: 가상 머신에서) 이 설치를 부팅하려고 하면 기본 초기화 시스템이 설정되어 있지 않다는 것을 알 수 있습니다.

    if (!try_to_run_init_process("/sbin/init") ||
        !try_to_run_init_process("/etc/init") ||
        !try_to_run_init_process("/bin/init") ||
        !try_to_run_init_process("/bin/sh"))
        return 0;

    panic("No working init found.  Try passing init= option to kernel. "
"See Linux Documentation/admin-guide/init.rst for guidance.");

https://github.com/torvalds/linux/blob/v4.11/init/main.c#L990

libpam-systemd 패키지가 systemd-sysv보다 systemd-shim을 선호하는 이유는 무엇입니까?

아마도 일부 패키지는 libpam-systemd에 의존할 것입니다. 종속성으로 도입되면 systemd-sysv가 종속성으로 표시되지 않은 경우 설치를 원하지 않는 것으로 가정됩니다. 그렇게 하면 초기화 시스템이 변경됩니다! 대신 호환 스페이서를 설치하는 것이 좋습니다.

systemd-shim 및 cgmanager가 간접적으로 설치되지 않도록 전환하면 의도한 기능이 손실됩니까?

아니요.

관련 정보