El paquete qqq.deb
instala el programa qqq
que debe ejecutarse desde uqqq
la cuenta de usuario. El paquete consta del qqq
programa, el qqq.conf
archivo de configuración y el /etc/init.d/qqq
initscript.
¿Cómo debe gestionar el paquete la creación del usuario uqqq
? ¿Existen mejores prácticas o pautas oficiales sobre esto?
- Simplemente cree el usuario automáticamente
uqqq
en postinst; - Cree el usuario automáticamente en el primer inicio desde el
/etc/init.d/qqq
script; - Cree el usuario automáticamente en el primer inicio del
qqq
programa (sin argumentos) - No cree ninguna cuenta de usuario, rechace comenzar a menos que el usuario haya sido creado explícitamente por el administrador (por ejemplo, usando
qqq --create-user
); - No cree cuentas de usuario, ejecute de forma segura desde la raíz de forma predeterminada;
- Pregunte interactivamente en postinst, script init.d o el
qqq
mismo si crear un usuario.
¿Debería el paquete eliminar la cuenta de usuario cuando se desinstala?
grep adduser /var/lib/dpkg/info/*.postinst
en cualquier sistema basado en Debian para obtener muchos ejemplos.adduser
se usa, también debe depender del paquete. Ver: lintian.debian.org/tags/…Respuestas:
El wiki de Debian tiene una guía más completa y específica que el Manual de políticas de Debian ya mencionado. Ver AccountHandlingInMaintainerScripts :
El consejo que brinda para eliminar cuentas no es concluyente. Sin embargo, notaré que el consejo correspondiente para fedora no se equivoca.
fuente
Como administrador que instala paquetes, esperaría que mis paquetes creen automáticamente los usuarios que requieren en pre o postinst, de modo que cualquier archivo que deba ser propiedad del usuario se pueda crear antes de que se ejecute el programa.
Su programa solo debe ejecutarse como root si es necesario (por ejemplo, vincularse a un puerto privilegiado) e idealmente debería abandonar sus privilegios una vez que haya terminado de hacer lo que se requiere root.
Puede ver cómo otros paquetes (instalados) han manejado esto usando
y leer los archivos enumerados (la mayoría toma más de una línea de opciones).
Por extraño que parezca, todos menos uno de mis paquetes instalados que crean un usuario usan
adduser
para agregar usuarios, pero el paquete adduser no es un paquete obligatorio, por lo que su paquete tendrá que construirse para depender de él. Eluseradd
programa es utilizado por el paquete libuuid1, y es parte delpasswd
paquete que es un paquete requerido.fuente
--quiet
enfoque parece muy popularSección 10.9. Los permisos y propietarios en el Manual de políticas de Debian tienen lo que está buscando (de "versión 3.9.5.0, 2013-10-28"):
Nota: La lista debian-devel es bastante activa y responde a esas preguntas también (aunque ese ejemplo es de 2003).
fuente
adduser
enpostinst
".