systemd-nspawn --network-interface=ppp0
ppp0 исчезнет из пространства имен хоста. Вы не можете поделиться одним IP-адресом с контейнером, а не другими своими IP-адресами. (Помимо NAT).
Похоже, что для этого может потребоваться самое последнее ядро. http://www.spinics.net/lists/netdev/msg339236.html
ИЛИ (машина создается после ppp0):
systemd-nspawn --private-network ip link set dev ppp0 netns $PID
где $ PID - это pid в пространстве имен хоста процесса в контейнере , полученное с использованием
P=$(machinectl $MACHINE_NAME show --property=Leader) PID=${P#Leader=}
и
$ MACHINE_NAME
- это значение, переданное в параметр-M
вsystemd-nspawn
POSIX не определяет -p
или -i
. В GNU coreutils
они помечены как непереносимые, как вы указываете; реализация по умолчанию опирается на две необязательные функции операционной системы, форму с тремя аргументами sysinfo (2)
(из SunOS) и форму с шестью аргументами sysctl (3 )
(из BSD; ни один из них не доступен в Linux).
Таким образом, в Debian и производных дистрибутивах (кроме Ubuntu и его производных) вы просто получаете unknown
.
В Fedora и связанных дистрибутивах uname
исправлен , чтобы вернуть тип компьютера ( -m
) в качестве процессора ( -p
) и аппаратную платформу ( -i
), причем последняя настроена для создания i386
для любого значения формы i? 86
.
В Ubuntu и производных версиях используется вариант патча Fedora, который дополнительно проверяет наличие процессоров AMD на процессорах i686
и вместо этого производит Athlon
.
Прочтите страницу info
, она более подробная:
'- i'
'- hardware-platform'
Вывести название аппаратной платформы (иногда называемой аппаратной реализацией). Выведите 'unknown', если ядро не делает эту информацию легко доступной, как в случае с ядрами Linux.
'- p'
'- processor'
Выведите тип процессора (иногда называемый архитектурой набора инструкций или ISA). Выведите 'unknown', если ядро не делает эту информацию легко доступной, как в случае с ядрами Linux .