do-release-upgrade 하위 프로세스에서 control-c를 눌렀습니다. 어떻게 회복하나요?

do-release-upgrade 하위 프로세스에서 control-c를 눌렀습니다. 어떻게 회복하나요?

Utopic Unicorn에서 Vivid Vervet으로 업그레이드하는 과정에서 do-release-upgrade어떤 버전의 구성 파일을 보관해야 하는지 문의하셨습니다. 나는 (루트) 쉘을 실행하는 옵션을 선택했고, 몇 가지 작은 변경 사항만 있음을 확인하고 vim두 버전을 병합하기 위해 실행했습니다. 나는 삽입을 끝내기 위해 Ctrl+를 사용하는 데 익숙했지만 C이 경우에는 내 쉘 중 하나로 돌아왔기 때문에 실제로 뭔가를 죽인 것 같습니다.

약간의 조사 끝에 인스턴스가 vim여전히 실행되고 있음을 발견했습니다. 나는 그것을 죽이고 그것을 시작한 루트 쉘로 돌아갔습니다. 그런 다음 업그레이드 스크립트로 반환될 것으로 기대하면서 루트 셸을 종료했지만 대신 tmux이를 실행한 인스턴스가 종료되었습니다.

이 시점에서 스크립트가 여전히 실행 중이고 아마도 수행 중인 작업을 볼 수 있습니다.무엇(CPU 사용량은 지속적으로 11%인 것으로 보입니다). 나와 유사한 일부 사례와 달리 다시 연결할 인스턴스가 없습니다. 실제로 에 따르면 screen제어 터미널 이 손실되었습니다.byobups

여기서 무슨 일이 일어났으며, 시스템을 정상 상태로 되돌리고 업그레이드를 완료하려면 어떻게 해야 합니까?

답변1

서버 결함에서 복사하여 붙여넣기:

AFAICT, 업그레이드 프로세스에 다시 연결할 방법이 없었습니다. 그러나 그것은 전혀 재앙이 아니었습니다. 나는 hanging dpkg프로세스를 죽인 다음 dpkg --configure -a. 이는 시스템에 이미 설치된 모든 패키지를 재구성하여 문제를 해결하는 과정을 안내합니다. 그 후에는 aptitude이미 다운로드했지만 설치 또는 구성하지 않은 나머지 패키지를 업그레이드하곤 했습니다.

예의:https://serverfault.com/q/387547/109361

업데이트:

aptitude시스템에 이 설치되어 있지 않은 경우에는 를 사용하여 동일한 작업을 수행할 수 있다고 apt-get이해합니다.

이것이 OP에서 효과가 있었던 것입니다:

업그레이드 스크립트는 이미 소스를 /etc/apt/sources.listUtopic에서 Vivid로 변경했으며 모든 타사 소스를 비활성화했습니다. dpkg --configure --pending, , , 을 apt-get install --fix-broken수행한 후 재부팅한 후 이제 모든 것이 작동하는 것처럼 보입니다.apt-get updateapt-get dist-upgrade

더 많은 정보:

관련에서버그 보고서, apt-get dist-upgrade일을 제대로 작동시키는 것이 열쇠인 것 같습니다.

관련 정보