Ubuntu
touch: не может касаться `/var/run/test.pid ': разрешение отклонено
Я запускаю start-stop-daemon и хотел бы записать PID-файл в / var / run start-stop-daemon, запущенный от имени my-program-user
/ var / run - это корневой каталог drwxr-xr-x 9
Мне нравится избегать помещения my-program-user в корневую группу.
источник
/var/run/mydaemon
каталог исчез./tmp
или~
.это не будет работать, так как будет потеряно при следующей перезагрузке (
/var/run
это tmpfs в Ubuntu).Единственное возможное решение - запустить mkdir и chmod как часть сценариев запуска.
источник
Вы можете попробовать это. Создайте каталог / var / run / test /, а затем измените разрешение этого каталога на того же пользователя, с которым работает ваша программа. msgstr "chown / var / run / test /". Теперь в вашем приложении измените местоположение файла PID на /var/run/test/test.pid. Это должно заставить вещи работать на вас.
источник
Как насчет использования «липкого» бита в / var / run?
chmod + t / var / run?
Вероятно, испортят некоторые другие приложения, но, похоже, это было бы другое решение.
Однако сейчас я остановлюсь на создании отдельной папки / var / run.
источник
Записи в
/etc/permissions
постоянны. Сделайте запись там, чтобы сделать владение и разрешения для каталога постоянным.источник
Чтобы не помещать вашу программу-пользователя в корневую группу, разрешите другим доступ на запись:
источник
chmod 757
также будет работать только до следующей перезагрузки. Извините за создание нового ответа, но, похоже, нет возможности ответить на другой комментарий.chmod
дальше/var/run
. Автор, возможно, подразумевал это для подкаталога приложения. Не уверен, что вся эта суета.