Проблема : оболочка видит отдельные команды, такие как «nohup while true» и "do ./mysync.sh" и "sleep 1800" и "done &".
Здесь оболочка обнаруживает проблему с неожиданным "do".
Решение : вам нужно будет сгруппировать ваши команды в один блок, используя кавычки или создав небольшой сценарий оболочки. Отдайте этот блок nohup, и он заработает.
(Решение A) Присоединяйтесь к командам следующим образом:
nohup bash -c "while true; do ./mysync.sh; sleep 1800; done &"
(Решение B) Ставьте команды пока true; делать ./mysync.sh; спать 1800; done &
в mywrapper.sh
и запустите это:
nohup mywrapper.sh