如何撤消 apt-get autoremove

mcE*_*nge 13 package-management apt opencv

我只是走进了打电话的陷阱

sudo apt-get install autoremove
Run Code Online (Sandbox Code Playgroud)

我这样做是因为我无法安装,sudo apt-get install libopencv-dev因为unmet dependencies. 现在我的ros-indigo安装了,opencv仍然没有安装,我也无法重新安装它。

尝试安装它时,我只得到

E: Unable to correct problems, you have held broken packages.
Run Code Online (Sandbox Code Playgroud)

我担心我真的很接近杀死我的整个包依赖系统。有人能帮助我吗?

我可以以某种方式使用该文件/var/log/apt来反转删除 ros 的步骤吗?

sto*_*orm 16

我不知道是否有任何更简单的方法,但是如果您看一下,/var/log/apt/history.log您可以看到删除的内容。只需重新安装被删除的每个包。

使用它可以节省您的时间

echo '#!/bin/bash' > restore
echo sudo apt-get install `grep Remove /var/log/apt/history.log | tail -1 | sed -e 's|Remove: ||g' -e 's|([^)]*)||g' -e 's|:[^ ]* ||g' -e 's|,||g'` >> restore
chmod +x restore 
./restore
Run Code Online (Sandbox Code Playgroud)