毎日自分のウェブサイトをバックアップするPHPスクリプトを作成しています。バックアップは別のLinuxサーバに送られますが、どのファイルを圧縮してスクリプトを使って別のLinuxサーバに送ることができますか?どうすればスクリプトを使ってLinuxサーバからファイル/フォルダのセットを別のサーバに転送できますか?
-1
A
答えて
3
1つの可能な解決策(bashで)。
[email protected]_server:/remote/backup/path/
SITE_ROOT=/path/to/your/site/
cd "$SITE_ROOT"
now=$(date +%Y%m%d%H%M)
tar -cvzf /tmp/yoursite.$now.tar.gz .
scp /tmp/yoursite.$now.tar.gz "$BACKUP_SERVER_PATH"
権限(docrootへの読み取りアクセス)とリモートサーバー(scp用)へのsshアクセスを考慮する必要があります。
これは本当に多くの方法があることに注意してください。別の方法として、圧縮されていないバージョンのサイトを格納しても構わない場合は、rsyncを使用することです。
1
TimothéeGroleauが提供する答えはうまくいくはずですが、私のバックアップマシン(利用可能なストレージが多いサーバー)から他のすべてのサーバーをバックアップするプロセスを起動します。
192.168.44.34 userfoo /var/www/foosites
192.168.44.35 userbar /var/www/barsites
/usr/local/etc/backupservers.conf:
は、私の環境では、私はすべてのサーバー、各サーバーの有効なユーザーおよびバックアップへのパスを一覧表示し、設定ファイルを使用します
は/ usr/local/sbinに/ backupservers
#!/bin/sh
CONFFILE=/usr/local/etc/backupservers.conf
SSH=`which ssh`
if [ ! -r "$CONFFILE" ]
then
echo "$CONFFILE not readable" >&2
exit 1
fi
if [ ! -w "/var/backups" ]
then
echo "/var/backups is not writable" >&2
exit 1
fi
while read host user path
do
file="/var/backups/`date +%Y-%m-%d`.$host.$user.tar.bz2"
touch $file
chmod 600 $file
ssh [email protected]$host tar jc $path > $file
done
これはCORRを機能させるにはあなたはSSH鍵を交換する必要があるバックアップするすべてのサーバのパスワードを入力する必要はありません(これを行う方法については、stackoverflowに関する多くの質問/回答があります)。
そして、最後のステップは、各夜プロセスを起動するためにcronにこれを追加することです:
は/ etc/crontabの
0 2 * * * backupuser /usr/local/sbin/backupservers
関連する問題
- 1. PythonスクリプトからGoサーバにオーディオバッファを転送しますか?
- 2. 再インデックスの代わりにあるサーバから別のサーバにsolrインデックスを転送できますか?
- 3. express.js、どうすればhttpサーバとhttpsサーバを区別できますか?
- 4. ftpサーバからPHPスクリプトを使ってSMSを送るには
- 5. C#を使用して同じドメインのサーバから別のサーバにファイルを転送する方法
- 6. MongoDBを別のサーバに転送しますか?
- 7. LinuxサーバからWindowsサーバに電子メールを転送する方法はありますか?
- 8. Jschを使用してUnixからWinxpサーバにファイルを転送
- 9. サーバからクライアントへのMySQLデータベース転送
- 10. あるサーバから別のサーバにファイルをコピーするためのUnixスクリプト
- 11. LinuxサーバからiMessageを送信しますか?
- 12. SFTPサーバがスクリプトから接続を知っていますか
- 13. Androidアプリからサーバに乱数を送ってもらう
- 14. MongoDBのバックアップ、ダンプを別のサーバに転送するサービスが必要ですか?
- 15. nodejsサーバからgmail apiを使ってメールを送信する
- 16. MySQLテーブルを別のサーバに転送するためのベストプラクティス?
- 17. Pythonを使用してローカルマシンからリモートWindowsサーバにファイルを転送する
- 18. ウェブサイトからサーバにファイルを転送する
- 19. 別のソース管理対象サーバにファイルリクエストを転送する
- 20. Bsshは2台のLinuxサーバ間のファイル転送を自動化
- 21. 外部IPからproftpdサーバにファイルを転送できません
- 22. あるサーバから別のサーバにファイルを保存する
- 23. あるサーバから別のサーバにタールボールをコピーすると、
- 24. あるサーバから別のサーバにPHPファイルをコピーする
- 25. GWTのクライアントからサーバにExceptionオブジェクトを送信するにはどうすればいいですか?
- 26. Apache Configからサブディレクトリを別のサーバに送信する - mod_proxy
- 27. 別のサーバから安全にJSからPHPに送信
- 28. サイトをubuntu 16.04サーバに転送する
- 29. LinuxサーバのphpからWindowsサーバ上の画像ファイルにアクセス
- 30. Linuxサーバからsftpを使用して今日の日付(ABC_20161010_DEF.zipなど)のzipファイルをWindowsサーバに移動