操作系统:Ubuntu 12.04
意外删除了dpkg
。现在无法安装软件包。因此,需要一个dpkg
安装软件包的安装程序。
答案1
根据你删除的内容,你可能可以通过从手动下载的.deb
文件中提取必要的部分来挽救这种情况。当然,诀窍是找到一种方法来解压.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
软件包的文件应该位于 so 中,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
。
答案2
从以下位置下载适用于你的版本的 dpkg 包 https://launchpad.net/ubuntu/+source/dpkg/。
提取文件。
cd
到 dpkg 源目录的根目录。
./configure
make
sudo make install
./configure
如果失败,你可能需要下载一些软件包