Comments 15
Автор кратко показывает, как с помощью debootstrap создать минимальную систему Debian (или совместимую) и затем запустить её на хосте с Arch Linux через systemd-nspawn.
Основная идея: использовать контейнерную среду (что-то среднее между chroot и полноценным контейнером) для запуска узла сети FidoNet/FidoIP без изменений основной системы.
Зачем это нужно?
чтобы запустить старый или специфичный сервис (FidoIP) в изолированной среде, не вмешиваясь в Arch Linux
чтобы использовать systemd-nspawn как лёгкий контейнер без сложной настройки, в отличие от Docker или LXC
чтобы снизить риски: даже при ошибках хост-система останется нетронутой
чтобы протестировать, восстановить или использовать старое ПО, которое лучше работает в Debian
потому что некоторые версии “родных” пакетов в Arch либо более свежие и несовместимые, либо отсутствуют, а в Debian они есть и стабильнее — поэтому сервис проще запустить именно в Debian-окружении
(В статье автор намекает, что под Arch возникали сложности, а в Debian всё “завелось сходу”.)
Ответ: systemd-nspawn создаёт изолированный контейнер с собственными пространствами имён (PID, IPC, файловая система). Это похоже на chroot, но расширено: автоматическое подключение /proc, /sys, /dev, возможность запуска systemd внутри и управление контейнером как сервисом через systemd.
“Лучше” — потому что systemd-nspawn позволяет запускать полноценную систему с systemd, управлять ею через machinectl, интегрируется с systemd на хосте, и контейнер можно запускать/перезапускать как юнит. Это удобнее и чище, чем “голый” chroot.
Не раскрыт смысл systemd-nspawn: что за зверь такой и что дает.
После debootstrap достаточно просто chmod в каталог с установленным debian и можно спокойно работать в нем, даже в случае отличающейся архитектуры при некоторых условиях.
debootstrap --foreign --include=qemu-user-static --arch <ARCH> bookworm ./rootfs/
chroot ./rootfs/ /debootstrap/debootstrap --second-stage
chroot ./rootfs/ /bin/bashПросто nspawn имеет лучшую интеграцию с systemd, и может запускать инит без проблем.
Автор кратко показывает, как с помощью debootstrap создать минимальную систему Debian (или совместимую) и затем запустить её на хосте с Arch Linux через systemd-nspawn.
Основная идея: использовать контейнерную среду (что-то среднее между chroot и полноценным контейнером) для запуска узла сети FidoNet/FidoIP без изменений основной системы.
Зачем это нужно?
чтобы запустить старый или специфичный сервис (FidoIP) в изолированной среде, не вмешиваясь в Arch Linux
чтобы использовать systemd-nspawn как лёгкий контейнер без сложной настройки, в отличие от Docker или LXC
чтобы снизить риски: даже при ошибках хост-система останется нетронутой
чтобы протестировать, восстановить или использовать старое ПО, которое лучше работает в Debian
потому что некоторые версии “родных” пакетов в Arch либо более свежие и несовместимые, либо отсутствуют, а в Debian они есть и стабильнее — поэтому сервис проще запустить именно в Debian-окружении
(В статье автор намекает, что под Arch возникали сложности, а в Debian всё “завелось сходу”.)
Ответ: systemd-nspawn создаёт изолированный контейнер с собственными пространствами имён (PID, IPC, файловая система). Это похоже на chroot, но расширено: автоматическое подключение /proc, /sys, /dev, возможность запуска systemd внутри и управление контейнером как сервисом через systemd.
“Лучше” — потому что systemd-nspawn позволяет запускать полноценную систему с systemd, управлять ею через machinectl, интегрируется с systemd на хосте, и контейнер можно запускать/перезапускать как юнит. Это удобнее и чище, чем “голый” chroot.
Ну что за ужас?!? Как из того мема: "Дорисовываем недостающее..."
Из статьи не понял ничего. Спасибо.
понять бы о чем...
Фидо без модема не интересно. Нет того самого ожидания рабочих часов ноды, времени на загрузку нетмыла и эх. Плюсы только для фэх.
Я еще умудряюсь по модему на 33.6 выкачивать фидошку, дома валяется стенд на V.90, но все ни как руки не доходят выставить его в ГТС.
Ну, как сказать, неинтересно: есть у меня парочка девайсов, скажем так, кривоватых.
То есть, они работают, там внутри вполне вменяемо работает Линукс, но вот сетевой интерфейс безбожно глючит, похоже - аппаратно.
Делать на них что-то сетевое - так себе идея, а вот запустить фидошную ноду, "как раньше - с обрывами и реконнектами" - почему бы и нет?
(да и кто его знает, с этими "белыми списками", не придётся ли возвращаться к истокам, но на более другом уровне...)
Так что решил вот посмотреть на это fidoip. Пока что очень странные впечатления...
systemd-nspawn: запускаем FidoIP на Arch Linux