禁用 Debian Linux 中不必要的服务
“通过禁用未使用的服务,您可以提高系统性能并降低漏洞风险。本教程介绍如何禁用基于 Debian 的 Linux 发行版(包括 Ubuntu)中的服务。
本文针对寻求快速实施实用说明的用户和寻求深入了解服务管理的用户进行了优化。所有 Linux 用户都必须学习如何禁用和管理服务,无论其当前的知识水平如何。
最后一部分(摘要)包括两个表格,其中包含所有解释的命令。
本文档中描述的所有步骤都包含屏幕截图,使每个 Linux 用户都可以轻松重现它们。 ”
禁用 Debian 和 Ubuntu 中的服务
首先,让我们看看哪些服务正在运行,以决定要丢弃哪些服务。
要列出所有服务,请运行 service 命令,然后运行 –status-all 参数,如下图所示。
下面的列表用 + 标识启用的服务,用 - 标识禁用的服务。
如果服务被禁用但未停止,它将继续运行,直到下次重新启动。
要在禁用服务之前停止该服务,请使用 service 命令,后跟服务名称和停止 参数。语法如下所示。
为了展示一个实际的例子,我将禁用蓝牙服务,如下图所示。
要完全禁用服务,请使用 systemctl 命令,然后使用 禁用参数和服务名称;语法如下所示。
要禁用蓝牙服务,防止其在下次重新启动时重新启动,我将运行以下命令。
如您所见,蓝牙服务现在处于非活动状态,因为它旁边有一个减号 (-),而不是 +。
您可以通过执行以下语法来单独检查服务状态。
在下面所示的实际示例中,我使用上面所示的语法检查蓝牙服务的状态。
如您所见,该服务处于非活动状态并被禁用。
禁用服务的一种强大且推荐的方法是卸载它们。例如,如果您要删除 Debian 和基于 Ubuntu 的 Linux 发行版上的 apache2 Web 服务器,请运行以下命令,其中 apache2 是您要删除和禁用的服务。
在 Debian 和 Ubuntu 中启动并启用服务
如果您了解如何停止和禁用服务,您必须知道如何启动和启用它们。
您可以使用 systemctl 命令启动服务,语法如下。
要启动蓝牙服务,我将运行:
您还可以使用 service 命令启动服务,如下所示,其中启动了蓝牙服务。
启动服务并不等于启用它。如果启动了禁用的服务,它将运行到下次重新启动为止。
本教程的第一部分解释了用于显示服务状态的 service 命令用法。您还可以使用 systemctl 命令检查服务状态,语法如下。
例如,要使用 systemctl 检查蓝牙服务的状态,我运行以下命令。
如您所见,该服务当前正在运行并已禁用。
如何在 Debian 和 Ubuntu Linux 中重新启动和重新加载服务
当您重新配置服务并需要重新启动/重新加载它们以使更改生效时,您可以使用不同的可用选项。
例如,要重新启动蓝牙服务,我运行 systemctl 命令,如下图所示。
您还可以使用 service 命令来重新启动服务,使用以下示例的语法,其中重新启动了蓝牙服务。
重新加载服务是重新启动的一个很好的选择。当服务中支持重载时,配置更改无需重新启动整个服务即可生效,从而防止服务中断。
要使用 systemctl 命令重新加载服务,请使用以下示例中所示的语法,其中 vsftpd 服务的配置会在不中断服务的情况下重新加载 (无需重新启动)。
要使用 service 命令而不是 systemctl 重新加载服务,请使用以下语法,其中重新加载 vsftpd。
Linux 服务管理故障排除命令
通常,当服务失败时,我们会重新启动它,或者停止它,然后使用本教程前面解释的一些命令重新启动它。
systemctl 命令后跟 –failed 选项将列出未正确加载或启动的失败服务,或者打断了。
要显示失败的服务,请使用以下命令。
汇总表 用于管理服务的 systemctl 命令选项如下:
- Check service status
sudo systemctl status <服务名称>
- Stop a service
sudo systemctl stop <服务名称>
- Disable a service
sudo systemctl禁用<服务名称>
- Start a service
sudo systemctl start <服务名称>
- Enable a service
sudo systemctl启用<服务名称>
- Reload a service
sudo systemctl reload <服务名称>
- Restart a service
sudo systemctl restart <服务名称>
用于管理服务的 service 命令选项如下:
- Check service status
sudo service <服务名称> 状态
- Stop a service
sudo service <服务名称> stop
- Start a service
sudo service <服务名称> 启动
- Reload a service
sudo service <服务名称> 重新加载
- Restart a service
sudo service <服务名称> –完全重启
结论
正如您所看到的,管理服务非常容易。任何 Linux 用户都可以通过运行简单的命令来禁用、启用、启动、停止和重新启动服务。正如简介中所述,无论用户体验如何,学习如何管理服务都是强制性的;这可以在任何级别学习。本教程中的所有说明适用于所有具有 Systemd 系统/服务管理器的 Linux 发行版,其中包括大多数发行版。您无需记住 systemctl 和 service 命令参数,systemctl 提供了额外的改进和功能,并且两个手册页都可用。
感谢您阅读本教程。我希望这有帮助。继续关注我们,获取更多专业 Linux 内容。