这里有一个非常好的问题和答案: 我应该使用 APT 中的 taskel、任务还是安装常规元包?(顺便说一下,我从这里得到这个信息:设置 LAMP 堆栈的最简单方法是什么?)
我的问题是,我不太理解(可接受且唯一且好的)答案,希望得到澄清。具体来说,关于最后三点:
sudo apt-get install kubuntu-desktop
- 将安装元包 kubuntu-desktop。依赖项是“自动安装的”。
sudo apt-get install kubuntu-desktop^
- 将选择所有标记为“kubuntu-desktop”任务的软件包。这些软件包都是元软件包 kubuntu-desktop 的依赖项。它们都标记为“手动安装”。
sudo tasksel install kubuntu-desktop
- 在安装任务包之前,请确保已安装 X。将安装元包 kubuntu-desktop。依赖项是“自动安装的”。
kubuntu-desktop
我的问题与我正在研究的实际事实无关,lamp-server
但我认为它不是太相关(但以防万一还是澄清一下)。
我对上述引用的初步理解是,将每个单独的包标记为“手动安装”会更可取,因为如果您卸载/删除了某些东西并且没有明确想要删除依赖项,您就不会丢失“自动安装”的依赖包,但另一方面,如果您在使用选项 2 后手动卸载,可能会留下“一大堆”包。
问题:我的假设正确吗?(在tasksel
through之后删除单个组件apt-get
会留下依赖关系,即使在之后也是如此autoremove
)
即使读过答案很多次,我仍然不清楚更好的解决方案是什么。
答案1
您理解的事实部分是正确的:如果系统中没有反向依赖,则在“自动删除”操作期间不会删除手动安装的软件包,而在这种情况下将删除自动安装的软件包。
然而你错了,因为一个通常比另一个好。你取决于您的需求:
如果你通过任务
kubuntu-desktop^
然后决定不再保留文本编辑器 Kate(软件包kate
)并由于某种原因将其删除,稍后的“autoremove”命令将不会删除其余的 Kubuntu 桌面软件包。如果你想尝试 Kubuntu 桌面(例如除了你当前的桌面环境)并安装元包
kubuntu-desktop
然后决定不再使用它,您可以删除该kubuntu-desktop
软件包并运行“autoremove”以同时摆脱所有特定于 Kubuntu 的软件包。