IBM製バックアップ製品であるTSM(Tivoli Storage Manager)について、よく使うコマンドを並べてみました。TSMは基本的にコマンドベースなので、扱いづらいというのが正直なところですが、使わざるを得ないこともあるかと思いますので、少しでもお役になれば幸いです。
※本記事はTSMサーバがWindowsの場合となります。また、運用時のオペレーションをベースとしています。コマンドの実行は自己責任でお願いいたします。
1.一般的な操作関連
(1)TSMへのログイン方法
①TSMサーバ上でコマンドプロンプトを開いて、TSMのインストールディレクトリへ移動
cd "\Program Files\Tivoli\TSM\server\tsmdiag"
②ログインコマンドを入力し、ユーザ名、パスワードを入力する
dsmadmc ←コマンド入力しEnter
IBM Tivoli Storage Manager
Command Line Administrative Interface - Version 5, Release 4, Level 1.0
(c) Copyright by IBM Corporation and other(s) 1990, 2007. All Rights Reserved.
Enter your user id: <ユーザ名を入力しEnter>
Enter your password: <パスワードを入力しEnter>
Session established with server TSMserver: Windows
Server Version 6, Release 3, Level 4.200
Server date/time: <mm/dd/yyyy hh:mm:ss> Last access: <mm/dd/yyyy hh:mm:ss>
tsm: TSMserver>; →ここでログイン完了
(2)TSMからのログオフ方法
“quit”コマンドでTSMからログオフする
quit
※Windowsの場合、”exit”など間違えてコマンドを打つと、イベントログ上でエラーとしてあがってしまうため、イベントログ監視などしている場合には注意が必要
(3)表示モードの切替(出力結果が見やすくなるかも)
コマンド結果を外部出力する際に、以下のコマンドを実行すると表示方法が変更できる。
dsmadmc -id=<ユーザ名> -password=<パスワード> -display=list
(4)TSMサーバのログを確認する
・期間を指定して出力させる場合
query actlog begindate=mm/dd/yyyy enddate=mm/dd/yyyy
・現在から2日前までのログを出力させる場合
query actlog begindate=today-2
(5)TSMクライアントのログを確認する
クライアント上の下記パスにTSM関連のエラーログが出力される。
C:\Program Files\Tivoli\TSM\server\logs\tsm\dsmerror_<ノード名>.log
(6)実行中のセッションを確認する
query session
(7)実行中のプロセスを確認する
上記(6)で出力されるプロセス番号をいれることで、プロセスの状態が確認できる。
query process <プロセス番号>
(8)コピーグループとノードの紐付けを確認する
query association
(9)期限切れデータの削除
durationで削除する時間を指定可能。下記例では120分間、期限切れデータの削除を実行することを示す。
expire inventory duration=120
2.バックアップ・リストア関連
(1)バックアップのキャンセル(強制終了)
①キャンセル対象のsession_numberを確認する
query session →得られたsession_numberを控える
②以下コマンドで該当セッションをキャンセルする
cancel session <session_number>
例.cancel session 8000
(2)リストア手順(incrementalバックアップの場合)
①クライアントにてバックアップしたファイル(リストア可能なファイル)を確認
dsmc query backup -inactive <フォルダパスorファイルパス>
(-inactiveオプションなしの場合は最新世代のみ表示される)
※確認は以下コマンドで特定日付のみの確認も可能。”-dateformat”は日付の指定方法が選択可能となる。下記”=1″の場合は”mm/dd/yyyy”の形となる
dsmc query backup -dateformat=1 -pitd=mm/dd/yyyy <フォルダパスorファイルパス>
②クライアントにて①で確認したバックアップをリストア
dsmc resotre -dateformat=1 -pitd=mm/dd/yyyy <フォルダパスorファイルパス>
(3)リストア手順(archiveバックアップの場合)
①クライアントにてバックアップしたファイル(リストア可能なファイル)を確認
dsmc query archive -servername=<ノード名> <フォルダパスorファイルパス>
(複数ファイルの指定はワイルドカードが使用可能:例 ”/tmp/*” )
②クライアントにて①で確認したバックアップをリストア
dsmc retrieve -servername=<ノード名> -dateformat=1 -pitd=mm/dd/yyyy <フォルダパスorファイルパス>
(4)バックアップスケジュール方法
①新規スケジュールの設定
ⅰ.TSMサーバにて既存のコピーグループに対して、曜日と時間を指定してバックアップのスケジュールを設定する
下記の場合、「毎週月曜hh:mm:ss」にバックアップの実行をスケジュールする
define schedule standard <コピーグループ名> action=command objects='/tmp/xxxx.ksh' startdate=mm/dd/yyyy starttime=hh:mm:ss schedstyle=enhance dayofweek="M"
ⅱ.設定したスケジュールを特定ノード上で有効化させる
define association standard <コピーグループ名> <ノード名>
(5)設定中のスケジュールを確認する
・期間指定の場合
query event * * type=client begindate=mm/dd/yyyy enddate=mm/dd/yyyy
・現在から終わりの時間を指定する場合
query event standard * enddate=mm/dd/yyyy
(6)スケジュールを変更する
以下の例の場合、元々のスケジュールを火曜、水曜、木曜、金曜、土曜に変更する
update schedule standard <コピーグループ名> action=command objects='/tmp/xxxx.ksh' startdate=mm/dd/yyyy starttime=hh:mm:ss schedstyle=enhance dayofweek="TU,W,TH,F,SA"
(7)スケジュールを削除する
delete schedule standard <コピーグループ名>
(8)TSMのDBバックアップのスケジュールを確認する
query event <TSMDBバックアップ名> type=administrative enddate=mm/dd/yyyy
(9)全コピーグループの定義を確認する
query copygroup f=d
※ArchiveバックアップについてはArchive用に定義されているため注意が必要。上記のようにオプションを付けない場合はtype=backupとなる。
query copygroup type=archive f=d
(10)コピーグループを更新する
①コピーグループの内容を更新する
以下の例はバックアップの保存世代数(verexists)を3世代に変更する
update copygroup standard standard MGM_<コピーグループ名> standard VERExists=3
②更新した内容を適用する
activate policyset standard standard
3.ライブラリ・ボリューム操作関連
(1)ボリューム情報を確認する
以下コマンド出力は、サポート調査の時によく収集すると思います。
query volume f=d
query volhist type=all
query volhist type=DBBackup
query libvol
query dbspace f=d
query system
参考:ボリューム・ヒストリー・ファイル
C:\Program Files\Tivoli\TSM\SERVER1\volumehistory.out
(2)ボリュームの削除
ライブラリからボリュームを削除するコマンド
delete volume <ボリューム名> discarddata=yes
4.その他
(1)TSMDBの仕様について
TSMのデフォルト設定では、DBの容量が80%を超えると自動でDBのバックアップが走行し、空いているテープにデータを移し容量を空けようとする。その際、書き込み先のテープが存在しないと以下のエラーが出力される。
・イベントログ上のエラー
イベントID:21
TSM Server Error: Server: TSMサーバ ANR1893E Process 1000 for Database Backup completed with a completion state of FAILURE.
イベントID:21
TSM Server Error: Server: TSMサーバ ANR4578E Database backup/restore terminated - required volume was not mounted.
テープの追加方法は以下のとおり。
①現状のDBの空き容量を確認
query dbspace f=d
Location Total Space(MB) Used Space(MB) Free Space(MB)
--------------- --------------- --------------- ---------------
D:\TSM\DB 81,918.00 61,495.49 20,422.50
②フリーメディアの本数を確認
下記の場合、TSMDB用のメディアを「TAPE01~05」で設定している。すべて使用されている状態(空きテープがない)だと、マウントリクエスト(テープがありません)のエラーが出力される。
LIB1500 TAPE01 Private DbBackup 1,000 LTO
LIB1500 TAPE02 Private DbBackup 1,001 LTO
LIB1500 TAPE03 Private DbBackup 1,002 LTO
LIB1500 TAPE04 Private DbBackup 1,003 LTO
LIB1500 TAPE05 Private DbBackup 1,004 LTO
③バックアップ装置にてテープを追加する
各バックアップ装置の手順に沿って、TSMで使用しているライブラリに対してテープを追加する。
④テープボリュームのラベル付けとチェックインを実施する
ⅰ. scratchボリューム(どのコピーグループからも使用可能)として使用する場合
label libvol LIB1500 search=yes labelsource=barcode checkin=scratch
ⅱ. privateボリューム(特定のコピーグループで使用可能)として使用する場合
label libvol LIB1500 search=yes labelsource=barcode checkin=private
⑤テープボリュームがTSMから認識されたことを確認する
以下は新規でTAPE006~010を追加し、自動DBバックアップにてTAPE06が使用された状態。
query libvol
LIB1500 TAPE06 Private DbBackup 1,006 LTO
LIB1500 TAPE07 Scratch 1,007 LTO
LIB1500 TAPE08 Scratch 1,008 LTO
LIB1500 TAPE09 Scratch 1,009 LTO
LIB1500 TAPE10 Scratch 1,010 LTO
※参考
TSMDBはデフォルト設定だと、毎日9:00よりDBのバックアップが取得される。
・まとめ
TSM(Tivoli Storage Manager)はCLIベースのバックアップソフトのため、慣れないと難しいです。仕組みもあらかじめ知っておかないと、いざという時にテンパってしまいます。
IBMのコマンドリファレンス見たほうがいいよ!という方もいらっしゃるかと思いますが、まぁ好みですかね笑
以上、「IBM製バックアップソフト Tivoli TSMのBackupでよく使うコマンド」の記事でした。
関連する記事
- 前の記事:
- 次の記事: