Linux ftpshut 命令及实际示例

LinuxLinuxBeginner
立即练习

💡 本教程由 AI 辅助翻译自英文原版。如需查看原文,您可以 切换至英文原版

介绍

在本实验中,我们将探索 Linux 的 ftpshut 命令,该命令用于优雅地关闭 FTP 服务器。我们将学习如何关闭 FTP 服务器、阻止新连接,并在服务器关闭之前允许现有连接完成。此外,我们还将介绍如何安排自动 FTP 服务器关闭。本实验涵盖了实际示例和逐步说明,帮助你掌握 ftpshut 命令。

Linux 命令速查表


Skills Graph

%%%%{init: {'theme':'neutral'}}%%%% flowchart RL linux(("`Linux`")) -.-> linux/SystemInformationandMonitoringGroup(["`System Information and Monitoring`"]) linux(("`Linux`")) -.-> linux/RemoteAccessandNetworkingGroup(["`Remote Access and Networking`"]) linux/SystemInformationandMonitoringGroup -.-> linux/crontab("`Job Scheduling`") linux/SystemInformationandMonitoringGroup -.-> linux/service("`Service Managing`") linux/RemoteAccessandNetworkingGroup -.-> linux/ftp("`File Transferring`") subgraph Lab Skills linux/crontab -.-> lab-422693{{"`Linux ftpshut 命令及实际示例`"}} linux/service -.-> lab-422693{{"`Linux ftpshut 命令及实际示例`"}} linux/ftp -.-> lab-422693{{"`Linux ftpshut 命令及实际示例`"}} end

ftpshut 命令介绍

在本步骤中,我们将探索 Linux 中的 ftpshut 命令,该命令用于关闭 FTP 服务器。ftpshut 命令允许你优雅地关闭 FTP 服务器,阻止任何新连接,并在服务器关闭之前允许现有连接完成。

首先,让我们检查系统上是否正在运行 FTP 服务器:

sudo systemctl status vsftpd

示例输出:

● vsftpd.service - vsftpd FTP server
     Loaded: loaded (/lib/systemd/system/vsftpd.service; enabled; vendor preset: enabled)
     Active: active (running) since Mon 2023-04-24 12:34:56 UTC; 1 day 2h ago
   Main PID: 1234 (vsftpd)
     Tasks: 1 (limit: 4915)
    Memory: 1.1M
    CGroup: /system.slice/vsftpd.service
            └─1234 /usr/sbin/vsftpd /etc/vsftpd.conf

在此示例中,FTP 服务器(vsftpd)正在系统上运行。

现在,让我们使用 ftpshut 命令关闭 FTP 服务器:

sudo ftpshut

示例输出:

Shutdown time has been set to Fri Apr 28 12:34:56 2023.
No new connections will be allowed after that time.

ftpshut 命令设置了 FTP 服务器的关闭时间,在此示例中设置为从现在起 4 天后。在此时间之后,将不允许任何新连接到 FTP 服务器。

你还可以使用 ftpshut 命令指定自定义关闭时间:

sudo ftpshut now "Scheduled FTP server maintenance"

示例输出:

Shutdown time has been set to Fri Apr 28 12:34:56 2023.
No new connections will be allowed after that time.

在此示例中,FTP 服务器将立即关闭,并且尝试连接的用户将看到关闭消息 "Scheduled FTP server maintenance"。

关闭 FTP 服务器

在本步骤中,我们将学习如何使用 ftpshut 命令关闭 FTP 服务器。

首先,让我们检查 FTP 服务器的状态:

sudo systemctl status vsftpd

示例输出:

● vsftpd.service - vsftpd FTP server
     Loaded: loaded (/lib/systemd/system/vsftpd.service; enabled; vendor preset: enabled)
     Active: active (running) since Mon 2023-04-24 12:34:56 UTC; 1 day 2h ago
   Main PID: 1234 (vsftpd)
     Tasks: 1 (limit: 4915)
    Memory: 1.1M
    CGroup: /system.slice/vsftpd.service
            └─1234 /usr/sbin/vsftpd /etc/vsftpd.conf

输出显示 FTP 服务器当前正在运行。

现在,让我们使用 ftpshut 命令关闭 FTP 服务器:

sudo ftpshut now "Scheduled FTP server maintenance"

示例输出:

Shutdown time has been set to Fri Apr 28 12:34:56 2023.
No new connections will be allowed after that time.

在此示例中,FTP 服务器将立即关闭,并且尝试连接的用户将看到关闭消息 "Scheduled FTP server maintenance"。

让我们验证 FTP 服务器是否已关闭:

sudo systemctl status vsftpd

示例输出:

● vsftpd.service - vsftpd FTP server
     Loaded: loaded (/lib/systemd/system/vsftpd.service; enabled; vendor preset: enabled)
     Active: inactive (dead) since Fri 2023-04-28 12:34:56 UTC; 1s ago
   Main PID: 1234 (code=exited, status=0/SUCCESS)
     Tasks: 0 (limit: 4915)
    Memory: 0B
    CGroup: /system.slice/vsftpd.service

输出显示 FTP 服务器现在处于非活动状态(dead),表明它已成功关闭。

安排 FTP 服务器自动关闭

在本步骤中,我们将学习如何使用 ftpshut 命令安排 FTP 服务器的自动关闭。

首先,让我们检查 FTP 服务器的当前状态:

sudo systemctl status vsftpd

示例输出:

● vsftpd.service - vsftpd FTP server
     Loaded: loaded (/lib/systemd/system/vsftpd.service; enabled; vendor preset: enabled)
     Active: inactive (dead)

输出显示 FTP 服务器当前处于非活动状态(dead),这意味着它没有运行。

现在,让我们为未来的特定时间安排 FTP 服务器的自动关闭:

sudo ftpshut +1440 "Scheduled FTP server maintenance"

此命令将安排 FTP 服务器在当前时间 1440 分钟(24 小时)后关闭,并向尝试连接的用户显示消息 "Scheduled FTP server maintenance"。

你还可以为特定的日期和时间安排关闭:

sudo ftpshut 2023-04-30 12:00 "Scheduled FTP server maintenance"

此命令将安排 FTP 服务器在 2023 年 4 月 30 日中午 12:00 关闭。

要验证自动关闭是否已安排,你可以检查 ftpshut 命令的状态:

sudo ftpwho

示例输出:

Shutdown time has been set to Fri Apr 28 12:34:56 2023.
No new connections will be allowed after that time.

此输出显示了 FTP 服务器的计划关闭时间。

总结

在本实验中,我们学习了如何在 Linux 中使用 ftpshut 命令优雅地关闭 FTP 服务器。ftpshut 命令允许你阻止新连接到 FTP 服务器,并在服务器关闭之前允许现有连接完成。我们还探讨了如何安排 FTP 服务器的自动关闭以及设置自定义关闭消息。

最后,我们学习了如何检查 FTP 服务器的状态,并使用 ftpshut 命令立即关闭服务器。

Linux 命令速查表

您可能感兴趣的其他 Linux 教程