Как запустить программу в контейнере как службу с помощью systemd-nspawn, systemd-run?

Как запустить программу прослушивания (в частности, unoconv как слушатель) внутри контейнера с помощью systemd-nspawn , чтобы он мог работать в фоновом режиме (без консоли) и быть достигнут другими процессами? Например, в идеальном мире это было бы так просто:

 # something like this to start the container and program in background systemd-nspawn -D <container path> --background <unoconv --listener> # something like this to connect to container and execute command systemd-run --machine <machine name> <unoconv -f pdf file.txt> 

Самое длинное, что я до сих пор использую, это руководство , которое запускает контейнер в фоновом режиме с помощью machinectl . Однако sudo systemd-run --machine <machine name> ls завершается с ошибкой:

 Failed to create bus connection: Permission denied. 

Мой вопрос в два раза. Один, вы можете решить эту ошибку? Или два (желательно) вы можете дать мне более простой способ начать и подключиться к контейнеру и запустить команды?

(Я запускаю Ubuntu Xenial на защищенной машине без доступа в Интернет)

One Solution collect form web for “Как запустить программу в контейнере как службу с помощью systemd-nspawn, systemd-run?”

Я думаю, это зависит от того, как часто вы хотите запускать контейнер и когда.

Если это то, что вы хотите запустить, как только Ubuntu загружается, каждый раз, когда компьютер запускается, я бы рекомендовал попробовать настройки Startup Applications . Вы можете добавить что-либо, что функционирует как команда терминала, как процесс запуска приложения. Кроме того, вы можете собрать скрипт, а затем запустить сценарий в качестве процесса запуска, что даст вам более тонкий контроль. (Имейте в виду, что элементы в списке «Запуск приложений» выполняются в алфавитном порядке по полю «Имя», поэтому, если порядок выполнения важен, укажите его соответственно или просто создайте сценарий запуска и сделайте это единственным вызовом .)

Если вы хотите запустить программу с конкретным временем повторения / датой, я бы рекомендовал собрать задание cron, чтобы сделать то же самое.

Если вы хотите запустить его по требованию … не уверен в этом. Я не слишком хорошо знаком с systemd-nspawn; возможно эта статья или эта статья поможет.

На вопрос 1, я в тупике. Может быть, Typo в названии машины? Несоответствие между разрешениями контейнера ОС и вариантами проверки подлинности с помощью systemd-run? Вы можете попробовать sshd или контейнер докера, если ничего не работает.

Конечно, если вы на самом деле печатаете его как « --machine <machine name> », изменение его на « --machine=<machine name> » может просто исправить. :П

  • Ubuntu Не удалось очистить пакет
  • krusader - одиночная очередь вместо нескольких очередей
  • Установите постоянную переменную среды для всех пользователей
  • Будет ли установка kali linux автоматически добавлять загрузчик grub, даже если у меня уже есть?
  • vcenter сервер в Linux?
  • Как мне разбить жесткий диск?
  • Как использовать sudo в Fedora?
  • Как использовать команду «memusage» для проверки использования памяти конкретной программой
  • Отключить команду «shutdown» и «poweroff» в Ubuntu
  • Ubuntu wifi подключается и работает в течение 5 минут, затем перестает работать, оставаясь подключенным, нужна помощь
  • Ubuntu 16 stop lightdm и начать xinit / xterm
  • Interesting Posts

    Что мне не нужно делать резервными копиями?

    Какой пакет необходимо установить для команды getacl?

    Проверьте, существует ли файл файла в другом файле и обновляется конкретный столбец первого файла

    Как создать файл systemd для установки тома при загрузке?

    Отображать скорость передачи при выполнении «cp» из командной строки?

    Принудительное fsck во время загрузки корневой файловой системы (до установки файловых систем без однопользовательского режима)

    Как исправить частые сбои openhot?

    IPTABLES: обрабатывать пакет локально и отправлять копию другому хосту

    Пакеты исходящих соединений tcp dump

    Таймаут при установке EFS на EC2

    Процесс Java зависает, пока я не использую 100% CPU

    Распечатайте до (и включив) n-е появление шаблона в строке

    Проблема пунктуации с использованием grep для получения n слов вокруг токена

    Отправляется ли процесс отказа от сигналов, отличных от SIGHUP?

    Обнаружение повреждения SD-карты

    Linux и Unix - лучшая ОС в мире.