Ubuntu
touch: no se puede tocar `/var/run/test.pid ': permiso denegado
Estoy comenzando start-stop-daemon y me gusta escribir el archivo PID en / var / run start-stop-daemon se ejecuta como my-program-user
La configuración / var / run es raíz raíz drwxr-xr-x 9
Me gusta evitar poner my-program-user en el grupo raíz.
fuente
/var/run/mydaemon
directorio desapareció./tmp
o~
.esto no funcionará, ya que se perderá en el próximo reinicio (
/var/run
es un tmpfs en Ubuntu).La única solución factible es ejecutar mkdir y chmod como parte de los scripts de inicio.
fuente
Puedes probar esto. Cree un directorio / var / run / test / y luego cambie el permiso de este directorio al mismo usuario que ejecuta su programa. "chown / var / run / test /". Ahora en su aplicación, cambie la ubicación del archivo PID a /var/run/test/test.pid. Esto debería hacer que las cosas funcionen para usted.
fuente
¿Qué pasa con el uso del bit "pegajoso" en / var / run?
chmod + t / var / run?
Probablemente estropee algunas otras aplicaciones, pero parece que sería otra solución.
Sin embargo, me quedaré con la creación de una carpeta / var / run separada por ahora.
fuente
Las entradas en el
/etc/permissions
son permanentes. Haga una entrada allí para hacer que la propiedad y los permisos de un directorio sean permanentes.fuente
Para evitar poner a su usuario del programa en el grupo raíz, permita que otros escriban acceso:
fuente
chmod 757
también solo funcionará hasta el próximo reinicio. Perdón por crear una nueva respuesta, pero parece que no hay forma de responder al otro comentario.chmod
encendido/var/run
. El autor puede haberlo significado para el subdirectorio de la aplicación. No estoy seguro de qué se trata todo este alboroto.