SSHコマンドラインを介してWebサイトをバックアップする方法
ウェブサイトやブログのバックアップは、費用がかかり困難な作業になる可能性があり、さまざまなプラグインやホスティングプロバイダーからの追加の計画が必要になりますが、実際にはそうである必要はありません。
WebサイトにSSHでアクセスできる場合は、さまざまな高レベルのタスクをリモートで簡単に実行できます。コマンドラインセッションでSSHを使用してWebサイトをバックアップする方法は次のとおりです。
SSHコマンドラインとは何ですか?
SSHを使用すると、Webサーバーと直接通信できます。それは、きれいなインターフェースや素晴らしいGUIを提供するのではなく、まっすぐで強力なコマンドラインを提供するだけです。これは一部の人にとっては気が遠くなるかもしれませんが、それが提供する純粋なパワー、スピード、自動化のレベルは絶対的な命の恩人であり、サイトの移行プロセスを信じられないほど簡単にします。
残念ながら、多くの共有ホストは、デフォルトでアカウントへのSSHアクセスを許可していません。ただし、これは変更されており、Linuxホスティングを使用している場合は、SSHアクセスが必要です。 WebサイトがGoDaddyでホストされている場合、SSHはデフォルトで有効になっている必要があります。そうでない場合は、GoDaddycPanelインターフェースでSSHを有効にできます。他のウェブホストも同様の機能を提供します。
一方、VPSと専用サーバーのウェブホストはSSHを許可します。違いがわかりませんか?詳細については、ウェブホスティングサービスのガイドをご覧ください。
3つのデスクトップオペレーティングシステムはすべて、SSHをサポートするコマンドラインインターフェイスを備えています。
- Windows:Windows PowerShellを使用します(PuTTYも使用できます)
- macOS:ターミナルを使用する
- Linux:ターミナルも使用します
インターフェースを開き、sshコマンドを入力するだけで、関連するツールを使用できます。
これまでにコマンドライン環境を使用したことがない場合、これの一部は難しいように思われるかもしれません。現在、SSHについてすべてを教える時間はありませんが、ここにいくつかのショートカットがあります:
- 上矢印と下矢印を使用して、以前に入力したコマンドを順番に切り替えます
- 長いファイル名を入力するときにTabキーを押します---名前が十分に一意である場合は、オートコンプリートする必要があります
SSHに慣れたら、Webサイトのバックアップを開始します。
SSH経由でWebサイトにログイン
好みのSSHツールを起動して、次のように入力します。
ssh [email protected]
また、IPアドレスのみを使用します。これは、URLが割り当てられていないWebサーバーにアクセスしている場合、またはWebサイトを移行していてURLが移動した場合に役立ちます。
ssh [email protected]
プロンプトが表示されたら、パスワードを入力します。これまでSSHを使用したことがない場合は、パスワードを入力しても画面に何も表示されないことに驚かれるかもしれません。
心配しないでください、それはセキュリティのためです。
ログインすると、次のようなコマンドプロンプトが表示されます。
-bash-3.2:~$
これはすべてが正常であることを意味するので、先に進んでこれらのコマンドを続行してください。
まず、周りを見て、Webディレクトリに移動してみてください。タイプ:
ls
現在のファイルとフォルダを「一覧表示」します。
cd directoryname
ディレクトリに変更します。この場合、
に移動しますhttpd
私のウェブサイトのルートであるディレクトリ。その後、
ls
繰り返しになりますが、念のため。
この時点で、SSHバックアッププロセスを開始する準備が整いました。
SSHを使用したWebサイトデータベースのバックアップ
おそらくWordPressのインストールをバックアップするので、データベースとファイルをバックアップすることをお勧めします。
データベースをバックアップするには、3ビットの情報が必要です。幸い、WordPressを実行している場合、これらはすべてwp-config.phpファイルにあります。
- データベース名
- データベースユーザー
- データベースパスワード
(別のデータベース駆動型Webアプリケーションを使用している場合、これらの詳細についてはセットアップドキュメントを参照してください。)
次に、この簡単なコマンドを発行します。必要に応じて、ユーザー名、テーブル名、バックアップファイル名を必ず置き換えてください。
mysqldump --add-drop-table -u [username] -p [tablename] > [backupfilename].sql
Enterキーを押し、プロンプトが表示されたらパスワードを入力します。実行したら、別の
を発行できますls
ファイルが出力されたことを確認するコマンド。おめでとうございます。これは、データベース内のすべての情報を1つのSQLファイルとして保存し、他の場所にバックアップまたはインポートする準備ができています。
データベースサーバーは、ホストしているのと同じサーバーで実行されていると想定しています。
ただし、GoDaddyでは、MySQLデータベースはSSHアクセス権のないリモートサーバーに保存されます。このような場合、このチュートリアルの範囲を超えて、ホストのcPanelを介してPHPMyAdminにアクセスする必要があります。
SSHを使用したWebサイトのデータのバックアップ
データベースがサーバー上に単一のファイルとして保存されているので、SSH経由でサイトをバックアップできます。最初に(cdを使用して)バックアップを作成するディレクトリに移動します。次に、
を使用します。tar -vcf yourbackupfilename.tar /directory/path
これを分解してみましょう:
-
---一般的なLinux圧縮形式。zipに似ていますが、より効率的です。tar
-
---「新しいアーカイブを作成し、何をしているのか教えてください」というシンプルなオプション。-vcf
-
---アーカイブに選択した名前tar
-
---ウェブサイトディレクトリへのパスを指定します/directory/path
オプションの単一ピリオドマークは、ファイルパスを置き換えて、アーカイブにすべてを含めるように指示できます。 *をキャッチオールとして使用することもできますが、これにより、WordPressに不可欠な.htaccessなどの隠しファイルが省略されます。
これを実行すると、サイト上のすべてのファイルで構成される単一のTARファイルが作成されます。
この時点で、FTP経由で接続し、サイトアーカイブをダウンロードできます。
SSHを使用したWebサイトバックアップの復元
最悪の事態が発生し、サイトに何かがひどく間違っているとしましょう。先週バックアップしたすべてのTARファイルがあるので、復元したいと思います。
まず、FTP経由でログインし、バックアップファイルをサーバーのルートディレクトリにアップロードします。
すべてのファイルを解凍することから始めます。これは、ファイルをバックアップするために行ったのとは逆です。
tar -vxf yourbackupfilename.tar
警告:これにより、既存のファイルが上書きされます!
ここでの決定的な違い:
-vxf
---新しいバックアップを作成する代わりにファイルを抽出するようにtarに指示します。
最後のステップは、データベースを以前の場所に戻すことです。以前と同じパスワードとテーブル名で空のデータベースを設定することから始めます。これがない場合は、サイトの構成設定も変更する必要があります。
データベースを復元するには、次を使用します。
mysql -u [username] -p [tablename] < [databasebackupfilename].sql
SSH Webサイトのバックアップ:Webコンソールおよびプラグインよりも高速
サイトのバックアップを作成するのに役立つさまざまなツールやプラグインが公開されていますが、SSHよりも高速なものはありません。
GoDaddyまたはサイトをホストしている人にSSHでアクセスできる場合は、Webサイトをバックアップできるようになりました。もっと知りたいですか? SSHを使用してLinuxサーバーをリモート管理する方法を学ぶときが来ました。
-
PHP バックドアはどのようにして Web サイトに感染するのか?
毎日 100 万以上の Web サイトがハッキングされています。 Web サイトが侵害されると、40% の確率で再びハッキングされる可能性があると考えられています。ハッカーは、Web サイトへの再アクセスを可能にする悪意のあるコード (PHP バックドア) を残すことがよくあります。このマルウェアを削除するのは非常に難しいため、管理パネル全体をリセットしても、これらのコードは Web サイトの奥深くに隠されています。これらのコードは、Web サイトへのバイパス アクセスを可能にするため、「バックドア」と呼ばれます。現在、WordPress、Magneto などの人気のある CMS の多くは P
-
Windows でコマンド プロンプトから IP アドレスを見つける方法
PC の IP アドレスを見つける必要があるのに、それができないということはありませんか?心配しないで; Windows のコマンド プロンプトを使用すると、PC の IP アドレスをすばやく把握できます。 コマンド プロンプト (cmd) を使用して PC の IP アドレスを見つける方法 誰もが同じ古い退屈な GUI をいじりたがるわけではありません。私たちの中には、手を汚して、コマンド プロンプト自体から直接 PC をより詳細に制御するのが好きな人もいます。幸いなことに、コマンド プロンプトから PC の IP アドレスを見つけることもできます。 開始するには、[スタート] メニ