우분투 이미지의 nspawn이 실패하는 이유는 무엇입니까?

우분투 이미지의 nspawn이 실패하는 이유는 무엇입니까?

나는 Ubuntu 미러를 원합니다 systemd-nspawn(yakkety, 호스트도 yakkety에 있습니다). 예전에는 문제 없이 작동했는데, 지난 6개월 동안 뭔가 변화가 있었던 것 같아요.

다음을 통해 이미지를 만들었습니다 debootstrap.

# debootstrap --variant=minbase --include=nano,dbus,isc-dhcp-client,iputils-ping,iproute2,python3 yakkety yakkety http://fr.archive.ubuntu.com/ubuntu

그런 다음 시작하려고합니다.

# machinectl start yakkety

오류 메시지는 없지만 컨테이너가 시작되지 않습니다. journalctl -xe오류가 노출되었습니다.

Feb 27 13:24:27 srv systemd-nspawn[27348]: execv(/usr/lib/systemd/systemd, /lib/systemd/systemd, /sbin/init) failed: No such file or directory

초기화할 게 없는 것 같죠?생성된 이미지로 이 작업을 수행하는 것이 어떻게 가능합니까 debootstrap? 그렇지 않으면 이미지가 정상적으로 보입니다(일반적인 폴더와 바이너리가 포함되어 있습니다. 단, 존재하지 않기 때문에 시작되지 않는 위의 폴더는 제외).

직접 호출하면 systemd-nspawn동일한 오류가 발생합니다.

# systemd-nspawn -b -D yakkety -n
Spawning container yakkety on /var/lib/machines/yakkety.
Press ^] three times within 1s to kill container.
execv(/usr/lib/systemd/systemd, /lib/systemd/systemd, /sbin/init) failed: No such file or directory
Container yakkety failed with error code 1.

systemdinit사전 설치될 패키지의 목록에 및 패키지를 추가하여 ( python3위의 예 이후) 이미지를 다시 생성하려고 시도했지만 아무 것도 변경되지 않았습니다.

문제가 무엇입니까?추가 패키지를 설치해야 합니까? (이전에는 특별한 것을 설치하지 않았 xenial으며 기억이 정확하지도 않습니다 yakkety).

모든 패키지는 systemd(233)을 포함한 최신 버전입니다.

답변1

systemd와 같은 컨테이너 내부에 init 시스템을 설치해야 합니다.

chroot /var/lib/machines/yakkety
apt-get install systemd

데비안에서도 같은 문제가 있었는데 이것이 문제를 해결했습니다.

관련 정보