从 ZIP 文件(如我们的可下载备份功能生成的文件)恢复备份有时会是一个漫长的过程。如果在使用 SFTP 上传备份前在本地计算机上解压缩 ZIP 文件,很可能会遇到瓶颈,因为 SFTP 只能同时传输有限数量的文件。
幸运的是,有一种更快的方法可以大大缩短备份恢复时间。
与其在本地解压缩 ZIP 文件并上传解压缩后的文件夹,不如先将 ZIP 文件上传到服务器,然后再解压缩,这样通常会更快。
在本篇文章中,我们将介绍如何使用 SSH 解压上传到服务器的文件。在我们的示例中,我们将解压服务器上的备份文件,但同样的技术也可用于解压任何 Linux 服务器上的任何 ZIP 文件。
第 1 步 – 使用 SSH 登录服务器
第一步是用 SSH 登录服务器。为此,你需要一个 SSH 客户端,如 macOS 和 Linux 中的内置终端应用程序或 Windows 上的免费 PuTTY 客户端,以及 SSH 登录详细信息–IP 地址、用户名、密码(可选)和端口。
密码与公钥验证
你可能想知道为什么密码是可选的。使用 SSH 登录服务器时,有两种身份验证方法:密码和公钥身份验证。密码验证方法使用纯文本密码。
公钥身份验证被广泛认为是比密码身份验证更安全的替代方法。公钥验证方法要求你生成一对密钥–公钥和私钥。公钥上传到服务器,私钥存储在本地计算机上。在 SSH 登录过程中,会验证这两个密钥之间的加密链接,以验证用户身份。
部分服务器提供商支持用户通过面板上传 SSH 公钥。如果您使用的是其他服务器提供商,我们建议您查看相关文档,了解如何将 SSH 密钥上传到服务器。
现在我们已经介绍了密码和公钥验证的区别,接下来让我们看看 SSH 登录过程。
我们通常可以在仪表盘中找到服务器的 SSH 详细信息。
找到登录信息后,可以使用以下 SSH 命令登录。
>ssh username@ip-address -p port
根据下面的登录信息示例,SSH 终端命令为 ssh kinstasite@146.148.59.197 -p 24910
。如果不使用公钥身份验证,执行登录命令后还会提示输入 SSH 密码。
- IP 地址: 146.148.59.197
- 用户名: kinstasite
- 端口: 24910
SSH 登录成功后,你应该会在终端窗口中看到如下内容。
SSH 终端窗口
第 2 步 – 安装 Unzip 软件包(可选)
在某些 Linux 发行版中,默认情况下不安装 unzip
软件包。Kinsta 用户不必担心安装 unzip
软件包,因为我们的所有网站容器都自动安装了该软件包。如果你管理的服务器没有安装 unzip
软件包,你可以使用下面的命令来安装它,注意需要 sudo 级别的权限。
Ubuntu 和 Debian
sudo apt install unzip
CentOS 和 Fedora
sudo yum install unzip
第 3 步 – 使用终端解压 ZIP 文件
下一步是导航到 ZIP 文件并解压。要导航到正确的文件夹,我们可以使用 cd 命令,如下图所示。
>cd directory
我们已将 backup.zip
文件上传到 ~/private
目录,因此将使用下面的命令。
>cd ~/private
注意我们的终端提示现在如何显示 ~/private
目录。
导航到包含 ZIP 文件的目录
我们可以使用 ls
命令列出当前目录下的文件和文件夹。在下面的截图中,你可以看到 ~/private
目录中的 backup.zip
文件。
在终端中列出文件
解压 ZIP 文件有两种方法。你可以将其解压到当前目录或其他目录。
要将文件解压到当前目录,请使用下面的命令。
>unzip your-file.zip
要将文件解压缩到其他目录,请使用此命令。
>unzip your-file.zip -d directory
对于 backup.zip
文件,我们要将其解压到 ~/public
文件夹,可以使用下面的命令来完成。
>unzip backup.zip -d ~/public
运行 unzip
命令后,你会看到一系列以 “inflating” 开头的行。这表明解压过程已成功启动。
在终端中解压文件
解压缩过程结束后,使用 cd
命令导航到目标目录,并使用 ls
命令列出文件,以验证解压缩后的文件是否在正确的位置。
验证解压后的文件
如果想在解压缩后删除原始 ZIP 文件,可以使用 rm
命令,如下所示。
>rm /path/to/your-file.zip
一般来说,如果要处理超过 50 MB 大小的 ZIP 文件,在服务器上解压缩通常比在本地计算机上解压缩更快。不过,解压 ZIP 文件还有更多好处,因为除了恢复备份,使用 SSH 和终端还能在很多情况下发挥作用。
小结
使用 SSH 在终端中解压 ZIP 文件可以大大加快工作流程,尤其是在批量上传大量文件的情况下。使用本帖中列出的 SSH 命令,你就能快速恢复备份和移动内容,而无需等待漫长的 SFTP 上传。
评论留言