wget+FTPでレンタルサーバーのファイルを取得する方法

ftp-wget

以前、レンタルサーバーデータベースファイル自動バックアップする方法を紹介しました。
しかし、バックアップしたデータはレンタルサーバー内に保存されたままで、もし、サーバー自体にトラブルが発生した場合は、せっかくバックアップしたデータを取り出すことができなくなります。
そこで今回は、レンタルサーバー内にあるファイルをwgetコマンドとFTP自宅サーバーダウンロードする方法をご紹介します。

FTPのユーザーとパスワード付きwget

FTP認証で使用するユーザー名パスワードを指定してダウンロードする方法は以下の通りです。

wget ftp://[ファイルパス] --user=[ユーザー名] --passwd=[パスワード]

下記は、当サイトでお馴染みのエックスサーバーのルートディレクトリ直下にある、backupフォルダ内のdump_[今日の日付].sqlをダウンロードする場合の例です。

wget  +%y%m%d).sql --user=XXXX@XXXX.XXX --password=XXXXXXXX

ついでに、保存先をマウントしたNASに指定するとこんな感じです。

wget  +%y%m%d).sql --user=XXXX@XXXX.XXX --password=XXXXXXXX -P /mnt/nas/backup

URLに認証情報を付ける

FTPURLユーザーパスワードを付ける方法もあります。
どちらも動きは同じです。

wget ftp://[ユーザー名]:[パスワード]@[ファイルパス]

ただ、この方法を使う場合には注意が必要です。
それは、ユーザー名パスワードURLエンコードしなければならないということ。
特にエックスサーバーのようにユーザー名に「@(アットマーク)」があると失敗してしまいます。
URLエンコードしてくれるサイトなどを利用してwgetしましょう。

URLエンコード例

@  %40

HTTPでhtaccess認証の場合

余談ではありますが、最後にhtaccess認証を使ったHTTP経由でダウンロードする場合も紹介しておきます。

wget  +%y%m%d).sql --http-user=[ユーザー名] --http-passwd=[パスワード]

当然ですが、HTTPの場合はドキュメントルート配下になりますのでご注意ください。

最後に

バックアップできることが確認できたら、cron等でこれを毎日取得しておけば、最悪1日前まで戻せますね。
自宅サーバーの方もバックアップしていますので、もう何が合っても怖くない!…かも。
同時に壊れた場合はさすがに諦めます。


Amazonベストセラー

返信を残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

CAPTCHA