删除Kali Linux多余的系统架构

  • Post author:
  • Post category:linux




报错信息

N: 鉴于仓库 ‘https://mirrors.tuna.tsinghua.edu.cn/docker-ce/linux/debian buster InRelease’ 不支持 ‘i386’ 体系结构,跳过配置文件 ‘stable/binary-i386/Packages’ 的获取。

在这里插入图片描述



原因

现在大家通常安装的都是Kali Linux 64位操作系统,其架构为amd64。如果要安装运行32位的程序(如wine32),则必须添加32位架构i386。添加时候,使用以下命令进行操作:

dpkg --add-architecture i386

添加成功,再更新软件源

apt-get update

,再安装对应的软件包即可。

但是,添加架构的时候,系统并不会检测对应的架构是否存在。即使是一个错误的架构名,系统也会添加。但是这样会造成更新软件源失败。



解决

将错误的系统架构移除。操作方法如下:

(1)使用以下命令,显示已经系统现有的架构。

dpkg --print-architecture

(2)确认要删除的架构名,然后使用以下命令删除。

dpkg --remove-architecture [架构名]

ps:(前提是没有软件再使用相应结构,否则会出现报错)

在这里插入图片描述

可以通过以下命令查看使用该结构的程序

dpkg --get-selections | awk '/i386/{print $1}'

在这里插入图片描述

如果觉得可以删除,继续执行以下命令

$ sudo apt-get remove --purge `dpkg --get-selections | awk '/i386/{print $1}'`	//移除i386相关的包
$ sudo dpkg --remove-architecture i386	//移除i386架构
$ sudo dpkg --print-foreign-architectures	//显示已启用的异质体系结构,若为空则移除了i386

参考链接:

[1]

删除Kali Linux多余的系统架构


[2]

dpkg:错误:无法删除数据库当前正在使用的体系结构“ i386”


[3]

ubuntu 遇到 dpkg: 错误: 无法移除体系结构 i386 ,当前它仍被数据库使用 的解决方法