Debian Unstable 컨테이너를 사용 debootstrap
하고 시작합니다. systemd-nspawn
호스트 시스템은 Debian Jessie입니다.
systemctl
컨테이너에 실패한 서비스가 있음을 보여줍니다 cgproxy
. ( cgmanager
데몬이 실행 중이지만 호스트 시스템에 설치해도 도움이 되지 않습니다 cgmanager
).
컨테이너에서 제거하는 방법을 묻는 경우 apt-get
제거 및 설치가 권장됩니다.cgmanager
systemd-shim
systemd-sysv
aptitude
systemd-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-shim
systemd-sysv
systemd-sysv
- 패키지를
libpam-systemd
선호하는 이유는 무엇입니까?systemd-shim
systemd-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가 간접적으로 설치되지 않도록 전환하면 의도한 기능이 손실됩니까?
아니요.