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을 실행 중이며 여러 소규모 웹 사이트에 사용됩니다. 유지 관리 중에 끌 수 있습니다(너무 길지 않은 경우).

실제로 이것은 기계에 대한 설명입니다.

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이는 시스템의 절대적인 핵심 패키지 중 하나입니다. 당신이 무엇을 하려고 하든, 이는 당신이 하고 있는 일이 잘못되었다는 분명한 신호입니다.

내 생각에는 데비안 저장소를 Ubuntu 시스템의 패키지 관리자 구성에 추가한 다음 암시적으로 또는 명시적으로 "업그레이드"를 수행하려고 시도하는 것 같습니다.

귀하의 시스템은 현재 Debian과 Ubuntu 사이의 하이브리드 상태에 있을 가능성이 높습니다. 나는 그것이 종료되거나 다시 시작되면 적어도 대대적인 수리 없이는 다시 돌아올 가능성이 없다고 추측합니다.

Ubuntu와 Debian은 모두 Linux 커널을 사용하고 둘 다 비슷한 패키지를 사용하지만 시스템 간 업그레이드는 지원하지 않습니다(업그레이드라고 부르기가 망설여집니다).이 시점에서 가장 좋은 옵션은 시스템에서 중요한 파일을 제거하고 선호하는 Linux 배포판이 설치된 새 시스템으로 마이그레이션하는 것입니다.

그것은가능한패키지 관리자 구성을 다시 Ubuntu 설정으로 변경하고 실행하면 apt-get dist-upgrade시스템이 사용 가능한 상태로 돌아갈 수 있지만, 다시 그렇게 하면 상황이 더 악화될 수도 있습니다. 현재 Debian 테스트에서는 현재 Ubuntu 버전(14.04는 물론)보다 최신 패키지 버전을 출시할 가능성이 있을 뿐만 아니라 패키지 버전 업그레이드를 통해 구성 파일을 다시 작성하는 등의 작업도 수행할 수 있습니다. 고정이 불가능하다는 말은 아니지만,이는 가치 있는 것보다 더 많은 문제를 야기할 것이 거의 확실합니다. 그리고, 불쾌하게 생각하지 마세요. 하지만 이 함정에 빠지면 아무것도 사용하지 않고 빠져나올 수 있을지 의문입니다.중요한휴대용. 이 경우 헬리콥터 구조를 요청하는 것이 더 나은 선택입니다.

관련 정보