意外执行了这个命令,现在我的许多程序都无法运行。
sudo apt-get --purge remove libstdc++6
sudo apt
现在不工作,还有一些其他的东西。
我该如何恢复呢?
Distributor ID: Ubuntu
Description: Ubuntu 16.04.4 LTS
Release: 16.04
Codename: xenial
编辑
我按照 melebius 的方式通过 dpkg -i ,libstdc++6 进行安装,似乎成功了
root@server:~# sudo dpkg -i libstdc++6_5.4.0-6ubuntu1~16.04.10_amd64.deb
Selecting previously unselected package libstdc++6:amd64.
(Reading database ... 71540 files and directories currently installed.)
Preparing to unpack libstdc++6_5.4.0-6ubuntu1~16.04.10_amd64.deb ...
Unpacking libstdc++6:amd64 (5.4.0-6ubuntu1~16.04.10) ...
Setting up libstdc++6:amd64 (5.4.0-6ubuntu1~16.04.10) ...
Processing triggers for libc-bin (2.23-0ubuntu10) ...
但是当我尝试安装某些东西时出现此错误
root@server:~# sudo apt-get screen
apt-get: error while loading shared libraries: liblz4.so.1: cannot open shared object file: No such file or directory
root@server:~#
答案1
根据该软件包的网页,dpkg
应该能够工作而无需libstdc++6
(不像apt
)。
所以你应该能够下载正确的版本libstdc++6
适合您的架构手动并使用安装dpkg -i
,例如
sudo dpkg -i libstdc++6_5.4.0-6ubuntu1~16.04.10_amd64.deb
如果你无法在有问题的机器上使用正常的网络浏览器,请在其他地方获取正确的 URL 并使用下载文件wget
,例如
wget http://security.ubuntu.com/ubuntu/pool/main/g/gcc-5/libstdc++6_5.4.0-6ubuntu1~16.04.10_amd64.deb
根据以下错误:
apt-get: error while loading shared libraries: liblz4.so.1: cannot open shared object file: No such file or directory
您似乎缺少更多必需的包。
查看哪个包提供了文件,下载并dpkg
像以前一样使用(重新)安装。对于liblz4.so.1
,您需要liblz4-1
. 当 APT 抱怨文件丢失时,对每个文件重复此过程。
还有一件事……你的命令调用
root@server:~# sudo apt-get screen
root
表示您同时以和 使用 的身份登录sudo
。这两个东西是多余的,您一次只需要其中一个。
答案2
我删除了 libstdc++6,apt-get
也犯了同样的错误,大多数程序都无法运行。但我设法通过使用恢复了初始状态。
sudo apt --fix-broken install