星影の魔術師の魔法の呪文

PR

プロフィール

星影の魔術師

星影の魔術師

キーワードサーチ

▼キーワード検索

2013.06.22
XML
カテゴリ: サーバー/NAS
魔術師です。

本日、休日出勤。
サーバーの RAID コントローラーのライトバックキャッシュのバッテリー消耗で
バッテリー交換作業の立ち会いです。

そして拠点のファイルサーバーのバックアップ用のスクリプトをいじっていました。

先日 メドを立てた

rsync の --link-dest オプションを使ったスナップショットスクリプトです。

--link-dest の優れているところは、
前回バックアップからの差分だけをファイル転送してバックアップして
元から変更の無いファイルは、ハードリンクを作るところ。

これでどの時点のバックアップでもフルバックアップとなります。
毎日がフルバックアップで理想的です。

ハードリンクってデータの実体がひとつに対して、別のファイル名(パス名)を付けること。
今回は日付と時間でバックアップ先を作ってそれぞれにハードリンクを張ります。

前時代の FAT ファイルシステムならクロスリンク・エラーになってしまい
chkdsk をかけると修復でリンクが切られます。

スクリプト中では、
いちばん古いバックアップ、最新のバックアップ、バックアップセットの個数を数えるのに
head/tail/wc なんていかにも Linux (Unix) 的な処理をしています。

その代わりバックアップ数を数えるのにループして変数をインクリメントとか
して無くてシンプルに判定できています。


28個分を残すのは cron に仕込んで 昼休みと定時後に定期実行して、午前中と午後のバックアップ
とりあえず 2週間分としています。

残業時のデータは?って話もありますが、
また考えます。

差分だから大きくないので 3回目を回してもいいのかな。


ここから切り取り


#!/bin/sh
SRC_DIR=/mnt/share1/
DST_DIR=/mnt/share2/backup
MAX_DIR=28
#
BACK_DIR=`date '+%Y%m%d%H%M'`
OLDEST_DIR=`ls -1 ${DST_DIR} | head -1`
NEWEST_DIR=`ls -1 ${DST_DIR} | tail -1`
BACK_CNT=`ls -1 ${DST_DIR} | wc -l`


if [ ${BACK_CNT} -gt ${MAX_DIR} ]; then
rm -rf ${DST_DIR}/${OLDEST_DIR}
fi

echo $BACK_DIR
echo OLD=${OLDEST_DIR}
echo NEW=${NEWEST_DIR}

mkdir -p ${DST_DIR}/${BACK_DIR}

rsync -av --delete --link-dest=${DST_DIR}/${NEWEST_DIR} ${SRC_DIR}/ ${DST_DIR}/${BACK_DIR}/






先日、仕込んでたのでシンプルに素早く出来ました。


ニューマシンには PS/2 ポートは無いのに COM ポートが付いています。
でもピンヘッダだけでコネクタが付いて無いのです。

そこで COM ポートのコネクタ付きブラケットをピン配置は ASUS 互換と読んで、
ASUS マザーである 3世代前の魔術師のマシンから取って来て付けてみました。

テストすると動きました、通信できます!
これで USB 変換で無くて COM1 で行けます。

USB の変換アダプタも調達してるのですけど
2ch 同時通信可能です。



【送料無料】わかる&使えるUNIX基礎講座(シェルスクリプト編) [ 中井獏 ]


人気記事の一覧のある トップ

星影の魔術師に
応援のクリックをポチッとお願いします。

ブログランキング・にほんブログ村へ blogramで人気ブログを分析

皆さんの、協力に感謝しています。




QLOOKアクセス解析






お気に入りの記事を「いいね!」で応援しよう

最終更新日  2013.06.22 19:33:02
コメント(1) | コメントを書く


【毎日開催】
15記事にいいね!で1ポイント
10秒滞在
いいね! -- / --
おめでとうございます!
ミッションを達成しました。
※「ポイントを獲得する」ボタンを押すと広告が表示されます。
x

© Rakuten Group, Inc.
X
Create a Mobile Website
スマートフォン版を閲覧 | PC版を閲覧
Share by: