반 설치된 패키지 수정


42

sudo apt-get upgrade진술 을 사용하는 동안 오류가 발생했습니다 .

dpkg: error processing libgfortran3:amd64 (--configure):
  package libgfortran3:amd64 is not ready for configuration
  cannot configure (current status `half-installed')
Errors were encountered while processing:
  libgfortran3:amd64
E: Sub-process /usr/bin/dpkg returned an error code (1)

다른 응용 프로그램의 설치 / 업그레이드를 차단하지 않는 것 같습니다. 응용 프로그램을 업그레이드하는 동안 PC를 직접 종료 하여이 문제가 발생했다고 생각합니다.

이 문제를 어떻게 해결할 수 있습니까?


답변:


38
sudo dpkg --remove --force-remove-reinstreq --dry-run libgfortran3:amd64

그것은 단지 드라이 런입니다. 나는 무엇을 제거 libgfortran3할 것인지 잘 모르겠지만 그것을 실행하고 참조하십시오. 전체 시스템을 방해하지 않는다고 가정하고없이 시스템을 다시 실행 하면 필요한 패키지를 다시 --dry-run가져올 수 있습니다 sudo apt-get install ....


4
고마워요! 레코드를 위해 패키지 를 실행 dpkg: warning: package is in a very bad inconsistent state; you should reinstall it before attempting a removal했으며 패키지 를 package.ubuntu.com 에서 수동으로 다운로드하여 실행했습니다 sudo dpkg -i WHERE/THE/DOWNLOADED/PACKAGE/IS. 그런 다음 모든 것이 좋아졌습니다.
Bora M. Alper

1
필자의 경우이 지침을 따른 후 'apt-get install -f'를 실행하면 패키지가 다시 설치되고 다른 여러 패키지로 인해 종속성이 깨진 것으로 수정되었습니다. 이것은 debian 7의 libx11-data 패키지를위한 것입니다.
bchurchill

없이 --dry-run, 당신이 말한 것처럼 그것은 나를 위해 일했습니다. 감사합니다!
forvas

69

절반 설치 패키지 오류의 경우 --reinstall이 저에게 효과적이었습니다.

sudo apt-get install --reinstall packagename 

1
예. 그러나 packagename을 다시 설치 한 후 apt-get은 반으로 구성된 패키지를 계속 구성한다는 경고를 표시합니다.
Cedric Knight

5
이것은 허용되는 답변 imho보다 안전합니다.
ZANNA

--reinstal의 ncurses 기반을 설치 apt-get을 나중에 내가 루트 사용자 (sudo는 -s)를 사용하여 sudo는 apt-get을 업데이트를 실행 sudo는, 그냥 ... 그렇게 일
ArifMustafa

큰. 그 해결책 만이 내 문제를 해결했다
iWizard

이것은 나를 위해 그것을했다. php-pear는 나에게 두통을 주었다. 감사!
pcarvalho

6
sudo apt install --reinstall packagename

이것은 매력처럼 작동합니다. 몇 달 동안 발생한 문제가 해결되었습니다. 내 사건은 패키지와 함께했다libmysqlcppconn7v5

내가 한 모든 것은 달렸다 sudo apt install --reinstall libmysqlcppconn7v5


2

GUI를 통해이 문제를 해결하려면 시냅스를 사용할 수 있습니다. 시냅틱은 이전 버전의 우분투에 포함되었던 훌륭한 패키지 관리 도구입니다. 설치하려면 :

sudo apt-get install synaptic

깨진 패키지 수정을 클릭하십시오.


시냅틱은 깨진 카테고리에 패키지를 나열하지 않습니다 :(
Barun

2

패키지 키바 나와 동일한 "반 설치 패키지"문제가 발생했습니다. 다음과 같은 오류가 발생했습니다.

dpkg: error processing kibana (--configure):
package kibana is not ready for configuration
cannot configure (current status 'half-installed')
Errors were encountered while processing:
  kibana
E: Sub-process /usr/bin/dpkg returned an error code (1)

누구든지 여전히 이런 종류의 문제에 직면하고 있다면 다음을 시도해보십시오.

sudo rm /var/lib/dpkg/info/kibana*
cd /var/cache/apt/archives
sudo rm kibana*
apt-get --reinstall install kibana

이것은 나를 위해 작동합니다. 'kibana'라는 단어를 반 설치된 패키지 이름으로 바꾸면됩니다.


2

패키지를 다시 설치하지 않고 문제를 해결해야합니다.

sudo dpkg --force-remove-reinstreq --remove <package_name here>

뒤에 : sudo apt-get update


--force-remove-reinstreq? 패키지 관리자는 재설치가 필요하다고 명시하지 않습니다. 일반적으로 정기적 인 제거는 구성되지 않은 패키지에 대해서만 잘 작동합니다. -1
David Foerster

그것은 내가 sudo apt-get remove <package선택의 여지 가 없을 때 내가하는 일 이며 반 설치된 패키지를 다시 설치하고 싶지 않습니다 --force-remove-reinstreq. 그런 다음 정크를 제거하는 데 사용 합니다. PS : Linux Mint에 있습니다. Linux가 Ubuntu를 기반으로하는 것과는 전혀 다릅니다.
CodeGeass

1
패키지 관리자는 모든 데비안 기반 배포판에서 동일하게 작동하지만 (즉 dpkg, --force-*그대로) 사용하지 않아야합니다 . 오류 메시지는 이유가 있으므로 경험이없는 사용자가 가볍게 가져 --force-*가지 말아야하므로 불필요한 옵션을 제안해서는 안됩니다 . 그렇지 않으면 우리는 항상 옵션을 모두 사용 --force-all하거나 더 나은 방법으로 제거 하고 더 쉽고 편리하게 기본 동작으로 설정하는 것이 좋습니다. --force-*dpkg
David Foerster

좋아, 그것을 인정 ... 좀 더 ... ... 죄송합니다,보다 일을 얻기가 이루어집니다 무엇을 어떻게 정확히 알고에 대해 우려되는 한
코드 기어스 반역의 를르슈

흠… 나는 단지 그 대답이 똑같다는 것을보고 있습니다. 그래서 나는 --force-remove-reinstreq불필요하다고 잘못 생각할 수 있습니다 . 그러나 그것은 또한 당신의 대답이 (거의) 그것의 사본이라는 것을 의미합니다. 다음 기회에.
David Foerster
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.