“Erro UnicodeDecodeError: 'utf-8' codec não pode decodificar byte 0xff na posição 0: byte de início inválido” ao tentar remover o pacote nvidia-304

1

Estou tentando remover o pacote nvidia-304 do meu sistema (Ubuntu 14.04), mas estou recebendo este erro:

Do you want to continue? [Y/n] y
(Reading database ... 283298 files and directories currently installed.)
Removing nvidia-304 (304.117-0ubuntu1) ...
Removing all DKMS Modules
Error! There are no instances of module: nvidia-304
304.117 located in the DKMS tree.
Done.
update-alternatives: using /usr/lib/x86_64-linux-gnu/mesa/ld.so.conf to provide /etc/ld.so.conf.d/x86_64-linux-gnu_GL.conf (x86_64-linux-gnu_gl_conf) in auto mode
update-alternatives: using /usr/lib/i386-linux-gnu/mesa/ld.so.conf to provide /etc/ld.so.conf.d/i386-linux-gnu_GL.conf (i386-linux-gnu_gl_conf) in auto mode
INFO:Disable nvidia-304
DEBUG:Parsing /usr/share/ubuntu-drivers-common/quirks/dell_latitude
DEBUG:Parsing /usr/share/ubuntu-drivers-common/quirks/lenovo_thinkpad
DEBUG:Parsing /usr/share/ubuntu-drivers-common/quirks/put_your_quirks_here
Traceback (most recent call last):
  File "/usr/bin/quirks-handler", line 65, in <module>
    operation_status = main(options)
  File "/usr/bin/quirks-handler", line 48, in main
    quirks = Quirks.quirkapplier.QuirkChecker(options.package_disable, path=quirks_path)
  File "/usr/lib/python3/dist-packages/Quirks/quirkapplier.py", line 38, in __init__
    self._system_info = self.get_system_info()
  File "/usr/lib/python3/dist-packages/Quirks/quirkapplier.py", line 64, in get_system_info
    return quirk_info.get_dmi_info()
  File "/usr/lib/python3/dist-packages/Quirks/quirkinfo.py", line 46, in get_dmi_info
    'class', 'dmi', 'id', item)).read().strip()
  File "/usr/lib/python3.4/codecs.py", line 313, in decode
    (result, consumed) = self._buffer_decode(data, self.errors, final)
UnicodeDecodeError: 'utf-8' codec can't decode byte 0xff in position 0: invalid start byte
dpkg: error processing package nvidia-304 (--purge):
 subprocess installed pre-removal script returned error exit status 1
Processing triggers for libc-bin (2.19-0ubuntu6.3) ...
Errors were encountered while processing:
 nvidia-304
E: Sub-process /usr/bin/dpkg returned an error code (1)

Eu quero removê-lo porque

  1. não é usado
  2. a tentativa de instalar o fslint falha devido ao pacote nvidia-304 não estar totalmente configurado

Todos os problemas só começaram após a atualização da versão 13.10 para a 14.04 LTS.

Como posso corrigir esse problema?

    
por adaniluk 01.09.2014 / 21:42

1 resposta

1

O erro exato está aqui:

UnicodeDecodeError: 'utf-8' codec can't decode byte 0xff in position 0: invalid start byte

Você não pode consertá-lo no sentido de regularizar o código e corrigi-lo. É um bug que o IMO será muito fácil de corrigir do desenvolvedor perspectiva (modifique a codificação do arquivo). Agora, a única maneira de remover o pacote é com força, que eu não recomendo para nenhum caso .

Eu vejo que /usr/share/ubuntu-drivers-common/quirks/put_your_quirks_here parece ser um arquivo fictício e, provavelmente, a causa de problemas. Você deve verificar com file /usr/share/ubuntu-drivers-common/quirks/* sempre que houver arquivos não UTF-8, assim:

$ file /mnt/usr/share/ubuntu-drivers-common/quirks/*
/mnt/usr/share/ubuntu-drivers-common/quirks/dell_latitude:        ASCII text
/mnt/usr/share/ubuntu-drivers-common/quirks/lenovo_thinkpad:      ASCII text
/mnt/usr/share/ubuntu-drivers-common/quirks/put_your_quirks_here: empty

Se esses arquivos não forem ASCII text , considere removê-los e tente remover o pacote novamente.

    
por 01.09.2014 / 23:49