如何通过ssh命令行备份您的网站

必要时需要备份你的网站吗?忘记插件吧!下面介绍如何在GoDaddy和其他Web主机上使用SSH备份网站。...

备份您的网站或博客可能是一项昂贵而艰巨的任务,需要各种插件,或者需要主机提供商提供额外的计划——但实际上不一定非得如此。

如果您有SSH访问您的网站的权限,那么远程执行各种高级任务就很容易了。下面介绍如何在命令行会话中使用SSH备份您的网站。

什么是ssh命令行(ssh command line)?

SSH使您能够直接与Web服务器通信。它并没有提供一个漂亮的界面,或者一个漂亮的GUI,只是一个简单而强大的命令行。对某些人来说,这可能会让人望而生畏,但它所提供的强大功能、速度和自动化程度绝对是一个救命稻草,并使迁移站点的过程变得极其简单。

不幸的是,许多共享主机默认不允许SSH访问您的帐户。然而,这种情况正在改变,如果您使用Linux主机,您应该具有SSH访问权限。如果您的网站由GoDaddy托管,默认情况下应启用SSH。如果没有,您可以在GoDaddy cPanel接口中启用SSH。其他web主机将提供类似的功能。

同时,VPS和专用服务器web主机将允许SSH。不知道有什么区别吗?查看我们的web托管服务指南以了解更多信息。

如何在计算机上使用ssh

这三个桌面操作系统都有一个支持SSH的命令行界面。

  • Windows:使用Windows PowerShell(也可以使用PuTTY)
  • macOS:使用终端
  • Linux:也可以使用终端

只需打开界面并输入ssh命令即可使用相关工具。

如果您以前没有使用过命令行环境,其中一些可能看起来很困难。虽然现在没有时间教您有关SSH的所有知识,但这里有几个捷径:

  1. 使用向上和向下箭头循环浏览以前输入的命令
  2. 键入长文件名时按tab键---如果名称足够唯一,则应自动完成

当您对SSH感到满意时,是时候开始备份您的网站了。

通过ssh登录到您的网站

首先启动首选SSH工具并输入以下内容:

ssh [email protected]

您也只使用IP地址。如果您正在访问尚未分配URL的web服务器,或者正在迁移网站,但URL已移动,则此选项非常有用。

ssh [email protected]

出现提示时输入密码。若您以前从未使用过SSH,那个么当在屏幕上输入密码时,您可能会感到惊讶。

别担心,这是为了安全。

登录后,将显示一个命令提示符,如下所示:

-bash-3.2:~$

这意味着一切都很好,请继续执行这些命令。

首先环顾四周并尝试导航到您的web目录。类型:

ls

“列出”当前文件和文件夹。

cd directoryname

更改为目录。在本例中,我将导航到

httpd

目录,它是我的网站的根目录。那么你可以

ls

再一次,只是为了确定。

现在,我们准备开始SSH备份过程。

使用ssh备份您的网站数据库

由于您可能要备份WordPress安装,因此需要备份数据库和文件。

您需要三位信息来备份数据库。幸运的是,如果您运行的是WordPress,则可以在wp-config.php文件中找到这些文件:

  1. 数据库名称
  2. 数据库用户
  3. 数据库密码

(如果您使用的是其他数据库驱动的web应用程序,请参阅设置文档以了解这些详细信息。)

然后,发出此简单命令,确保在必要时替换用户名、表名和备份文件名:

mysqldump --add-drop-table -u [username] -p [tablename] > [backupfilename].sql

按enter键,然后在出现提示时输入密码。一旦运行,您就可以发布另一个

ls

命令检查文件是否已输出。祝贺您,这是数据库中作为单个SQL文件的所有信息,可以在其他地方备份或导入。

无法使用ssh访问数据库

我们假设您的数据库服务器运行在您托管的同一台服务器上。

但是,在GoDaddy上,MySQL数据库存储在您没有SSH访问权限的远程服务器上。在这种情况下,您需要通过主机的cPanel访问PHPMyAdmin,这超出了本教程的范围。

使用ssh备份网站数据

通过将数据库存储为服务器上的单个文件,您可以继续通过SSH备份站点。首先(使用cd)导航到要在其中创建备份的目录。接下来,使用

tar -vcf yourbackupfilename.tar /directory/path

让我们来分析一下:

  • tar---common Linux compression format, similar to zip but more efficient.
  • -vcf---simple opti*** that say "make a new archive, and tell me what you're doing".
  • tar---your chosen name for the archive
  • /directory/path---specify the path to the website directory

可选的单周期标记可以替代文件路径,指示存档包含所有内容。您也可以使用*作为一个包罗万象的文件,但这会忽略隐藏的文件,例如.htaccess,这对于WordPress来说是必不可少的。

一旦运行,您将拥有一个单独的TAR文件,其中包含站点上的每个文件。

此时,您可以通过FTP连接并下载站点存档。

使用ssh恢复网站备份

假设最坏的情况已经发生,你的网站出现了可怕的问题。你有一个上周备份的所有内容的TAR文件,所以你想恢复它。

