สูญหาย / ลบ dpkg (ตัวจัดการแพ็กเกจสำหรับ Debian) ฉันจะรับมันคืนได้อย่างไร


8

ระบบปฏิบัติการ: Ubuntu 12.04

dpkgลบโดยไม่ตั้งใจ ไม่สามารถติดตั้งแพ็คเกจได้ ดังนั้นต้องการตัวdpkgติดตั้งซึ่งจะติดตั้งแพ็คเกจ

คำตอบ:


2

ดาวน์โหลดแพ็คเกจเสริมไปยังรุ่น distro ของคุณ https://launchpad.net/ubuntu/+source/dpkg/1.16.1.2ubuntu7

ขยายไฟล์

cd ไปที่รูทของไดเรกทอรีแหล่ง dpkg

./configure

make

sudo make install

คุณอาจต้องดาวน์โหลดบางแพ็คเกจถ้า./configureล้มเหลว


เมื่อฉันพิมพ์ "./configure" จะพูดถึงบางสิ่งและท้ายที่สุด: "configure: ข้อผิดพลาด: ไม่พบไลบรารีคำสาป" ...
Mohammad Mahdi Naderi

สิ่งนี้ไม่ได้อธิบายอะไรเลยและมันไม่สามารถใช้งานได้ในปัจจุบัน ./configure ต้องใช้หลายสิ่งและมันไม่ชัดเจนว่ามันต้องการอะไร
G_V

1
@G_V หากคุณมีคำถามใหม่ฉันมั่นใจว่ามีใครบางคนชอบที่จะให้คำอธิบายที่ยาว โพสต์ข้อผิดพลาดการกำหนดค่าของคุณในคำถามใหม่ของคุณ ดูเหมือนคุณจะต้องติดตั้งแพคเกจบางอย่างเพื่อให้ dpkg ทำงานได้
j0h

@ j0h ฉันลงเอยด้วยการติดตั้งซ่อมแซมพาร์ติชั่นระบบปฏิบัติการของฉัน, ไม่ยุ่งยาก ฉันไม่เข้าใจจริงๆว่าอะไร / การกำหนดค่าใช้สำหรับหรือสิ่งที่ทำจริงๆเพราะฉันไม่เคยติดตั้งอะไรผ่านมาก่อน ลิงค์นี้ช่วยให้เข้าใจสิ่งที่เกิดขึ้นจริง
G_V

9

ทั้งนี้ขึ้นอยู่กับสิ่งที่คุณเอาออกคุณอาจจะสามารถที่จะช่วยสถานการณ์โดยแยกชิ้นส่วนที่จำเป็นจากการดาวน์โหลดด้วยตนเอง.debไฟล์ แน่นอนว่าเคล็ดลับคือการหาวิธีที่จะแตก.debไฟล์โดยไม่ต้องทำงานdpkgโชคดีที่มีทางออกอยู่ที่นี่

วิธีการแตกและติดตั้ง. deb โดยไม่มีคำสั่ง dpkg?


ก่อนอื่นให้ไปที่packages.ubuntu.comและดาวน์โหลด.debไฟล์ที่เหมาะสมสำหรับเวอร์ชั่นระบบปฏิบัติการและสถาปัตยกรรมของคุณเช่น

mkdir debroot && cd debroot
wget http://mirrors.kernel.org/ubuntu/pool/main/d/dpkg/dpkg_1.18.4ubuntu1_amd64.deb

ตอนนี้คลายไฟล์ deb ที่ใช้arแทนปกติdpkg -x

ar -x dpkg_1.18.4ubuntu1_amd64.deb

(แทนที่dpkg_1.18.4ubuntu1_amd64.debด้วยชื่อของ 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/

[โปรดทราบว่าคุณสามารถ untar ไฟล์โดยตรงที่เกี่ยวข้องกับการ/ใช้sudo tar -C ...แต่ทำในสองขั้นตอนเพียงแค่รู้สึกปลอดภัยเล็กน้อย]


หากใช้งานได้ฉันขอแนะนำให้ติดตั้งสิ่งใหม่ทั้งหมดจากที่เก็บเพื่อความสอดคล้องเช่น

sudo apt-get update
sudo apt-get install --reinstall dpkg

(ในระบบใหม่ที่คุณสามารถแทนที่apt-getโดยapt)

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.