업그레이드 실패 수정 사항을 신뢰할 수 있는 버전으로 백포트하는 방법은 무엇입니까?

업그레이드 실패 수정 사항을 신뢰할 수 있는 버전으로 백포트하는 방법은 무엇입니까?

Launchpad의 Bug#1611470으로 인해 Ubuntu 14.04.5->16.04 업그레이드가 실패합니다.

do-release-upgrade때문에 시작하지 못했습니다 .버그 #1611470. 버그가 수정되었으나 수정된 ​​버전 업그레이드 프로그램은 Trusty에서 사용이 불가능합니다. 수정 사항을 신뢰할 수 있도록 백포트하는 방법은 무엇입니까?

2016년에 업데이트되었습니다. 10월 15일: Stephen이 권장하는 패치를 적용한 후에도 동일한 오류가 발생했습니다. 인용문은 다음과 같습니다.

Traceback (most recent call last): File "/tmp/ubuntu-release-upgrader-4_bu5g66/xenial", line 8, in <module> File "/tmp/ubuntu-release-upgrader-4_bu5g66/DistUpgrade/DistUpgradeMain.py", line 242, in main File "/tmp/ubuntu-release-upgrader-4_bu5g66/DistUpgrade/DistUpgradeController.py", line 1876, in run File "/tmp/ubuntu-release-upgrader-4_bu5g66/DistUpgrade/DistUpgradeController.py", line 1841, in fullUpgrade File "/tmp/ubuntu-release-upgrader-4_bu5g66/DistUpgrade/DistUpgradeController.py", line 1257, in doDistUpgrade UnboundLocalError: local variable 'e' referenced before assignment Error in atexit._run_exitfuncs: Traceback (most recent call last): File "/tmp/ubuntu-release-upgrader-4_bu5g66/DistUpgrade/DistUpgradeController.py", line 1062, in _enableAptCronJob PermissionError: [Errno 1] Operation not permitted: '/etc/cron.daily/apt'

답변1

다음은 작동합니다 ...

  1. 다운로드DistUpgradeController.diff어딘가에 (예를 들어, ~/Downloads)
  2. 동일한 디렉터리에서 영향을 받는 파일의 복사본에 패치를 적용해 보세요.

    cp /usr/lib/python3/dist-packages/DistUpgrade/DistUpgradeController.py .
    patch -p1 < DistUpgradeController.diff
    
  3. 오류가 발생하지 않으면 복구된 파일을 해당 위치에 복사합니다(먼저 백업 만들기).

    sudo cp /usr/lib/python3/dist-packages/DistUpgrade/DistUpgradeController.py{,.bak}
    sudo cp DistUpgradeController.py /usr/lib/python3/dist-packages/DistUpgrade/
    

이 모든 작업이 성공하면 수정 사항을 적용하게 됩니다.#1611470.

관련 정보