首先,通过FTP登录并将备份文件上载到服务器的根目录中。

从解包所有文件开始,与我们备份文件的过程相反:

tar -vxf yourbackupfilename.tar

警告:这将覆盖现有文件!

这里的关键区别是:

-vxf

---指示tar提取文件,而不是创建新备份。

最后一步是将数据库恢复到以前的状态。首先使用与以前相同的密码和表名设置空白数据库。如果你没有这个,你也需要改变你的站点配置设置。

要还原数据库,请使用:

mysql -u [username] -p [tablename] < [databasebackupfilename].sql

ssh网站备份:比web控制台和插件更快

虽然已经发布了各种工具和插件来帮助您进行站点备份,但没有什么比SSH更快了。

如果您拥有对GoDaddy或与您一起主持站点的任何人的SSH访问权限,现在可以备份网站。想知道更多吗?现在是学习如何使用SSH远程管理Linux服务器的时候了。

Subscribe to our newsletter

Join our newsletter for tech tips, reviews, free ebooks, and exclusive deals!

Click here to subscribe

  • 发表于 2021-08-06 16:42
  • 阅读 ( 314 )
  • 分类:编程

你可能感兴趣的文章

像使用git的程序员一样管理文件版本控制

...交的第一步是“暂存”新的或更新的项。看看上面的输出如何让你知道有“未老化”的变化?您可以使用以下命令暂存目录中的所有内容(递归,即包括子文件夹及其文件): ...

  • 发布于 2021-03-13 08:00
  • 阅读 ( 261 )

如何用ssh远程管理linux服务器

...。它之所以成为远程服务器管理的首选是有原因的。学习如何通过SSH远程管理Linux服务器,从连接到安装软件和文件传输。 ...

  • 发布于 2021-03-15 17:05
  • 阅读 ( 497 )

如何在一个树莓圆周率主持自己的网站

...可以选择使用设备RAM进行临时读/写文件存储。当您决定如何使用非常小的web服务器时,您可能需要更改这一点。 ...

  • 发布于 2021-03-21 14:29
  • 阅读 ( 227 )

使用rsync自动将文件备份到远程服务器

...几率现在大大降低了。在本文中,您了解了rsync是什么,如何生成和安装SSH密钥,如何在~./.SSH/config文件中定义服务器,如何同步本地和远程目录,以及如何通过crontab自动化整个过程。今后,所有必需的文件将始终与远程服务器...

  • 发布于 2021-03-28 09:36
  • 阅读 ( 232 )

systemd将改变linux主目录的工作方式

...一个分支,它的创建完全是为了避免使用systemd。 相关:如何在Linux系统上管理Systemd服务 $home目录 在Linux目录结构中,您所做的一切都驻留在“/home”目录中。您的数据文件、图像、音乐和整个个人目录树都存储在这个以您的用...

  • 发布于 2021-04-02 04:05
  • 阅读 ( 205 )

如何备份linux系统

... Ctrl+O将把更改写入文件,Ctrl+X将关闭nano编辑器。 相关:如何在Linux上调度任务:Crontab文件简介 在rsync上摆出友好的面孔 对命令行不太熟悉的人可以使用在rsync上放置图形用户界面(GUI)的许多程序中的一个。两个很好的例子是...

  • 发布于 2021-04-03 09:19
  • 阅读 ( 203 )

如何从linux shell创建和安装ssh密钥

...密钥访问远程登录。它们比密码更安全。我们将向您展示如何在Linux中生成、安装和使用SSH密钥。 密码怎么了? secureshell(SSH)是一种加密协议,用于在远程Linux或类似Unix的计算机上登录用户帐户。通常,这类用户帐户使用密...

  • 发布于 2021-04-03 11:45
  • 阅读 ( 239 )

如何使用ssh隧道访问受限服务器并安全浏览

...IP地址127.0.0.1,指向本地PC)并指定正确的端口。 相关:如何在Firefox中配置代理服务器 例如,您可以将Firefox配置为使用SOCKS代理。这特别有用,因为Firefox可以有自己的代理设置,而不必使用系统范围的代理设置。Firefox将通过SS...

  • 发布于 2021-04-08 08:02
  • 阅读 ( 214 )

用rsync同步数据的非初学者指南

...文中,我们将展示即使是最大的数据囤积者和备份爱好者如何将rsync作为一个单一的解决方案来满足他们所有的数据冗余需求。 警告:仅限高级极客 如果你坐在那里想“rsync到底是什么?”?“或者“我只在非常简单的任务中...

  • 发布于 2021-04-11 11:39
  • 阅读 ( 163 )

iptables初学者指南,linux防火墙

...某种程度上对您非常有用。请继续阅读,我们将向您展示如何配置最通用的Linux防火墙。 埃齐曼摄。 关于iptables iptables是一个命令行防火墙实用程序,它使用策略链来允许或阻止流量。当连接试图在您的系统上建立自身时,ipta...

  • 发布于 2021-04-11 11:45
  • 阅读 ( 170 )
txy5201473696
txy5201473696

0 篇文章

相关推荐