Debian で破損したパッケージを修正する方法は?

Debian で破損したパッケージを修正する方法は?

Debianを実行しているReadyNASでSSH証明書を更新しようとしています。数ヶ月前に更新されたApacheおよびその他のパッケージのファームウェアのアップグレードにより、毎晩実行されるLet's Encryptの更新プロセスが中断された可能性があります。スクリプトが実行されると、次の出力が表示されます。

root@GeoffNAS:/home/admin# ./letsencrypt-renew.sh 
Bootstrapping dependencies for Debian-based OSes... (you can skip this with --no-bootstrap)
**(snip for brevity)**
virtualenv is already the newest version (15.1.0+ds-2+rnx1).
Some packages could not be installed. This may mean that you have
requested an impossible situation or if you are using the unstable
distribution that some required packages have not yet been created
or been moved out of Incoming.
The following information may help to resolve the situation:

The following packages have unmet dependencies:
 python-virtualenv : Depends: python-pip-whl (>= 8.1.1-2) but 1.5.6-5 is to be installed
E: Unable to correct problems, you have held broken packages.
root@GeoffNAS:/home/admin# 

apt-get Upgradeを実行すると、次のようになります。

root@GeoffNAS:/home/admin# apt-get upgrade
Reading package lists... Done
Building dependency tree       
Reading state information... Done
Calculating upgrade... Done
The following package was automatically installed and is no longer required:
  python-pkg-resources
Use 'apt autoremove' to remove it.
The following packages have been kept back:
  python3-virtualenv
0 upgraded, 0 newly installed, 0 to remove and 1 not upgraded.
1 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 nfs-kernel-server (1:1.2.8-9+deb8u1) ...
debconf: unable to initialize frontend: Dialog
debconf: (No usable dialog-like program is installed, so the dialog based frontend cannot be used. at /usr/share/perl5/Debconf/FrontEnd/Dialog.pm line 76.)
debconf: falling back to frontend: Readline
debconf: unable to initialize frontend: Dialog
debconf: (No usable dialog-like program is installed, so the dialog based frontend cannot be used. at /usr/share/perl5/Debconf/FrontEnd/Dialog.pm line 76.)
debconf: falling back to frontend: Readline
update-rc.d: error: initscript does not exist: /etc/init.d/nfs-kernel-server
dpkg: error processing package nfs-kernel-server (--configure):
 subprocess installed post-installation script returned error exit status 1
Errors were encountered while processing:
 nfs-kernel-server
E: Sub-process /usr/bin/dpkg returned an error code (1)
root@GeoffNAS:/home/admin# 

python3-virtualenvを修正してこの問題を解決する方法を知っていますか? Let's Encryptサブスクリプションを自動的に更新するには、この機能が必要です。

ご協力ありがとうございます!

答え1

私のコンピュータに直接ログインして見ることができる信頼できる地元の友達がいます。彼はそれを調べることができ、それはいくつかの組み合わせであることが判明しました。歴史のためにここに彼の研究の結果を要約します。

  • 実際、Netjear ReadyNAS OS6はDebian Jessieと同じで、Jessieリポジトリからインポートされます。
  • 過去に Netgear がアップデートを進めていたときに、他の問題を修正している間に誤っていくつかの Debian リポジトリを削除しました。
  • 公式のDebian / Netgear / JessieリポジトリとStretchからインポートされたように見えるサードパーティのアドイン(rnxtras)によって追加されたリポジトリとの間にも競合があります。

私の友人はリポジトリを解放し、破損したパッケージの正しいバージョンを削除して再インストールし、後で間違ったリポジトリからインポートしないように固定することができました。 Let's EncryptはエラーなしでAptを呼び出し、証明書を正しく更新するようになりました。

助けてくれてありがとう!

関連情報