我怎样才能最小化Linux服务器?

我正在构build基于Ubuntu的最小Linux启动映像。

我开始使用debootstrap,然后安装我绝对需要的东西。

我可以采取什么样的一般方法来将这个3GB + linux的安装缩小到适合于pxe启动的小得多的程度?

什么东西debootstrap安装,我可以看看删除?

例如,/ usr / share中似乎有很多东西我可以安全地删除什么?

请参阅此文档以获取ReducingDiskFootprint 。

它包含有关如何禁用aptcaching的说明,安装任何包安装都会跳过安装不适用于您的系统的文档或区域设置。 它build议如何修改日志循环设置以最大限度地减less日志存储。

我的小型存储系统的dpkgconfiguration文件如下所示。 /etc/dpkg/dpkg.cfg.d/01_smalldisk

 # block documentation path-exclude /usr/share/doc/* # keep copyright files for legal reasons path-include /usr/share/doc/*/copyright path-exclude /usr/share/man/* path-exclude /usr/share/groff/* path-exclude /usr/share/info/* # lintian stuff is small, but really unnecessary path-exclude /usr/share/lintian/* path-exclude /usr/share/linda/* # block non-us locales path-exclude /usr/share/locale/* path-include /usr/share/locale/en* 

显然你需要非常小心你select的软件包。 避免那些包含大量废话的大型元包。 在某些情况下,您可能需要考虑使用equivs来设置空依赖项,但是您不需要依赖项所具有的function。

对于一般的苗条,Ubuntu有点胖。 如果可以的话,抓住Debian并安装没有select的软件包,然后添加你所需要的。

您应该能够从内核+ initrd映像很快PXE启动。 让initrd挂载远程文件系统并从那里进入。 您只能通过networkingstream量来查看正在使用的文件,因此,即使安装了100 GB的文件,如果启动只接触10 MB的文件,您也只能移动10 MB的文件。

那么,理想情况下,你不应该手动删除任何东西。 从Ubuntu服务器安装开始并安装无包; 这将是相当渺茫。

对于PXE启动,最好编译自己的内核,并使用busybox来执行大多数命令。

如果你在Ubuntu上死了,那么请询问Ask Ubuntu的更多信息。

您可以从Ubuntu Server CD启动菜单安装Ubuntu JeOS VMbuilder安装。 安装需要大约300-400 MB的磁盘。