web-dev-qa-db-ja.com

pythonパッケージ(Debian)のインストール時にdpkgがエラーを返す

Pdfshuffler(Debianリポジトリから)をインストールしようとした後、依存関係の問題に関連するエラーが表示されました。 python-pypdf2パッケージが必要なようだったので、インストールしようとしましたが、同じエラーメッセージが表示されました。同様の問題を調べた後、apt-get clean、install-f、autoremoveなどを試しましたが、役に立たず、処理中に発生したエラーのリストは増え続けています。 apt-getのアップグレード後に発生するエラーを残します。

Reading package lists... Done
Building dependency tree       
Reading state information... Done
Calculating upgrade... Done
The following packages have been kept back:
  mendeleydesktop
0 upgraded, 0 newly installed, 0 to remove and 1 not upgraded.
15 not fully installed or removed.
After this operation, 0 B of additional disk space will be used.
Do you want to continue? [Y/n] y
Setting up python-crypto (2.6.1-7) ...
Traceback (most recent call last):
  File "/usr/bin/pycompile", line 27, in <module>
    import optparse
  File "/usr/lib/python2.7/optparse.py", line 1557
    print(self.get_usage(), file=file)
                                ^
SyntaxError: invalid syntax
dpkg: error processing package python-crypto (--configure):
 subprocess installed post-installation script returned error exit status 1
Setting up python-wheel (0.29.0-2) ...
Traceback (most recent call last):
  File "/usr/bin/pycompile", line 27, in <module>
    import optparse

  File "/usr/lib/python2.7/optparse.py", line 1557
    print(self.get_usage(), file=file)
                                ^
SyntaxError: invalid syntax
dpkg: error processing package python-wheel (--configure):
 subprocess installed post-installation script returned error exit status 1
Setting up python-roman (2.0.0-2) ...
Traceback (most recent call last):
  File "/usr/bin/pycompile", line 27, in <module>
    import optparse
  File "/usr/lib/python2.7/optparse.py", line 1557
    print(self.get_usage(), file=file)
                                ^
SyntaxError: invalid syntax
dpkg: error processing package python-roman (--configure):                                                                                                                                                     
 subprocess installed post-installation script returned error exit status 1                                                                                                                                    
Setting up python-pypdf2 (1.26.0-2) ...                                                                                                                                                                        
Traceback (most recent call last):                                                                                                                                                                             
  File "/usr/bin/pycompile", line 27, in <module>                                                                                                                                                              
    import optparse                                                                                                                                                                                            
  File "/usr/lib/python2.7/optparse.py", line 1557                                                                                                                                                             
    print(self.get_usage(), file=file)                                                                                                                                                                         
                                ^                                                                                                                                                                              
SyntaxError: invalid syntax                                                                                                                                                                                    
dpkg: error processing package python-pypdf2 (--configure):                                                                                                                                                    
 subprocess installed post-installation script returned error exit status 1                                                                                                                                    
dpkg: dependency problems prevent configuration of python-keyrings.alt:                                                                                                                                        
 python-keyrings.alt depends on python-crypto; however:                                                                                                                                                        
  Package python-crypto is not configured yet.                                                                                                                                                                 

dpkg: error processing package python-keyrings.alt (--configure):                                                                                                                                              
 dependency problems - leaving unconfigured                                                                                                                                                                    
Setting up python-gi (3.22.0-2) ...                                                                                                                                                                            
Traceback (most recent call last):                                                                                                                                                                             
  File "/usr/bin/pycompile", line 27, in <module>                                                                                                                                                              
    import optparse
  File "/usr/lib/python2.7/optparse.py", line 1557
    print(self.get_usage(), file=file)
                                ^
SyntaxError: invalid syntax
dpkg: error processing package python-gi (--configure):
 subprocess installed post-installation script returned error exit status 1
Setting up python-epydoc (3.0.1+dfsg-14) ...
Traceback (most recent call last):
  File "/usr/bin/pycompile", line 27, in <module>
    import optparse
  File "/usr/lib/python2.7/optparse.py", line 1557
    print(self.get_usage(), file=file)
                                ^
SyntaxError: invalid syntax
dpkg: error processing package python-epydoc (--configure):
 subprocess installed post-installation script returned error exit status 1
dpkg: dependency problems prevent configuration of pdfshuffler:
 pdfshuffler depends on python-pypdf2 | python-pypdf (>= 1.10); however:
  Package python-pypdf2 is not configured yet.
  Package python-pypdf is not installed.

dpkg: error processing package pdfshuffler (--configure):
 dependency problems - leaving unconfigured
Setting up python-dbus (1.2.4-1+b1) ...
Remove stale byte-compiled files...
Traceback (most recent call last):
  File "/usr/bin/pycompile", line 27, in <module>
    import optparse
  File "/usr/lib/python2.7/optparse.py", line 1557
    print(self.get_usage(), file=file)
                                ^
