如何将现有的Ubuntu安装转换为最小

我正在尝试将现有的Ubuntu安装转换为最小配置,因此它可以运行2GB SD卡(甚至更小)。 目前,当前的硬件(Pi板)需要定制16.04版本以支持网络和其他板载设备,并占用4 + GB的空间

所以问题是如何删除大多数包,使其真正小巧轻便? 即终端,网络,wifi和其他特定于板的驱动程序。 有关如何使其安全的指南或建议吗?

我知道我可以做这样的事情来识别和删除可选包

dpkg-query -Wf '${Package;-40}${Priority}\n' | awk '$2 ~ /optional|extra/ {print $2,"\t", $1}' 

但还有什么可以安全地删除?

如果您愿意做一些手工工作,这可能会有所帮助:

ubuntu服务器的安装映像大约为800M,它具有相当少的安装选项:

在此处输入图像描述

对于ubuntu服务器16.04,如果您只选择openssh和标准系统实用程序,则生成的系统占用大约1.4Gb的空间。

然后,您可以尝试使用与“自定义ubuntu”正在使用的相同ubuntu版本的最小安装来设置VM。 然后导出此VM的所有已安装软件包的列表,并使用命令dpkg --get-selections将其与目标系统的软件包进行比较。

然后,您将能够识别不必要的软件包(您需要注意不要删除您正在努力保留的自定义驱动程序)。

有关:

从dpkg恢复所有数据和依赖项–set-selections’*’

如何将已安装的软件包选择从一个Debian系统复制到另一个?

如何将已安装的软件包和设置从一个发行版转移到另一个发行版?