У меня есть служба (Sonatype Nexus), которая не запустилась, так как папка PID (/ var / run / nexus) была удалена.
Есть идеи, как удалить эту папку? При корректной остановке служба nexus удаляет не папку, а только файл pid.
Я использую Ubuntu.
Дай угадаю, это первая перезагрузка после установки службы? Если это так, каталог PID не удалялся сам по себе - скорее, каталог, в котором находится каталог PID, представляет собой RAM-диск, который бесцеремонно стирается при каждой загрузке.
Сценарий инициализации, совместимый с Ubuntu, необходим для создания любого каталога в / var / run, который ему нужен для работы. Поскольку, предположительно, сценарий инициализации для службы, которую вы хотите запустить, этого не делает, вам нужно будет изменить его самостоятельно. Это (обычно) так же просто, как добавить mkdir /var/run/nexus
в начало сценария инициализации.
Если вы наберете:
$ df -hT | grep /var/run
none tmpfs 3.9G 84K 3.9G 1% /var/run
вы можете видеть, что это tmpfs
(временная файловая система). Это означает, что все его содержимое будет удалено после перезагрузки.
Чтобы решить вашу проблему, вы можете создать необходимый каталог в сценарии запуска или создать файл pid непосредственно под /var/run
.