У меня есть сервис, с WorkingDirectory=/srv/ctr/current
которым есть символическая ссылка.
Похоже, служба не перехватывает изменения в символической ссылке при перезапуске. Журнал ошибок сообщает /srv/ctr/releases/69
как местоположение, но /srv/ctr/current
указывает на /srv/ctr/releases/72
. Есть ли какой-нибудь способ, которым я могу получить systemd, чтобы узнать о новом изменении каталога?
@ morloch да, я попробовал это. Служба, на которой я работаю, является resque . Мне интересно, хранится ли путь как-то в самой работе.
—
Рид Г. Лоу
Попробуйте добавить
—
Morloch
ExecStartPre=/bin/pwd -P
к своему сервису, перезагрузите / перезапустите сервис и проверьте журналы. По крайней мере, тогда вы будете знать, если это systemd или resque ...
@morloch, который работал, и теперь он как-то находит правильный каталог.
—
Рид Г. Лоу
Я была такая же проблема. SystemD преобразует SymLink в фактический путь и использует его. Я не нашел способ отключить это поведение. Теперь я просто переместил свои материалы в цель символической ссылки и создал новую ссылку в другом направлении ...
—
Мартин Раушер,
systemctl daemon-reload
? Может вызвать перечитывание символической ссылки.