昨日、GroupSessionがバージョンアップされたというお知らせメールが届いていた。今日業務終了後にバージョンアップをすることにした。
毎週金曜日は職場の仲間と仕事上がりにスポーツで汗を流す習慣になっているのでとっとと終わらせようと思った。これが初めてのバージョンアップでは無いので手順はWikiに記してある。作業用の備忘録として。
それを見ながら確認しつつ、WindowsパソコンからPuTTYのSSHでCentOSのサーバにアクセスしてコマンド操作をする。
GroupSessionのバージョンアップ作業は、手順は面倒だがやっている事はシンプルなものだ。バージョンアップに失敗してもバックアップさえしっかりとって置けばリカバリーは出来る。そこに慢心が潜んでいた。
そう、やってもうたのである・・・(涙
- Tomcatを停止する。
- データベースとファイルのフォルダをバックアップディレクトリに移動(mv)する
- ワークフォルダなどを削除する
- 新しいバージョンのGroupSessionのwarファイルを配置する。
- Tomcatを起動して、adminでログインし、バージョが上がっている事を確認する。
- 再びTomcatを停止する。
- 生成されたデフォルトデータベースファイルのフォルダを削除する。
- バックアップしておいたデータベースファイルのフォルダを複写(cp)する。(オーナー属性に注意)
- カスタマイズファイル(会社のロゴ画像など)をバックアップから複写(cp) する。
- 再びTomcatを起動する
- いつものアカウントでログインして正常稼働を確認する。
作業が終わったので居残りしていた同僚にバージョンアップ終了の案内。するとしばらくしてなんか変だと連絡が。4月のデータまでしか残ってないというのだ。なんで?そんなハズは無いやろ?
バックアップ(mv) したファイルを確認した。階層を潜り込みながらタイムスタンプを見る。
・・・・・確かに4月以降のデータが無い(汗
ヒストリーコマンドで自分が入力したコマンドを調べてみた。ミスを見つけた。
mvした際に、mv先のディレクトリに前回のバックアップフォルダが残っていた。そこにオプションナシのmvコマンドを使ってしまったものだから、mv出来ていなかったのである。せめて-Rオプションを付けていれば・・・完全に確認ミス。
mvで間違いなく移動出来たか(元のPATHに残ってないか)確認しなかった私のミスである。
さてどうしたものか・・・ext3は復元が困難と聞くので諦めた。
幸いというかデータの日例バックアップは夜間に取る様にしている。だから昨日の業務終了後、つまり昨夜の状態には戻せる。だけど今日一日、みんなが入力したスケジュールや回覧などは全てパァと言う事になる。みんなに取ってみれば「今朝出勤して来た時の状態」に戻ったという事になる。
完全に私のミスなので素直に上司に報告して、みんなには回覧で状況を簡単に報告して謝罪。もう二度と同じミスはしないと誓う。(もうスクリプト書くしかないね)
考えてみれば、cronで毎晩バックアップを走らせているんだから、バージョンアップ作業の直前に手動でバックアップを走らせれば良かった。それにGroupSessionには途中のバージョンから、手動バックアップ機能が追加されたのを忘れていた。これを使っていれば・・・
とにかく反省するしかないが、ミスは誰でもするものだなと改めて痛感(私はミスしないと思っていたのは思い上がりだった)、ミスを防ぐ、リカバリー出来る手法をとらないといけないと思った。
毎回手順は同じっぽいのでシェルスクリプト書こうっと。それが一番だわ。
バージョンアップ後のGroupSessionはまだ軽くしか使ってないが(全員にお詫び謝罪の回覧を回しただけ)明日以降でまた使い込んでいこうと思う。
グループウェアの導入時は使い方が分からないとか、みんな不満が多かったけど、今となってはもはやグループウェアは無くてはならないツールになっちゃたんだよなぁ~


コメント