/usr/bin/dpkg 被意外删除

/usr/bin/dpkg 被意外删除

我意外地删除了/usr/bin/dpkg运行 debian jessie 的 raspberry pi 上的内容,我几乎检查了所有内容,但没有任何效果,我需要紧急帮助。

当我尝试安装任何软件包,或者甚至运行dpkg命令时,我得到如下信息:

open (2:/usr/dpkg/lock does not exist

答案1

首先下载软件包dpkg

apt-get download dpkg

现在,您可以.deb在当前工作目录中看到该包。可以通过以下方式手动解压:

ar x dpkg_<package_version>.deb

该软件包包含一个名为的文件data.tar.gz。其中包含可执行文件。在当前目录中解压它:

tar xf data.tar.gz

您想要的可执行文件现已存在./usr/bin/dpkg并可以使用以下命令复制回来:

cp ./usr/bin/dpkg /usr/bin/dpkg

你的二进制文件已经返回并且可以被 shell 调用:

dpkg --version

答案2

哦,你这个可怜的不幸的 sudoer......但是,这可以修复!

首先,您需要知道您的 Pi 使用的是 armel 还是 armhf,这可以通过使用您的 Pi 型号在 Google 上快速搜索找到。示例:(Raspberry pi 2 armel or armhf抱歉,我暂时不知道……)

要获取文件运行的 armel 版本:

wget http://ftp.us.debian.org/debian/pool/main/d/dpkg/dpkg_1.17.25_armel.deb

对于 armhf:

wget http://ftp.us.debian.org/debian/pool/main/d/dpkg/dpkg_1.17.25_armhf.deb

下载后使用以下命令:

ar -x <package name>

这将提取一些文件。您需要的文件可以data.tar.gz使用以下命令提取:

tar xf data.tar.gz

现在您有一个usr/sbin/目录。最后一条命令:

sudo cp usr/bin/dpkg /usr/bin/dpkg

注意该命令最后一部分“/”的位置

现在您应该可以再次获得 dpkg 包并能够随心所欲地安装包。

希望这可以帮助!

答案3

由于我尝试的所有解决方案都不起作用(包括这里发布的 2 个),我不得不使用 NOOBS 在我的 Raspberry Pi 上重新安装操作系统。不过还是感谢大家的帮助。

相关内容