Сценарий запуска не выполняется после перезагрузки в Solaris

У меня есть команда запускать Apache в /etc/rc3.d , который не выполняется при перезагрузке сервера. Сценарий называется S75Apache2 . Кто-то предположил, что это связано с тем, что ссылка имеет название «A» в названии и может работать, если переименована в S75apache2 .

Может ли кто-нибудь подтвердить? Я искал документацию, но не могу найти ответ. Я не могу проверить это, не перезагружая сервер снова (чего я бы предпочел не делать).

3 Solutions collect form web for “Сценарий запуска не выполняется после перезагрузки в Solaris”

Сценарии инициализации Solaris – это боль. Столица-A не имеет значения, в файле /etc/rc.d есть скрипт, который находит каждый файл в /etc/rc3.d который начинается с «S» и запускает их в порядке чисел.

Это дает вам возможность начать с основы:

  1. /etc/rc3.d/S75Apache2 ли исполняемый файл /etc/rc3.d/S75Apache2 ?

  2. У этого сценария есть '#!' линия? Правильно ли строка (нет непечатаемых байтов и т. Д.)?

  3. Если это сценарий bash или ksh, запустите его как запуск ksh -n /etc/rc3.d/S75Apache2 start . Это скажет вам, есть ли у него синтаксические ошибки.

  4. Если вы можете запустить этот скрипт с правами /etc/rc3.d/S75Apache2 start , попробуйте: /etc/rc3.d/S75Apache2 start и /etc/rc3.d/S75Apache2 stop Проверьте внимательно, чтобы узнать, запускает ли он httpd и останавливает httpd . По крайней мере, запустите скрипт с параметрами «start» и «stop». Используйте set -x чтобы увидеть, что делает скрипт во время выполнения. Проверьте, соответствует ли то, что он делает, что вы считаете.

  5. /etc/rc3.d/S75Apache2 прочитайте /etc/rc3.d/S75Apache2 . PATH редко загружается при загрузке, и ваш скрипт может не знать, где находятся некоторые исполняемые файлы во время загрузки, но может быть запущен после загрузки. Постарайтесь не принимать слишком много – файлы могут не существовать, как вы думаете, такие вещи.

  6. Убедитесь, что скрипт KnnApache2 не существует в /etc/rc3.d . Я утверждаю, что init Solaris будет запускаться (например), когда K76Apache2 stop когда он переходит из уровня запуска 3 для запуска уровня 5.

  7. Убедитесь, что сценарий изменяет идентификатор пользователя соответствующим образом. Это, вероятно, не важно для Apache, учитывая, что ваш скрипт, вероятно, просто вызывает apachectl start с некоторыми командами пролога, но если вы запустите http напрямую, убедитесь, что в результате процесса httpd есть правильный идентификатор пользователя. Используйте sudo или что-то в скрипте, чтобы понять это правильно.

Оказывается, в скрипте запуска была ошибка: переменная LD_LIBRARY_PATH не была установлена ​​должным образом. Определение того, что в скрипте устранит проблему.

Для справки в будущем имеется файл журнала, содержащий сообщения о запуске, в которых содержится ошибка, которая привела к решению нашей проблемы. Файл:

 /var/svc/log/milestone-multi-user-server:default.log 

Я нашел ссылку на это в файле /etc/rc3.d/README. Еще один день, еще один самородок знаний!

Вы загрузили свой собственный Apache (т. Е. Скомпилировали его из исходного кода) или просто используете Apache, который поставляется с предустановленной ОС Solaris 10?

Ну, это не имеет значения, если вы находитесь на Solaris 10 (или позже), как вы говорите, вы не должны использовать скрипты инициализации Solaris вообще , вы должны использовать SMF. (да, технически сценарии инициализации по-прежнему поддерживаются, но, как вы указываете, это боль, а SMF намного лучше)

Чтобы запустить (теперь, а также автоматически после повторной загрузки) веб-сервер Apache 2.2, который предварительно устанавливается с помощью Solaris 10, просто выполните следующее:

 svcadm enable / network / http: apache2

Если вы загрузили свой собственный Apache, вам нужно создать манифест SMF, импортировать манифест и выйти из него. Просто Google для «SMF Solaris», и вы найдете множество рецептов.

  • По какой причине DVD-ROM HP C7499A не должен работать на старой Sun Ultra Enterprise II?
  • / var / adm / wtmpx: слишком большое значение для определенного типа данных
  • Solaris tar: «Не удалось создать символическую ссылку: не каталог»
  • Как удалить эту папку в Solaris?
  • Конфигурация syslog - повторное оповещение?
  • Solaris 11 случайно разбился
  • Где я могу получить пакет SUNWsan для Solaris?
  • Cifs (samba) Разрешить доступ к разрешению (unix + zfs)
  • Как найти сведения о соединении LDAP, которые использует поле Solaris для аутентификации пользователей?
  • Будет ли когда-нибудь Solaris 12?
  • Как дождаться загрузки зоны Solaris (первый раз)
  • Linux и Unix - лучшая ОС в мире.