Usuario desconocido en archivo statoverride

Tenía una aplicación instalada en mi htpc que ejecuta el servidor ubuntu llamado mediatomb, hace unos meses lo desinstalé y lo reemplacé con una instalación de Plex. Durante el fin de semana, al consultar a los usuarios existentes en la máquina, noté que el grupo y el usuario de mediatomb todavía existían, así que usé el comando

sudo deluser mediatomb 

para eliminar el usuario. Un día o más tarde, fui a instalar htop sudo apt-get install htop pero encontré que estaba recibiendo un error:

error de syntax: usuario desconocido ‘mediatomb’ en el archivo statoverride.

Pensé que solo sería capaz de abrir el archivo statoverride usando nano y editar cualquier referencia a mediatomb pero no pude abrir el archivo correctamente usando nano. Corrí un comando grep

grep 'mediatomb' /var/lib/dpkg/statoverride

que devolvió dos ubicaciones en el archivo que ya no existen en el sistema. La única forma en que puedo solucionar el problema por ahora es volver a crear la mediatomb del usuario y luego todo funciona bien. Obviamente, esta no es una buena solución a largo plazo.

Lo que me gustaría saber es, ¿qué es el archivo statoverride y por qué retiene a los usuarios que se han eliminado del sistema? ¿Estoy eliminando a los usuarios de forma incorrecta o en desuso?

Sé que esta pregunta es un poco vieja, pero me he topado con esto dos veces. Una vez con puppet , una vez con virtualbox . Surgió de nuevo y encontré algo que funcionó. Es una variación en serverfault.com .

En lugar de confiar en dpkg-statoverride --remove /path/to/offending/file.ext , lo que arroja el error

 dpkg: unrecoverable fatal error, aborting: syntax error: unknown group offendinggroup in statoverride file 

Puede ser elegante con sed , o simplemente puede abrir /var/lib/dpkg/statoverride en su editor de texto favorito y eliminar solo las líneas que contienen los elementos que causaron el error. Encontré que este es un error documentado, tanto para Debian como para Ubuntu,

Dicho esto, simplemente arreglé el mío editando manualmente cualquier entrada que arrojara un error, y estoy felizmente descargando paquetes nuevamente. Espero que esto ayude a la siguiente persona, que visita este resultado de búsqueda número 1 de Google para este problema.

Si bien no puedo responder a tu pregunta como te he pedido, puedo ayudarte con tu dilema. Experimenté exactamente el mismo problema que tiene después de usar “Cuentas de usuario” para eliminar “backuppc” del usuario, un usuario que configuré manualmente para las copias de seguridad. Bueno, deseché esa ruta pero no intenté eliminar al usuario hasta un par de semanas más tarde (IE, hoy). No había estado experimentando ningún problema hasta que Update Manager encontró e intentó aplicar las actualizaciones; el proceso fallaría la lectura

 dpkg: unrecoverable fatal error, aborting: syntax error: unknown user 'backuppc' in statoverride file W: Waited for dpkg --assert-multi-arch but it wasn't there - dpkgGo (10: No child processes) E: Sub-process /usr/bin/dpkg returned an error code (2) A package failed to install. Trying to recover: 

Después de algunas búsquedas encontré una solución.

 [email protected] ~ $ cat /var/lib/dpkg/statoverride root postdrop 2555 /usr/sbin/postdrop root postdrop 2555 /usr/sbin/postqueue root mlocate 2755 /usr/bin/mlocate postfix postdrop 2710 /var/spool/postfix/public backuppc www-data 4750 /usr/lib/backuppc/cgi-bin/index.cgi root ssl-cert 710 /etc/ssl/private root crontab 2755 /usr/bin/crontab 

Se corrigió ejecutando: sudo sed -i ‘/ backuppc / d’ / var / lib / dpkg / statoverride

 [email protected] ~ $ sudo sed -i '/backuppc/d' /var/lib/dpkg/statoverride; cat /var/lib/dpkg/statoverride [sudo] password for x: root postdrop 2555 /usr/sbin/postdrop root postdrop 2555 /usr/sbin/postqueue root mlocate 2755 /usr/bin/mlocate postfix postdrop 2710 /var/spool/postfix/public root ssl-cert 710 /etc/ssl/private root crontab 2755 /usr/bin/crontab 

Lo siento, no puedo responder tu pregunta, pero este fue el segundo resultado en Google, así que quería poner una solución aquí para las personas. Mi respuesta se originó en http://rickfoosusa.blogspot.com/2012/04/howto-ubuntu-unknown-user-in.html .

Estaba recibiendo el siguiente error:

 dpkg: unrecoverable fatal error, aborting: syntax error: unknown group "crontab" in statoverride file, E: Sub-process /usr/bin/dpkg returned an error code (2) dpkg: unrecoverable fatal error, aborting: unknown group 'messagebus' in statoverride file E: Sub-process /usr/bin/dpkg returned an error code (2) 

El siguiente comando solucionó mi problema de instalación de apt-get

 sudo sed -i '/crontab/d' /var/lib/dpkg/statoverride 

Puede cambiar la palabra crontab pero mantenga el ‘/ d’ hasta que pueda instalar con éxito cualquier apt-get sin ningún error de syntax.

 [email protected]:~# sudo sed -i '/messagebus/d' /var/lib/dpkg/statoverride [email protected]:~# apt-get install wifite Reading package lists... Done 

Es porque puede haber eliminado el usuario y ahora dpkg consulta /etc/passwd para comparar con el archivo statoverride, verifica que todas las entradas del archivo statoverride estén en el passwd, y si no lo están, emita una advertencia, que es que esta pasando.

Esto se puede arreglar fácilmente si reconfigura / reinstala el paquete relevante (en su caso, fue mediatomb , puede ser cualquier otra cosa, por suerte Debian (el sistema operativo en el que se basa Ubuntu) usa el mismo nombre de usuario que el nombre del proyecto, normalmente) y se (re) creará el usuario en el archivo de contraseña.

 sudo apt-get --reinstall install package 

o

 sudo dpkg-reconfigure package 

Cuando instalé DelugeD, creó un usuario llamado debian-deuged. Más tarde, cambié la configuración de Diluvio para usar otra ID de usuario y eliminé el usuario creado automáticamente. Esto resultó en statoverride error de statoverride al instalar el velocímetro del paquete.

sudo nano /var/lib/dpkg/statoverride y sudo nano /var/lib/dpkg/statoverride manualmente al usuario creado automáticamente con el ID de usuario asignado y el error se resolvió.

Tuve un error similar y lo arreglé haciendo primero una copia de seguridad del archivo statoverride y luego eliminando todas las líneas que contienen la palabra postdrop .

Recuerde agregar una nueva línea al final del archivo statoverride .