Как запустить скрипт Bash в фоновом режиме

Я думаю, вы можете решить эту проблему, используя цель tee в сочетании с сетевыми пространствами имен.

  • Поместите один из интерфейсов WAN в собственное сетевое пространство имен
  • Соедините сетевые пространства имен с помощью пары VETH.
  • В пространстве имен основной сети используйте цель TEE для отправки копии трафика в пространство имен вторичной сети.
  • Маскируйте трафик TEED во втором сетевом пространстве имен.

Из документации мне не ясно, меняет ли TEE IP-адрес назначения для второй копии или просто меняет следующий переход. Если он изменит IP-адрес назначения, вам придется отменить это во втором сетевом пространстве имен.

1
14.02.2020, 14:15
2 ответа

Описываемая вами задача, к сожалению, не может быть выполнена путем простой отправки процесса в фоновом режиме на удаленную машину. Даже если вы начали с

user@remote~$./script &

он будет убит, если ваше SSH-соединение разорвется.

Вместо этого вам придется использовать программное обеспечение для мультиплексирования терминала, такое какtmuxили screen(. Доступность может зависеть от конкретной операционной системы ).

1
28.04.2021, 23:23

Вы можете использовать nohup. Но screen— это то, что вы, вероятно, ищете.

2
28.04.2021, 23:23

Теги

Похожие вопросы