У меня есть TCP-сервер, написанный на C #, который я буду запускать на своем сервере. Я протестировал приложение, работающее на сервере и на стороне клиента, и все работает отлично! Я использую mono на своем сервере Linux для запуска приложения Server.exe. Я экспериментировал со сценариями Upstart и Shell, чтобы приложение Server.exe запускалось в фоновом режиме при запуске. Ни один из них не работал.
Вот сценарий оболочки, который я пробовал:
#! / bin / sh/ usr / bin / mono Server.exe "$ @" &
Затем я отредактировал файл rc.local, находящийся в каталоге / etc, и добавил эту строку:
/usr/local/bin/ClipCloud/start.sh &
Мне что-то здесь не хватает, так как я не могу заставить его работать. Кажется, что процесс запускается и сразу же завершается. Когда я запускаю приложение Server.exe с терминала, просто набирая
mono /usr/local/bin/ClipCloud/Server.exe
он работает нормально и будет продолжать работать, пока я не закрою окно терминала или не наберу "exit"
Я буду рад поделиться чем угодно, чтобы помочь.
У меня тоже была эта проблема. Теперь я могу запускать свое моно-приложение C # при запуске с помощью: http://www.stuffaboutcode.com/2012/06/raspberry-pi-run-program-at-start-up.html
В разделе «start» файла (как указано в приведенной выше ссылке) выполните следующие действия: 1. измените каталог на папку вашего приложения C #: cd / home / pi / myApp 2. в следующей строке добавьте полный путь из «моно» И полный путь к вашему приложению C #. Например: / usr / bin / mono /home/pi/myApp/myApp.exe
в разделе «стоп» я не уверен, как остановить именно «myApp.exe»; но я остановил "моно", дав команду:
killall моно
(по сути, myApp.exe ... но если вы запускаете более одного приложения c # ... протестируйте его.)
Всего наилучшего! :)