2

У меня есть вопрос о работе с /etc/init.d сценарием оболочки.

Все, что я хочу сделать, это удалить файл из команды внутри сценария оболочки следующим образом:

case $1 in

stop)
  echo "Stopping"
  rm -f /var/run/memcached/memcached.pid

esac

Я сохраняю его в качестве теста и создаю файл memcached.pid .

Когда я запускаю /etc/init.d/test останавливаясь на скрипте из папки /etc/init.d/ файл memcached.pid не удаляется.

Когда я запускаю скрипт из моего домашнего каталога, он работает нормально.

Существует ли специальный формат или структура команды, которая необходима?

1 ответ1

2

Используйте полный путь к rm; подтвердите, что то же самое в вашей системе:

 /usr/bin/rm -f /var/run/memcached/memcached.pid

В сценариях инициализации обычно не указана переменная окружения PATH (или корни).

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .