miércoles, 9 de noviembre de 2016

Solucionando - dpkg-query: error: --listfiles necesita un nombre de paquete legal, pero `python-pil' no lo es: nombre ambiguo de paquete 'python-pil' con más de una instancia instalada

Haciendo un crossgrade[0] de Jessie desde i386 a amd64 me encontré que
no podía desinstalar un paquete por el siguiente error [1]:

--------------------------- INICIO ERROR
------------------------------------------
Leyendo lista de paquetes...
Creando árbol de dependencias...
Leyendo la información de estado...
Corrigiendo dependencias... Listo
Los paquetes indicados a continuación se instalaron de forma
automática y ya no son necesarios.
fuseiso9660 libumlib0
Utilice «apt-get autoremove» para eliminarlos.
Los siguientes paquetes se ELIMINARÁN:
python-pil:i386
0 actualizados, 0 nuevos se instalarán, 1 para eliminar y 9 no actualizados.
7 no instalados del todo o eliminados.
Se liberarán 1157 kB después de esta operación.
¿Desea continuar? [Y/n] E: No se pudo escribir el informe (¿Está
montado «/dev/pts»?) - posix_openpt (2: No existe el fichero o el
directorio)
(Leyendo la base de datos ... 235257 ficheros o directorios instalados
actualmente.)
Desinstalando python-pil:i386 (2.6.1-2+deb8u2) ...

dpkg-query: error: --listfiles necesita un nombre de paquete legal,
pero `python-pil' no lo es: nombre ambiguo de paquete 'python-pil' con
más de una instancia instalada

Utilice --help para obtener ayuda de la consulta de paquetes.
Traceback (most recent call last):
File "/usr/bin/pyclean", line 117, in <module>
main()
File "/usr/bin/pyclean", line 101, in main
pfiles = set(dpf.filter_out_ext(pfiles, ('.so',)))
File "/usr/share/python/debpython/files.py", line 77, in filter_out_ext
for fn in files:
File "/usr/share/python/debpython/namespace.py", line 77, in
add_namespace_files
for fn in files:
File "/usr/share/python/debpython/files.py", line 53, in from_package
raise Exception("cannot get content of %s" % package_name)
Exception: cannot get content of python-pil
dpkg: error al procesar el paquete python-pil:i386 (--remove):
el subproceso instalado el script pre-removal devolvió el código de
salida de error 1
dpkg-query: error: --listfiles necesita un nombre de paquete legal,
pero `python-pil' no lo es: nombre ambiguo de paquete 'python-pil' con
más de una instancia instalada

Utilice --help para obtener ayuda de la consulta de paquetes.
Traceback (most recent call last):
File "/usr/bin/pycompile", line 289, in <module>
main()
File "/usr/bin/pycompile", line 262, in main
options.force, options.optimize, e_patterns)
File "/usr/bin/pycompile", line 154, in compile
for fn, versions_to_compile in filter_files(files, e_patterns, versions):
File "/usr/bin/pycompile", line 109, in filter_files
for fn in files:
File "/usr/share/python/debpython/files.py", line 77, in filter_out_ext
for fn in files:
File "/usr/share/python/debpython/namespace.py", line 77, in
add_namespace_files
for fn in files:
File "/usr/share/python/debpython/files.py", line 69, in filter_public
for fn in files:
File "/usr/share/python/debpython/files.py", line 53, in from_package
raise Exception("cannot get content of %s" % package_name)
Exception: cannot get content of python-pil
dpkg: error al reorganizar:
el subproceso instalado el script post-installation devolvió el
código de salida de error 1
Se encontraron errores al procesar:
python-pil:i386
E: Sub-process /usr/bin/dpkg returned an error code (1)
---------------------------- FIN ERROR
---------------------------------------------

y haciendo un dpkg -l | grep python-pil

iF python-pil:amd64 2.6.1-2+deb8u2
amd64 Python Imaging Library (Pillow fork)
rF python-pil:i386 2.6.1-2+deb8u2
i386 Python Imaging Library (Pillow fork)


la solución fue:

a) Hacer copia de seguridad del fichero:
/var/lib/dpkg/status

b) editar el fichero arriba mencionado y buscar el paquete:
python-pil y renombrar la entrada del paquete amd64 a python-pil2

c) luego hacer el apt-get install -f fallido

d) luego volver a la normalidad el nombre del paquete cambiado previamente

Espero les sirva.

Fuentes consultadas:
[0] https://wiki.debian.org/CrossGrading
[1] https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=810551

--
§~^Calabaza^~§ from Paraguay

No hay comentarios:

Publicar un comentario