在 RHEL_CentOS 8 最小安装中禁用并移除不需要的服务

linuxoperating systemopen source更新于 2026/1/28 23:37:17

安装 RHEL/CentOS 8 最小安装时,系统会预装一组精简的软件包和服务,以保持系统轻量和安全。然而,随着时间的推移,随着您安装新的软件包和服务,您的系统可能会变得臃肿,容易受到安全威胁。

在本文中,我们将讨论如何在 RHEL/CentOS 8 最小安装中禁用并移除不需要的服务和软件包。我们将首先识别不必要的服务,并介绍禁用这些服务的最佳实践,以确保您的系统保持安全和正常运行。此外,我们还将讨论如何删除不再需要的软件包,释放磁盘空间并潜在地减少安全漏洞。通过遵循这些步骤,您可以保持系统精简安全,从而提高整体系统性能和可靠性。

检查已启用的服务

在开始禁用服务之前,我们需要检查系统上当前启用了哪些服务。为此,我们将使用 systemctl 命令。

$ systemctl list-unit-files --type=service --state=enabled

此命令将显示系统上所有已启用服务的列表。请记下您要禁用的服务。

识别不必要的服务

在禁用和删除不需要的服务之前,您需要确定哪些服务是必需的,哪些服务可以安全禁用。一种方法是检查已启用服务的列表,并查找其描述以确定它们的作用。

例如,以下命令将显示所有已启用服务的列表及其描述 -

systemctl list-unit-files --type=service --all --no-pager

然后,您可以检查每个服务的描述,以确定它是否对您的系统必不可少。

另一种方法是使用 systemd-analyze 之类的工具来分析系统的启动时间,并识别哪些服务会减慢启动速度。通常可以安全地禁用对系统运行不重要且会减慢启动速度的服务。

禁用服务的最佳实践

禁用服务时,务必遵循最佳实践,以确保系统保持安全和正常运行。以下是一些提示 -

  • 首先禁用您确定不需要的非关键服务。禁用系统正常运行所必需的关键服务时务必谨慎。

  • 记录您禁用的服务,以便在必要时轻松重新启用它们。

  • 禁用服务后,务必测试您的系统,以确保其仍正常运行。

  • 定期检查已禁用服务的列表,以确保它们仍然不需要。

禁用服务

确定要禁用的服务后,您可以使用 systemctl 命令停止并禁用它们。例如,如果您想禁用 postfix 服务,请运行以下命令:-

$ sudo systemctl stop postfix $ sudo systemctl disable postfix

如果服务正在运行,stop 命令将立即停止该服务;disable 命令将阻止该服务在系统启动时自动启动。

删除不需要的服务

现在我们已经禁用了不需要的服务,我们可以将它们从系统中删除,以释放磁盘空间并减少系统的攻击面。

列出已启用的服务

要列出所有已启用的服务,请运行以下命令:-

systemctl list-unit-files --type=service | grep enabled

这将显示所有已启用服务的列表。您可以使用以下命令删除任何不需要的服务 -

sudo systemctl disable <service-name>.service

例如,要禁用"postfix"服务,您可以使用以下命令 -

sudo systemctl disable postfix.service

要禁用/删除的常用服务

虽然您需要禁用或删除的服务取决于您的具体用例,但在 RHEL/CentOS 8 的最小化安装中,您可能需要考虑禁用或删除一些常用服务。

FirewallD

FirewallD 是一项管理系统防火墙的服务。虽然它对安全很重要,但如果您的系统在硬件防火墙后运行,则可能不需要它。要禁用 FirewallD,请运行以下命令 -

$ sudo systemctl stop firewalld $ sudo systemctl disable firewalld

NetworkManager

NetworkManager 是一项管理系统上网络连接的服务。如果您在不需要频繁更改网络的服务器上运行系统,则可以禁用此服务。要禁用 NetworkManager,请运行以下命令 -

$ sudo systemctl stop NetworkManager $ sudo systemctl disable NetworkManager

Postfix

Postfix 是一个邮件传输代理 (MTA),用于在您的系统上收发电子邮件。如果您不使用系统收发电子邮件,您可以禁用并移除此服务。要禁用并移除 Postfix,请运行以下命令:-

$ sudo systemctl stop postfix $ sudo systemctl disable postfix $ sudo yum remove postfix

Avahi

Avahi 是一项用于零配置网络的服务,允许设备在同一网络上相互发现和通信。如果您不需要此功能,您可以禁用并移除此服务。要禁用和删除 Avahi,请运行以下命令 -

$ sudo systemctl stop avahi-daemon.socket $ sudo systemctl disable avahi-daemon.socket $ sudo yum remove avahi-autoipd avahi-libs avahi-tools

删除不需要的软件包

除了删除不需要的服务之外,您可能还需要删除任何不再需要的软件包。未使用的软件包会占用磁盘空间,并可能引入安全漏洞。

要列出所有已安装且不依赖其他软件包的软件包,请运行以下命令 -

sudo dnf repoquery --unneeded --installed

然后,您可以使用以下命令删除所有不必要的软件包 -

sudo dnf remove <package-name>

删除软件包时请小心,因为某些软件包可能是其他软件包正常运行所必需的。

验证更改

删除服务和未使用的软件包后,最好验证系统是否仍正常运行。您可以使用以下命令检查系统状态 -

systemctl list-units --type=service

这将显示系统上当前正在运行的所有服务的列表。请检查所有必要的服务是否正在运行且没有错误。

结论

在 RHEL/CentOS 8 Minimal 上禁用和删除不需要的服务和软件包是维护系统安全稳定的关键步骤。通过禁用不必要的服务,您可以减少系统的攻击面并最大限度地减少潜在漏洞的数量。删除未使用的软件包还有助于减少系统使用的磁盘空间,从而提高系统效率并提升性能。

我们讨论了几种识别和禁用不必要服务的方法,包括使用 systemctl 命令和检查系统日志。此外,我们还介绍了使用 yum 和 dnf 软件包管理器删除软件包的过程。通过遵循这些步骤,您可以保持系统精简、安全且高效运行。

我们强烈建议您定期检查系统中是否存在不必要的服务和软件包,并根据需要禁用/移除它们,以确保系统保持安全和优化。只需稍加努力并关注细节,您就可以保持系统平稳运行并降低安全漏洞的风险。


相关文章


有用资源