Ubuntuでの大規模アップデート後のdpkgエラー

Ubuntuでの大規模アップデート後のdpkgエラー

以前は多少廃棄されたコンピュータを更新していますが、そのパッケージの大規模な更新が必要です。マシンはUbuntuであり、適切なアップデート/アップグレード後に次のエラーが発生します。

carpette@carpette:~$ sudo apt clean
carpette@carpette:~$ sudo apt autoremove
    Reading package lists... Done
    Building dependency tree       
    Reading state information... Done
    You might want to run 'apt --fix-broken install' to correct these.
    The following packages have unmet dependencies:
     libpam-systemd : Depends: systemd (= 232-19)
     plymouth : Depends: systemd (>= 232-8~)
    E: Unmet dependencies. Try 'apt --fix-broken install' with no packages (or specify a solution).
carpette@carpette:~$ sudo apt --fix-broken install
    Reading package lists... Done
    Building dependency tree       
    Reading state information... Done
    Correcting dependencies... Done
    The following additional packages will be installed:
      systemd
    Suggested packages:
      systemd-ui systemd-container
    The following NEW packages will be installed:
      systemd
    0 upgraded, 1 newly installed, 0 to remove and 461 not upgraded.
    56 not fully installed or removed.
    Need to get 2466 kB of archives.
    After this operation, 9564 kB of additional disk space will be used.
    Do you want to continue? [Y/n] 
    Get:1 http://http.us.debian.org/debian testing/main amd64 systemd amd64 232-19 [2466 kB]
    Fetched 2466 kB in 1s (2170 kB/s) 
    (Reading database ... 61585 files and directories currently installed.)
    Preparing to unpack .../systemd_232-19_amd64.deb ...
    Unpacking systemd (232-19) ...
    dpkg: error processing archive /var/cache/apt/archives/systemd_232-19_amd64.deb (--unpack):
     trying to overwrite '/bin/loginctl', which is also in package systemd-services 204-5ubuntu20.24
    dpkg-deb: error: subprocess paste was killed by signal (Broken pipe)
    Errors were encountered while processing:
     /var/cache/apt/archives/systemd_232-19_amd64.deb
    E: Sub-process /usr/bin/dpkg returned an error code (1)

ご覧のとおり、まだ更新する必要があるパッケージがたくさんありますが、私はこのsystemdパッケージに固執します。あまりインストールしたくなく、必ず入手すべきかわからず、ただ最新バージョンにアップデートされるようにマシンをアップデートしたいだけです。

このマシンは現在apache2デーモンであるmysqlを実行しており、いくつかの小さなWebサイトで使用されています。メンテナンス中にオフにすることができます(長すぎない場合)。

実際、これはマシンの説明です。

carpette@carpette:~$ cat /etc/lsb-release 
    DISTRIB_ID=Ubuntu
    DISTRIB_RELEASE=14.04
    DISTRIB_CODENAME=trusty
    DISTRIB_DESCRIPTION="Ubuntu 14.04.2 LTS"

答え1

〜のようにスティーブンジッタコメントで述べたように、テスト用にシステムをUbuntu 14.04からDebianにアップグレードしたいようです。それは動作しません。手がかりは、次のシェル出力行にあります。

    Get:1 http://http.us.debian.org/debian testing/main amd64 systemd amd64 232-19 [2466 kB]

http.us.debian.orgそこに見えますか?これはUbuntuリポジトリの場所ではありません。systemdこれはシステムの絶対的なコアパッケージの1つです。あなたが何をしようとしても、これはあなたがやっていることが間違っているという明確な兆候です。

私の考えでは、DebianリポジトリをUbuntuシステムのパッケージマネージャ構成に追加し、暗黙的または明示的に「アップグレード」を実行しようとしているようです。

あなたのシステムは現在DebianとUbuntuの間のハイブリッド状態にある可能性があります。私は、それが終了したり、再起動した場合、少なくとも大規模な修理なしで戻ってくる可能性がないと思います。

UbuntuとDebianはどちらもLinuxカーネルを使用し、どちらも同様のパッケージを使用しますが、システム間のアップグレードはサポートされていません(アップグレードと呼ばれることは躊躇します)。この時点で最良のオプションは、システムから重要なファイルを削除し、好みのLinuxディストリビューションがインストールされている新しいシステムに移行することです。

それ可能パッケージマネージャの設定をUbuntu設定に戻して実行すると、システムが利用apt-get dist-upgrade可能な状態に戻る可能性がありますが、やり直すと状況が悪化する可能性があります。現在のDebianテストでは、現在のUbuntuバージョン(14.04はもちろん)よりも最新のパッケージバージョンをリリースする可能性があるだけでなく、パッケージバージョンのアップグレードを介して設定ファイルを再構築するなどの作業も実行できます。固定ができないという言葉ではありませんが、はいこれは貴重なものよりも多くの問題を引き起こすことがほぼ確実です。そして、不快に思わないでください。しかし、この罠に陥れば何も使わずに抜け出せるのか疑問です。重要ポータブル。この場合、ヘリコプターの構造を要求する方が良い選択です。

関連情報