답변:
배포판 버전에 맞는 패키지를 다운로드하십시오. https://launchpad.net/ubuntu/+source/dpkg/1.16.1.2ubuntu7
파일을 압축 해제하십시오.
cd
dpkg 소스 디렉토리의 루트에
./configure
make
sudo make install
./configure
실패하면 일부 패키지를 다운로드해야 할 수도 있습니다
정확히 무엇을 제거했는지에 따라 수동으로 다운로드 한 파일 에서 필요한 부분을 추출하여 상황을 구제 할 수 있습니다 .deb
. 물론 트릭 .deb
은 작업하지 않고 파일 을 풀 수있는 방법을 찾고 있습니다. dpkg
다행히 여기에 해결책이 있습니다.
dpkg 명령없이 .deb를 추출하고 설치하는 방법은 무엇입니까?
먼저 packages.ubuntu.com으로 이동 .deb
하여 OS 버전 및 아키텍처에 적합한 파일을 다운로드하십시오.
mkdir debroot && cd debroot
wget http://mirrors.kernel.org/ubuntu/pool/main/d/dpkg/dpkg_1.18.4ubuntu1_amd64.deb
이제 ar
평소 대신 deb 파일의 압축을 풉니 다.dpkg -x
ar -x dpkg_1.18.4ubuntu1_amd64.deb
(대체 dpkg_1.18.4ubuntu1_amd64.deb
당신이 다운로드 한 실제 뎁의 이름으로). 이제 다음 내용이 있어야합니다
control.tar.gz data.tar.gz debian-binary dpkg_1.18.4ubuntu1_amd64.deb
이진 파일을 로컬로data.tar.gz
추출하려면 패키지 파일이 위치해야합니다.dpkg
tar xf data.tar.gz ./usr/bin/dpkg
그것이 효과가 있다면, 당신은 ./usr/bin/dpkg
당신의 /usr/bin
디렉토리에 복사 할 수 있는 파일이 있어야 합니다
sudo cp ./usr/bin/dpkg /usr/bin/
[파일을 /
사용 sudo tar -C ...
하는 것과 관련하여 직접 압축을 풀 수 있지만 두 단계로 수행하면 조금 더 안전합니다.]
그래도 문제가 해결되지 않으면 저장소에서 모든 것을 다시 설치하여 일관성을 유지하는 것이 좋습니다.
sudo apt-get update
sudo apt-get install --reinstall dpkg
(새로운 시스템에, 당신은 대체 할 수 있습니다 apt-get
에 의해 apt
).