元包依赖项

元包依赖项

我在一台内存严重受限的笔记本电脑上安装了纯正的 Lucid Desktop(配备了一个慢速驱动器,以便进行额外的快乐交换)。

我正在尝试删除 ubuntu-desktop 中偷偷溜进来的那些我知道我永远不会使用的软件包。例如

apt-get remove --simulate '.*openoffice.*' 

运行起来没有问题,但也没有节省任何内存。所以我查看了实际运行的东西,由于盒子没有蓝牙,

apt-get remove --simulate  gnome-bluetooth

看起来合理,但附带了软件包gnome-user-share。不过没关系。但是,如果我不需要打印功能,

apt-get remove --simulate cups

想要删除ubuntu-desktop的是依赖于 100 个基本子系统(例如 nautilus 和 gnome-panel 等)的元包。当然,删除cups不会导致 nautilus 被删除,但它似乎会让我的 apt 包状态混乱。

我是否错过了 Ubuntu 的一些深层奥秘,或者删除杯子是否不好?(我--simulate在我的例子中放置了标志,以免有人剪切粘贴哭泣)。

答案1

删除cupsubuntu-desktop不会让您的包裹状态混乱。只有--force-…这样做才能做到。

ubuntu-desktop大致意思是“Ubuntu 用户在桌面上应该拥有的所有基本功能,无需寻找”。打印功能也包含在内。如果您不想打印,则需要牺牲功能。您仍然可以删除ubuntu-desktop,但您必须确保知道必须保留其哪些依赖项。

如果您的 RAM 有限而磁盘空间充足,则无需删除 CUPS,只需不启动它即可。在 lucid 下,重命名/etc/rc2.d/S50cups/etc/rc2.d/K50cups,在rc3.drc4.d中也类似rc5.d

但是不运行 CUPS 不会给你带来太多好处;它会启动,并迅速进入交换区,只要你不打印,它就永远不会回来,而且它反正不到 2MB。如果你的 RAM 不足,你能做的最好的事情就是放弃 Gnome(我看到 nautilus 占用 30MB,gnome-panel 占用 13MB,nm-applet 占用 11MB... 其中一些是共享的,但与 Gnome 相比,系统守护进程微不足道。)

答案2

由于您不需要关注可用磁盘空间,而是需要可用 RAM(内存),因此您可以通过首先不启动这些应用程序来解决问题 :)。使用 gnome-session-properties 取消选中您的会话不需要的任何服务。

例如,如果您稍后需要打印某些内容,则可以仅为该会话启动杯子。

答案3

如果您足够小心,删除ubuntu-desktop不会损坏您的机器;当我想使用默认提供的软件包的替代品时,我自己也这样做过ubuntu-desktop。这样做之后唯一缺少的就是“警告”,提示您正在删除默认 Ubuntu 桌面的一部分。

但如果您的主要问题是 RAM 而不是磁盘空间,那么也可以确保您不需要的程序不会运行。


以下内容适用于 Maverick (10.10),但不适用于 Lucid。请参阅 Gilles 对 Lucid (和较旧的 Ubuntu 版本) 的回答。

在这种情况下,cups您可以编辑 /etc/init/cups.conf 并注释掉该start on ...行,如下所示:

#start on (filesystem
#          and (started dbus or runlevel [2345])
#          and stopped udevtrigger)

这将阻止 CUPS 自动启动(但您仍然可以使用 手动启动它sudo start cups)。


对于在用户会话中运行的应用程序,可以在系统 --> 首选项 --> 启动应用程序中禁用这些应用程序。

相关内容