nvidia-304パッケージを削除しようとすると、「UnicodeDecodeError: 'utf-8'コーデックが位置0のバイト0xffをデコードできませんでした:無効な開始バイト」エラー

nvidia-304パッケージを削除しようとすると、「UnicodeDecodeError: 'utf-8'コーデックが位置0のバイト0xffをデコードできませんでした:無効な開始バイト」エラー

nvidia-304私のシステム(Ubuntu 14.04)からパッケージを削除しようとすると、次のエラーが発生します。

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)

削除したい理由は

  1. 未使用
  2. fslintnvidia-304パッケージが完全に構成されていないため、インストールに失敗しました。

すべての問題は、バージョン13.10から14.04 LTSにアップグレードした後に開始されました。

この問題をどのように解決できますか?

ベストアンサー1

正確なエラーは次のとおりです。

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

中間コードという意味では修正して修正することはできません。は抜け穴開発者の観点から見ると、IMOは変更が簡単です(ファイルエンコードの変更)。これでパッケージを削除する唯一の方法は強制的に行うことです。どんな状況でもこれを行わないことをお勧めします。

私はこれが/usr/share/ubuntu-drivers-common/quirks/put_your_quirks_hereダミーファイルであるように見え、問題の原因である可能性があることがわかりました。file /usr/share/ubuntu-drivers-common/quirks/*次のようにファイルがUTF-8でないことを確認する必要があります。

$ 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

そのファイルでない場合は、すべてASCII text削除してパッケージの削除を再試行することをお勧めします。

おすすめ記事