두 필수 패키지 간의 업그레이드 충돌 해결

두 필수 패키지 간의 업그레이드 충돌 해결

나는 이전 데비안 서버를 jessie에서 Bullseye로 업데이트하려고 합니다. 하지만 sysvinit-utils두 가지 모두에 문제가 있으며 initscripts적용 대상 입니다 /lib/init/vars.sh.

Preparing to unpack .../sysvinit-utils_2.96-7+deb11u1_amd64.deb ...
Unpacking sysvinit-utils (2.96-7+deb11u1) over (2.88dsf-59) ...
dpkg: error processing archive /var/cache/apt/archives/sysvinit-utils_2.96-7+deb11u1_amd64.deb (--unpack):
 trying to overwrite '/lib/init/vars.sh', which is also in package initscripts 2.88dsf-59
dpkg: considering deconfiguration of sysvinit-utils, which would be broken by installation of util-linux ...
dpkg: no, sysvinit-utils is essential, will not deconfigure
 it in order to enable installation of util-linux
dpkg: error processing archive /var/cache/apt/archives/util-linux_2.36.1-8+deb11u1_amd64.deb (--unpack):
 installing util-linux would break existing software
dpkg: considering deconfiguration of util-linux, which would be broken by installation of login ...
dpkg: no, util-linux is essential, will not deconfigure
 it in order to enable installation of login
dpkg: error processing archive /var/cache/apt/archives/login_1%3a4.8.1-1_amd64.deb (--unpack):
 installing login would break existing software
Errors were encountered while processing:
 /var/cache/apt/archives/sysvinit-utils_2.96-7+deb11u1_amd64.deb
 /var/cache/apt/archives/util-linux_2.36.1-8+deb11u1_amd64.deb
 /var/cache/apt/archives/login_1%3a4.8.1-1_amd64.deb
E: Sub-process /usr/bin/dpkg returned an error code (1)

그 기능이 정확히 무엇인지는 모르겠지만 그중 하나를 제거할 수 있는지 확인했지만 모두 꽤 중요해 보입니다.

shylux~ % sudo dpkg -P initscripts
dpkg: dependency problems prevent removal of initscripts:
 rpcbind depends on initscripts (>= 2.88dsf-13.3).
 util-linux depends on initscripts.
 rsyslog depends on initscripts (>= 2.88dsf-13.3).
 resolvconf depends on initscripts (>= 2.88dsf-34).
 systemd depends on initscripts (>= 2.88dsf-53.2); however:
  Package initscripts is to be removed.
 openvpn depends on initscripts (>= 2.88dsf-13.3).
 procps depends on initscripts.
 nfs-common depends on initscripts (>= 2.88dsf-13.3); however:
  Package initscripts is to be removed.
 ifupdown depends on initscripts (>= 2.88dsf-25).
 keyboard-configuration depends on initscripts.

dpkg: error processing package initscripts (--purge):
 dependency problems - not removing
Errors were encountered while processing:
 initscripts

shylux~ % sudo dpkg -P sysvinit-utils
dpkg: error processing package sysvinit-utils (--purge):
 this is an essential package; it should not be removed
Errors were encountered while processing:
 sysvinit-utils

이 문제를 해결하는 방법에 대한 제안 사항이 있습니까? 전체 서버를 다시 설치하는 데는 꽤 시간이 걸립니다.

답변1

업그레이드할 때 두 가지 버전을 건너뛰려고 하는데 작동하지 않을 것입니다. 심지어 단일 버전을 건너뛰는 것도 작동한다는 보장이 없습니다.

현재 상황을 고려하면 먼저 Debian 10으로 업그레이드한 다음 Debian 11로 업그레이드해야 합니다. Debian 10으로 직접 업그레이드해도 작동하지 않으면 9로 업그레이드한 다음 10으로 업그레이드한 다음 11로 업그레이드하세요. 릴리스 노트도 확인하세요.데비안 9,데비안 10그리고데비안 11에는 업그레이드 과정에서 주의해야 할 사항이 나열되어 있습니다.

답변2

제 생각에는 @Stephen Kitt가 이미 쓴 것처럼 Debian 11로 업그레이드하지 않을 것입니다.

업그레이드 프로세스 중에 문제가 발생할 수 있으므로 한 버전을 건너뛰거나 처음 10개 버전을 건너뛴 다음 11개 버전을 건너뛰는 것은 권장되지 않습니다.

첫째, 9에서 10 또는 11까지의 일부 버전은 더 이상 기본 기여에 존재하지 않을 수 있지만, resources.list를 통해 안전하고 쉬운 향후 업데이트 및 업그레이드를 위해 무료가 아니거나 백포트되도록 기본 기여로 이동되었습니다.

가능하다면 Debian 11을 사용하여 새로 설치하고 서버 개념을 다시 계획하고 모든 데이터를 병렬로 실행 및 푸시하고 모든 서비스를 시작하고 실행하는 것을 고려할 것입니다.

예를 들어 Docker 또는 Kubernetes를 사용하여 가장 중요한 서비스를 소규모 마이크로서비스로 아웃소싱할 수 있습니다. 그러면 향후 더 쉽게 업데이트할 수 있고 모놀리식 구조가 필요하지 않습니다.

관련 정보