Я пытаюсь передать файл журнала с одного сервера Linux на другой с помощью ncat и сохранить соединение.
На сервере с файлом у меня есть эта команда, запущенная из сценария bash:
nohup tail -f /var/log/mylogfile | ncat -l -k -p 8080
Кажется, это хорошо работает. Между сеансами соединение остается активным и работает, как ожидалось.
На клиенте, который должен получать файл, у меня есть проблемы. У меня есть сценарий bash на этой машине, который выглядит так:
nohup ncat <ip_address> <port> > /var/log/newLogFile
Если я просто запустил команду ncat <ip_address> <port> > /var/log/newLogFile
с терминала работает хорошо. Однако во второй раз я пытаюсь использовать nohup
или &
убивает соединение - иногда с ошибкой Error: bad file descriptor
Я также пробовал обернуть ncat
соединение в бесконечном цикле на клиентской машине вот так:
while [ 1 ]
do
ncat <ip_address> <port> > /var/log/newLogFile
done
это работало ненадолго, но быстро перестало отправлять журналы.
Я знаю, что эту связь можно сохранить. Я просто не могу понять, что делаю неправильно !!! Есть предположения????