El usuario XXXX no existe: ¿está usando root?

El usuario XXXX no existe: ¿está usando root?

En makefile, utilicé el comando 'instalar' como se muestra a continuación

comando:'instalar -o 1010 -g 100 -m 0755 -D ruta'

en lugar de verificar el nombre de usuario y el nombre del grupo, me gustaría verificar uid y gid.

Considere el siguiente escenario.

Paso 1:

Sistema 1: El usuario correspondiente al UID 1010 es “XXXX”. Usando el “Sistema 1”, cree el instalador RPM.

Paso 2:

Sistema 2: El usuario correspondiente al UID 1010 es "AAAA". Al instalar el archivo RPM, recibimos un mensaje de advertencia que dice "advertencia: el usuario XXXX no existe - usando root"

En este paso, asumo que el UID del usuario que inició sesión debe ser igual a "1010" para que el instalador de RPM se instale correctamente. Pero lo que realmente sucede es que el instalador de RPM espera que el nombre de usuario sea el mismo en el sistema de instalación.

Respuesta1

Bueno, en diferentes máquinas, uid/oid/gid puede tener diferentes valores a menos que estés usando algo como LDAP. Incluso entonces, los usuarios que estén definidos en su sistema tendrán sus propios ID. No hay garantía de que el usuario exista en otra máquina.

¿Quizás debería explicar más su caso de uso?

Respuesta2

Utilice la %filessección del archivo de su RPM .specpara establecer la propiedad esperada en el sistema instalado (Sistema 2 en su pregunta).

También puede utilizar la %presección del archivo de su RPM .specpara determinar si los usuarios y grupos esperados realmente existen en el sistema instalado (Sistema 2 en su pregunta).

%files
# Set file permissions and ownership

%pre
# Check if expected user 'myuser' exists. If not, exit with an error.
# Check if expected group 'mygroup' exists. If not, exit with an error

Lectura adicional enrpm.org.

información relacionada