Существует lxd-3.0.3 непривилегированный (контейнеры со сдвигом uid, запущенным корнем) на Ubuntu 18.04 (amd64). В контейнере существует Ubuntu 16.04.5 (amd64). Как настроить pptpd на нем? Кажется, что существует проблема с интерфейсом ppp0. Это не доступно.
Здесь, если фрагмент журнала:
Feb 13 19:21:22 blabla100 pppd[25943]: Plugin /usr/lib/pptpd/pptpd-logwtmp.so loaded. Feb 13 19:21:22 blabla100 pppd[25943]: Couldn't open the /dev/ppp device: No such file or directory Feb 13 19:21:22 blabla100 pptpd[25927]: modprobe: ERROR: ../libkmod/libkmod.c:586 kmod_search_moddep() could not open moddep file '/lib/modules/ Feb 13 19:21:22 blabla100 pptpd[25927]: modprobe: FATAL: Module ppp_generic not found in directory /lib/modules Feb 13 19:21:27 blabla100 pptpd[25927]: /usr/sbin/pppd: You need to create the /dev/ppp device node by Feb 13 19:21:27 blabla100 pptpd[25927]: executing the following command as root: Feb 13 19:21:27 blabla100 pptpd[25927]: mknod /dev/ppp c 108 0 Feb 13 19:21:27 blabla100 pppd[25935]: You need to create the /dev/ppp device node by executing the following command as root: mknod /dev/ppp c 108 0
Таким образом, я предполагаю, что должен создать/dev/ppp на хосте, но как позволить получать доступ к нему только в этом контейнере, не других контейнерах.
Устройство посимвольного ввода-вывода Unix /dev/ppp
на хосте способ, для которого можно получить доступ к модулю ядра ppp.ko
. Поэтому необходимо заставить LXD связывать то устройство посимвольного ввода-вывода в контейнер LXD. Вот то, как это сделано:
$ lxc config device add mypptpcontainer mypppdevice unix-char source=/dev/ppp uid=0 gid=0 mode=0600
где:
mypptpcontainer
название Вашего контейнера LXD.mypppdevice
просто название этого устройства LXD. Выберите любое имя.