В каких файлах init level / etc / profile или / etc / environment читаются?

TL: DR : В каком файле начального уровня / etc / profile или / etc / environment читаются?

Я хочу создать службу ( /etc/init.d/myservice ), начиная скрипт оболочки, расположенный в /opt/myservice/myservice.sh . Однако это место ( /opt/myservice/ ) определено во время установки, поэтому оно не является фиксированным.

  • удалите номер версии с низкой версией
  • Сценарий оболочки для ssh на сервер Unix / Linux из MacOS X 10.10
  • Grep текст, соответствующий шаблону
  • Аргу слишком длинная ошибка при использовании find
  • Выполнить ./script.sh vs bash script.sh - отклонено разрешение
  • Как создать несколько файлов tar с помощью сценария bash и использовать дату в качестве имен файлов?
  • Предположим, что я установил переменную среды в /etc/profile или /etc/environment например MYSERVICE_PATH=/opt/myservice , установите # Default-Start: 3 4 5 в файле /etc/init.d/myservice .

    Могу ли я с уверенностью предположить, что $MYSERVICE_PATH всегда будет доступен на этих уровнях инициализации (3,4,5), поэтому мой сценарий инициализации может вызвать sh $MYSERVICE_PATH/myservice.sh ?

  • Лучший способ обмена именами файлов
  • Общение с bash с помощью grunt shell
  • bash: невозможно установить переменную в сплошную строку
  • Заменить текст / строку новой строкой
  • Как читать и делать min / max / avg из потока NMEA
  • Тест POSIX и -a
  • One Solution collect form web for “В каких файлах init level / etc / profile или / etc / environment читаются?”

    Вы можете искать неправильное место для хранения информации о конфигурации приложения.

    /etc/profile используется для настройки параметров по умолчанию для систем входа (например, при включении SSHing и вызове bash в качестве оболочки входа). Его цель заключается не в настройке местоположений установки приложений и т.п.

    /etc/ в целом, это именно так. Скорее всего, лучший способ выполнить то, что вы ищете, – это определить файл конфигурации, который всегда работает, например, /etc/myservice.conf , который может выглядеть примерно так:

     # Configuration file for the My Service daemon # # Default settings: # myservice_root - The directory in which the service is installed # Default: /var/run/myservice # myservice_port - The TCP port upon which the service listens for incoming connecitons # Default: 55321 myservice_root=/opt/myservice myservice_port=6466 

    /etc/myservice.conf образом, ваше приложение всегда может посмотреть /etc/myservice.conf для своей конфигурации, независимо от того, в каком месте на файловой системе оно должно быть установлено, а другие системные администраторы могут мгновенно увидеть, для чего этот файл и какие параметры доступны для переконфигурации.

    Linux и Unix - лучшая ОС в мире.