我在 amd64/x86_64 处理器上使用 GNU/Linux Mint 18.1。我安装了一堆 i386 软件包 - 确切地说是 250 个。直到今天我才知道我需要其中的一些/大部分,因为我安装了 32 位 Skype。但现在我已经安装了 64 位版本,所以我想知道 - 我可以卸载那些 i386 软件包吗?或者更确切地说 - 我如何判断我是否真的需要它们中的任何一个?
答案1
如果您尝试删除另一个包或程序的依赖项,包管理器通常会抱怨。
当它询问您是否确定要删除任何内容时,请仔细阅读它所说的内容。
答案2
除非您专门安装了一些 32 位软件包(其中也有依赖项等) - 很可能全部32 位/i386 软件包可以删除。正如 @Mioriin 建议的那样,如果您尝试使用 删除它们apt-get remove
,如果有任何东西依赖于它们,您将会收到投诉。
为谨慎起见,请首先执行以下操作:
apt-get install -f
以防有东西损坏并需要修理。然后执行:
dpkg-query -l | grep "^i.* i386 " | less
并查看相关包的列表。看看您是否记得明确安装过某些东西特别是作为 i386/32 位包。如果没有 - 继续尝试使用以下方法删除它们:
apt-get remove $(dpkg-query -l | grep "^i.* i386 " | cut -c5- | cut -d\ -f1)
(奇怪的管道命令用于仅提取包名称;我认为仅使用dpkg-query
开关可以更好地完成此操作。)
注意事项:
- 理论上是可能的但是极其某些软件包的描述中不太可能包含字符串“ i386 ”;不太可能被忽视
- 如果您有半安装的软件包或处于除
ii
(请参阅man dpkg-query
详细信息)之外的其他状态的软件包,这可能对您不起作用