Выполнить программу при загрузке в Linux в терминале
Я работаю над проектом Raspbian Debian Jessie на Raspberry Pi Model 2+, и это моя проблема:/
Итак, у меня есть программа (написанная на C++), которую я запускаю с использованием сценария оболочки (сценарий оболочки, по сути, перезапускает мою программу всякий раз, когда происходит сбой, это неразрешимо, поскольку время от времени происходит сбой из-за оборудования, которое я использую ***)
Я искал в Google ответы на вопросы о том, как запустить программу при загрузке, и увидел, что я могу поместить все в RC.local в виде скрипта @/etc/RC.local. Итак, теперь у меня есть это:
sudo /home/pi/Morreels/launcher
в rc.local это запускает процесс, так как я могу убить его, используя killall launcher
после входа в систему. К сожалению, мне нужна эта программа для вывода на терминал, так что вот где я застрял, я видел, как люди запускали терминал и затем отображали коды запуска программы внутри терминала, но разве это не так? грязное исправление?
Я чувствую, что должна быть какая-то опция, например -lx в конце моей команды, чтобы она выводилась в терминал, нет?
К сожалению, об этом я, кажется, ничего не нахожу, и если бы я ДОЛЖЕН использовать вышеупомянутое грязное исправление, я хотел бы получить некоторую помощь, так как мне кажется, что я не могу заставить это работать...
2 ответа
Зачем вам нужен вывод в терминале? Когда запускаются rc-скрипты, просто нет доступного терминала для перенаправления вывода.
Может быть, лог-файл может помочь вам здесь? Например, перенаправить вывод в /var/log/morreels_launcher.log, а затем проверить этот файл вместо терминала?
PS: sudo не должно быть необходимым в rc-скриптах.
Если вы имеете в виду текстовый терминал: launcher > /dev/console
(или же &> console
также перенаправить stderr). Если вы имеете в виду терминал X11, это зависит от оконного менеджера. Для gnome в главном меню есть графический интерфейс, который вы можете использовать для настройки запуска приложений X11.