Поверните запуск программы вручную, чтобы автоматически запускать программу при загрузке

Вы?

Дело в том, что вам не нужно это делать. Использование /opt - это соглашение. Я бы рекомендовал использовать его, но это не является строго необходимым.

Из иерархии файловых систем Linux: Глава 1. Иерархия файловых систем Linux:

1.13. / opt Этот каталог зарезервирован для всего программного обеспечения и дополнительных пакетов, которые не являются частью стандартной установки. Например, здесь можно найти пакеты StarOffice, Kylix, Netscape Communicator и WordPerfect. Чтобы соответствовать FSSTND, все сторонние приложения должны быть установлены в этом каталоге. Любой пакет, который должен быть установлен здесь, должен находить свои статические файлы (например, дополнительные шрифты, клипарт, файлы базы данных), должен находить свои статические файлы в отдельном дереве каталогов / opt / 'package' или / opt / 'provider' (аналогично тому, как это делается в котором Windows будет устанавливать новое программное обеспечение в свое собственное дерево каталогов. C: \ Windows \ Progam Files \ «Название программы»), где «package» - это имя, которое описывает пакет программного обеспечения, а «поставщик» - это зарегистрированное имя LANANA провайдера. Хотя большинство дистрибутивов пренебрегают созданием каталогов / opt / bin, / opt / doc, / opt / include, / opt / info, / opt / lib и / opt / man, они зарезервированы для использования локальным системным администратором. Пакеты могут предоставлять «интерфейсные» файлы, предназначенные для размещения (путем связывания или копирования) этих зарезервированных каталогов системным администратором, но должны нормально функционировать при отсутствии этих зарезервированных каталогов. Программы, вызываемые пользователями, находятся в каталоге / opt / 'package' / bin. Если пакет включает страницы руководства UNIX, они расположены в / opt / 'package' / man и должны использоваться те же подструктуры, что и / usr / share / man. Пакетные файлы, которые являются переменными, должны быть установлены в / var / opt. Конфигурационные файлы, специфичные для хоста, устанавливаются в / etc / opt. Ни при каких обстоятельствах другие файлы пакетов не существуют за пределами иерархии / opt, / var / opt и / etc / opt, за исключением тех файлов пакетов, которые должны находиться в определенных местах в дереве файловой системы для правильной работы. Например, файлы блокировки устройства в / var / lock и устройства в / dev. Распределения могут устанавливать программное обеспечение в / opt, но не должны изменять или удалять программное обеспечение, установленное локальным системным администратором, без согласия местного системного администратора. Использование / opt для дополнительного программного обеспечения - это хорошо зарекомендовавшая себя практика в сообществе UNIX. Бинарный интерфейс прикладного программного обеспечения System V [AT & amp; T 1990], основанный на определении интерфейса системы V (третье издание) и стандарте Intel Binary Compatibility Standard v. 2 (iBCS2), обеспечивает структуру / opt, очень похожую на ту, которая определена здесь. Как правило, все данные, необходимые для поддержки пакета в системе, должны присутствовать в / opt / 'package', включая файлы, предназначенные для копирования в / etc / opt / 'package' и / var / opt / 'package', а также зарезервированные каталоги в / opt. Меньшие ограничения на распределение с использованием / opt необходимы, поскольку возможны конфликты между установленным дистрибутивом и локально установленным программным обеспечением, особенно в случае фиксированных путей, найденных в некоторых двоичных программах. Структура каталогов ниже / opt / 'provider' оставлена ​​до упаковщика программного обеспечения, хотя рекомендуется установить пакеты в / opt / 'provider' / 'package' и следовать аналогичной структуре с рекомендациями для / опт / пакет. Действительная причина для отклонения от этой структуры - это пакеты поддержки, которые могут иметь файлы, установленные в / opt / 'provider' / lib или / opt / 'provider' / bin.
1
задан 1 September 2017 в 19:02

2 ответа

Здесь я вижу несколько проблем:

Ошибки синтаксиса кода, которые ваш код должен выглядеть следующим образом: [Unit] Description=starts up the osrm service After=network.target [Service] Type=daemon WorkingDirectory=/home/christian/osrm/ User=christian ExecStart=/usr/local/bin/osrm-routed data/map.osrm [Install] WantedBy=multi-user.target /usr/local/bin/osrm-routed представляется каталогом, а не файлом executable. Запустите file /usr/local/bin/osrm-routed, чтобы точно определить, но я думаю, вы можете это знать, просто перейдя в него. Примечание. Не знаю, какую программу вы пытаетесь запустить, поэтому параметр Type может быть Type=[simple|daemon|oneshot|forking|notify|idle]

Дополнительная информация:

https://access.redhat.com /documentation/en-US/Red_Hat_Enterprise_Linux/7/html/System_Administrators_Guide/sect-Managing_Services_with_systemd-Unit_Files.html

https://access.redhat.com/documentation/en-US/Red_Hat_Enterprise_Linux/ 7 / html / System_Administrators_Guide / секта-Managing_Services_with_systemd-Unit_Files.html

2
ответ дан 18 July 2018 в 07:34

Здесь я вижу несколько проблем:

Ошибки синтаксиса кода, которые ваш код должен выглядеть следующим образом: [Unit] Description=starts up the osrm service After=network.target [Service] Type=daemon WorkingDirectory=/home/christian/osrm/ User=christian ExecStart=/usr/local/bin/osrm-routed data/map.osrm [Install] WantedBy=multi-user.target /usr/local/bin/osrm-routed представляется каталогом, а не файлом executable. Запустите file /usr/local/bin/osrm-routed, чтобы точно определить, но я думаю, вы можете это знать, просто перейдя в него. Примечание. Не знаю, какую программу вы пытаетесь запустить, поэтому параметр Type может быть Type=[simple|daemon|oneshot|forking|notify|idle]

Дополнительная информация:

https://access.redhat.com /documentation/en-US/Red_Hat_Enterprise_Linux/7/html/System_Administrators_Guide/sect-Managing_Services_with_systemd-Unit_Files.html

https://access.redhat.com/documentation/en-US/Red_Hat_Enterprise_Linux/ 7 / html / System_Administrators_Guide / секта-Managing_Services_with_systemd-Unit_Files.html

2
ответ дан 24 July 2018 в 18:49

Другие вопросы по тегам:

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