説明†ローカルで作成したスナップショットをリモートに送信するシェルスクリプトです。 内容†#!/bin/bash ######################################################################### # [事前準備] # 1.バックアップサーバー上でSSHUSRのauthorised_keyに公開鍵を登録する # 2.バックアップサーバー上でvisudoを実行して、ユーザーを追加、/sbin/zfsを追加する # 3.ローカルとバックアップサーバー上のZFSディレクトリを確認しておく ######################################################################### export LANG=c ### Common vars #ZFSバックアップサーバー ZFSSVR=192.168.◯.◯ #ZFSバックアップサーバー上のファイルシステム ZFSSVRD=zfs1/$1 #SSH,SUDO実行ユーザー SSHUSR=zfsuser #ローカルのバックアップ対象のZFSファイルシステム ZFSD01=zfs1/$1 #スナップショット名 SNPNAME=snapshot01 #バックアップの際の送信先ファイルシステム振り分け用 YOUBI01=`date +\%a` #YOUBI01=Sun ### Backup Scripts ping -c 3 ${ZFSSVR} # バックアップサーバー上のバックアップデータの削除 /usr/bin/ssh -t ${SSHUSR}@${ZFSSVR} "sudo /sbin/zfs destroy ${ZFSSVRD}/${YOUBI01}@${SNPNAME}" # ローカル上でスナップショットの作成 /sbin/zfs snapshot ${ZFSD01}@${SNPNAME} # ローカルのスナップショットをバックアップサーバーへ送信 /sbin/zfs send ${ZFSD01}@${SNPNAME} | /usr/bin/ssh ${SSHUSR}@${ZFSSVR} sudo /sbin/zfs recv -F ${ZFSSVRD}/${YOUBI01} # ローカルのスナップショットの削除 /sbin/zfs destroy ${ZFSD01}@${SNPNAME} |