SyntaxError: invalid syntax
dpkg: error processing package python-dbus (--configure):
 subprocess installed post-installation script returned error exit status 1
Setting up python-xdg (0.25-4) ...
Traceback (most recent call last):
  File "/usr/bin/pycompile", line 27, in <module>
    import optparse
  File "/usr/lib/python2.7/optparse.py", line 1557
    print(self.get_usage(), file=file)
                                ^
SyntaxError: invalid syntax
dpkg: error processing package python-xdg (--configure):
 subprocess installed post-installation script returned error exit status 1
dpkg: dependency problems prevent configuration of python-secretstorage:
 python-secretstorage depends on python-dbus; however:
  Package python-dbus is not configured yet.

dpkg: error processing package python-secretstorage (--configure):
 dependency problems - leaving unconfigured
dpkg: dependency problems prevent configuration of python-docutils:
 python-docutils depends on python-roman; however:
  Package python-roman is not configured yet.

dpkg: error processing package python-docutils (--configure):
 dependency problems - leaving unconfigured
dpkg: dependency problems prevent configuration of python-keyring:
 python-keyring depends on python-dbus; however:
  Package python-dbus is not configured yet.
 python-keyring depends on python-secretstorage; however:
  Package python-secretstorage is not configured yet.

dpkg: error processing package python-keyring (--configure):
 dependency problems - leaving unconfigured
dpkg: dependency problems prevent configuration of python-gobject:
 python-gobject depends on python-gi (>= 3.22.0-2); however:
  Package python-gi is not configured yet.

dpkg: error processing package python-gobject (--configure):
 dependency problems - leaving unconfigured
dpkg: dependency problems prevent configuration of python-poppler:
 python-poppler depends on python-gobject (>= 2.10.1); however:
  Package python-gobject is not configured yet.

dpkg: error processing package python-poppler (--configure):
 dependency problems - leaving unconfigured
Errors were encountered while processing:
 python-crypto
 python-wheel
 python-roman
 python-pypdf2
 python-keyrings.alt
 python-gi
 python-epydoc
 pdfshuffler
 python-dbus
 python-xdg
 python-secretstorage
 python-docutils
 python-keyring
 python-gobject
 python-poppler
E: Sub-process /usr/bin/dpkg returned an error code (1)

Sudo apt-get install任意のpython-PACKAGEを使用。/var/lib/dpkg/statusファイルを編集して、適切にインストールまたは構成されていないpythonパッケージのエントリを削除しましたが、それでも役に立たなかった(同じ問題が再インストールしようとしたときに再び表示された)またはこれらのパッケージを削除しました)。

何か案が?

ありがとうございました!

(システム:KDEプラズマを使用したDebianストレッチ。I78500U 16Gb)

Filipe Branderburger のコメントに従って、optparse.pyでエラーを探しました:

eric@debian:~$ dpkg -S /usr/lib/python2.7/optparse.py
libpython2.7-minimal:AMD64: /usr/lib/python2.7/optparse.py
eric@debian:~$ dpkg -V libpython2.7-minimal
??5??????   /usr/lib/python2.7/optparse.py
eric@debian:~$ ls -l /usr/lib/python2.7/optparse.py
-rw-r--r-- 1 eric eric 60337 Mar 20 00:01 /usr/lib/python2.7/optparse.py
eric@debian:~$ readlink -f /usr/lib/python2.7/optparse.py
/usr/lib/python2.7/optparse.py

Md5sum検証が失敗したことを意味しますか?

1
E Speranza

そのため、Python 2.7インストールのファイルoptparse.pyが破損したようです。具体的には、上書きされてPythonのoptparse.pyのコピーに置き換えられたようです。3。

dpkg -Vの出力は、所有者、グループ、モードなどをチェックする多くのフィールドを示しています。出力の5は、システム内のファイルのMD5チェックサムがパッケージマニフェスト内のファイルと一致しないことを示しています。 (つまり、パッケージのインストール後に内容が変更されています。)

どうしてそれを引き起こしたのかをどうやって見つけることができるのか本当にわからない...ルートとしてPythonモジュールをインストールした場合は、OS以外のものを使用してください。パッケージの配布、それはそれを説明するかもしれません...多分pipを使って何かをインストールしたなら?通常、pipはPython 2とPython 3のモジュールを別々に保つのが得意ですが、なぜoptparse.pyが影響を受けるのかわかりません。具体的には...

いずれの場合でも、この問題を修正するには、パッケージを再インストールするようにapt-getに要求できます。これにより、破損が修正されます。

$ Sudo apt-get install --reinstall libpython2.7-minimal
0
filbranden