6. CO-StoreApi について¶
CO-Store を導入した環境の設定や操作のコマンドライン インターフェイスとして CO-StoreApi (CO-StoreApi.exe) を用意しています。 CO-Store サーバーモジュールをインストールすると、C:Program FilesCO-CONVCO-StoreServer 以下にインストールされます。
CO-StoreApi を利用することで、CO-Store コンソールを利用せずに、書き換え開始、書き換え終了などの各種操作が行えます。 CO-Store のディスク管理をスケジュール実行したい場合などにご利用ください。
CO-Store の提供する自動更新機能も、この CO-StoreApi を利用しています。
6.1. 共通事項¶
6.1.1. 実行権限¶
- 必ず管理者権限で開いた cmd.exe で実行してください。
- タスクスケジューラにより、バッチファイルを実行する場合には、「最上位の特権で実行する」にチェックを入れてください。
6.1.2. 出力¶
- 情報取得時の結果は、stdout に出力されます。
- デフォルトではコマンド実行時の INFO ログも stdout に出力されます。(--quiet オプションによりログ出力を抑制できます。)
6.1.3. 終了コード¶
- 0
- 正常終了。
- 1 以上
- 異常終了。異常終了時には、エラーメッセージが stderr に出力されます。
6.1.4. コマンドの基本構成¶
- コマンドの基本構成は ''CO-StoreApi.exe COMMAND [GLOBAL_OPTIONS] [OPTIONS]'' となっています。
- COMMAND
- 実行するコマンド名。
- GLOBAL_OPTIONS
- コンソールへのログ出力の指示など、すべてのコマンドに共通するオプション。
- OPTIONS
- コマンドごとのオプション。後述します。
6.1.5. 全コマンド共通オプション(GLOBAL_OPTIONS)¶
- CO-StoreApi 実行時、デフォルトでは stdout に実効時の INFO レベルのログが出力されますが、以下のオプションにより制御が可能です。
--quiet コンソールへのログ出力はされません(ログファイルへは出力されます)。情報取得コマンドの利用時に使うと、返された情報の確認がしやすくなります。 --log-level コンソールへのログ出力のレベルを "DEBUG", "INFO", "WARN", "ERROR", "OFF" から指定できます。"OFF" を指定した場合には、--quiet オプションと同じ動作になります。 --log-stderr コンソールへのログ出力を stderr へ出力するようにします。
6.1.6. オプションの記述の仕方¶
複数の名前を列挙する場合は次のように , で区切って指定してください。(, の前後に空白を挟まないでください。):
--device=Sci-201-0001,Sci-201-0002ストア名、ディスク名(系列名)、端末名などは、空白を含む名前も利用できます。空白を含む名前を指定する場合には以下のように " " で囲って指定してください。
1つを指定する場合 (名前の前後を " " で囲う。):
--title="Windows 8 - Tech"複数を指定する場合 (, 区切りで複数指定。リストの前後を " " で囲う。):
--device="Edu 102 001,Edu 102 002,Edu 102 003"
6.2. CO-Store 設定¶
6.2.1. 全取得 (list_config)¶
CO-StoreApi.exe list_config [GLOBAL_OPTIONS] --store=STORE_NAME
オプション¶
--store 対象の CO-Store ストア名。
出力例¶
> CO-StoreApi.exe list_config --quiet --store=Store
readcache_use_templates 0
wol_script_device_dat %ProgramData%\CO-CONV\CO-Store\WOL\wol_script_device.dat
readcache_exe C:\Program Files\CO-CONV\ReadCache\ReadCacheManager.exe
readcache_timeout 600000
schema_version 1.0.2
wol_script_path %ProgramData%\CO-CONV\CO-Store\WOL\wol_script
directed_broadcast 0
mac_ip_table %ProgramData%\CO-CONV\CO-Store\WOL\mac_ip_table.dat
readcache_templates_dir %ProgramData%\CO-CONV\CO-Store\ReadCache
subnet_dat %ProgramData%\CO-CONV\CO-Store\WOL\subnet.dat
with_readcache 1
readcache_debug_mode 1
6.2.2. 取得 (get_config)¶
CO-StoreApi.exe get_config [GLOBAL_OPTIONS] --store=STORE_NAME --name=CONFIG_NAME
オプション¶
--store 対象の CO-Store ストア名。 --name 設定の項目名。
出力例¶
> CO-StoreApi.exe get_config --quiet --store=Store --name=with_readcache
with_readcache 1
6.2.3. 設定 (set_config)¶
CO-StoreApi.exe set_config [GLOBAL_OPTIONS] --store=STORE_NAME --name=CONFIG_NAME --value=VALUE
オプション¶
--store 対象の CO-Store ストア名。 --name 設定の項目名。 --value 指定した項目に設定する値。
出力例¶
> CO-StoreApi.exe config --quiet --store=Store --name=with_readcache --value=0with_readcache に "0" が設定されました。
6.3. セキュリティ グループ設定¶
6.3.1. 管理権限確認 (query_auth_group)¶
オプション¶
--store CO-Store ストア名を指定してください。 --auth-group セキュリティ グループ名を指定してください。
出力例¶
> CO-StoreApi.exe query_auth_group --store=Store --auth-group="test.local/Users/Domain Users" --quiet
セキュリティ グループ "test.local/Users/Domain Users" の管理対象の確認をします。
セキュリティ グループ "test.local/Users/Domain Users" の管理の役割と対象は以下の通りです。
役割: ストア管理者 (2000)
対象: ストア
6.3.2. 管理権限付与 (assign_auth_group)¶
オプション¶
--store CO-Store ストア名を指定してください。 --auth-group セキュリティ グループ名を指定してください。 --auth-target 管理権限の対象 (Farm, Site, Collection, Store, Title) を指定してください。
- ファーム (Farm)
- 追加のオプションは不要です。
- サイト (Site)
- --site でサイト名を指定してください。
- デバイス コレクション (Collection)
- --site でサイト名、--collection でコレクション名を指定してください。
- ストア (Store)
- 追加のオプションは不要です。(--store オプションで兼ねています。)
- 系列 (Title)
- --title で系列名を指定してください。
出力例¶
系列管理者の権限を付与する場合:
> CO-StoreApi.exe assign_auth_group --store=Store --title=Hoge --auth-group="test.local/Users/Domain Users" --auth-target=Title --quiet
セキュリティ グループ "test.local/Users/Domain Users" に管理権限を与えます。
セキュリティ グループ "test.local/Users/Domain Users" の 系列 (Title) "Store\Hoge" に対する管理権限を変更します。
セキュリティ グループ "test.local/Users/Domain Users" に管理権限を与えました。
6.3.3. 管理権限剥奪 (remove_auth_group)¶
オプション¶
--store CO-Store ストア名を指定してください。 --auth-group セキュリティ グループ名を指定してください。 --auth-target 管理権限の対象 (Farm, Site, Collection, Store, Title) を指定してください。
- ファーム (Farm)
- 追加のオプションは不要です。
- サイト (Site)
- --site でサイト名を指定してください。
- デバイス コレクション (Collection)
- --site でサイト名、--collection でコレクション名を指定してください。
- ストア (Store)
- 追加のオプションは不要です。(--store オプションで兼ねています。)
- 系列 (Title)
- --title で系列名を指定してください。
出力例¶
ストア管理者の権限を剥奪する場合:
> CO-StoreApi.exe remove_auth_group --store=Store --auth-group="test.local/Users/Domain Users" --auth-target=Store --quiet
セキュリティ グループ "test.local/Users/Domain Users" から管理権限を削除します。
セキュリティ グループ "test.local/Users/Domain Users" の ストア (Store) "Store" に対する管理権限を変更します。
セキュリティ グループ "test.local/Users/Domain Users" から管理権限を削除しました。
6.4. ストア構成・列挙¶
6.4.1. ストア登録 (add_store)¶
CO-StoreApi.exe add_store [GLOBAL_OPTIONS] --store=STORE_NAME --master=MASTER --slaves=SLAVE(S) [--others=OTHER(S)] [--store-path=STORE_PATH] [--share-name=SHARE_NAME]
オプション¶
--store (作成|登録)するストアのストア名を指定してください。(CO-Store 管理ストア名になります。) --master マスターサーバー名を指定してください。 --slaves スレーブサーバー名を ',' 区切りで列挙して指定してください(1 つ以上のサーバーの指定が)。 --others ストア利用サーバー名を ',' 区切りで列挙して指定してください。 --store-path ストアパスを指定してください。 --share-name 「ストアパスの共有フォルダ名」を指定してください。
実行例¶
''PVS1'' がマスターサーバー、''PVS2'' がスレーブサーバー、''PVS3'' がストア利用サーバーのホスト名の場合の例。:
CO-StoreApi.exe add_store --quiet --store=Store --master=PVS1 --slaves=PVS2 --others=PVS3 --store-path=C:\vDisks\Store --share-name=vDisksShare\Store
CO-Store ストア "Store" の情報が以下のように登録されました。
マスターストレージ: PVS1
スレーブストレージ: PVS2
ストア利用サーバー: PVS3
ストアパス: C:\vDisks\Store
共有名: vDisksShare\Store
6.4.2. スレーブ ストレージ追加 (add_slave_storage)¶
CO-StoreApi add_slave_storage [GLOBAL_OPTIONS] --store=STORE_NAME --server=SERVER(S)
オプション¶
--store CO-Store 管理ストア名を指定してください。 --server スレーブ ストレージに追加するサーバーとして設定したいサーバーを ',' 区切りで列挙してください。(追加サーバーの中から指定してください。)
実行例¶
> CO-StoreApi.exe add_slave_storage --quiet --store=Store --server=PVS3,PVS4
CO-Store ストア "Store" のストレージに ['PVS3', 'PVS4'] が追加されました.
6.4.3. スレーブ ストレージ除外 (remove_slave_storage)¶
CO-StoreApi remove_slave_storage [GLOBAL_OPTIONS] --store=STORE_NAME --server=SERVER(S)
オプション¶
--store CO-Store 管理ストア名を指定してください。 --server スレーブ ストレージから除外するサーバーとして設定したいサーバーを ',' 区切りで列挙してください。(追加サーバーの中から指定してください。)
実行例¶
> CO-StoreApi.exe remove_slave_storage --quiet --store=Store --server=PVS3,PVS4
CO-Store ストア "Store" のストレージから ['PVS3', 'PVS4'] を除外しました.
6.5. 系列に対する操作¶
6.5.1. 共通事項¶
UNASSIGN_POLICY¶
端末への割り付けをする際に、既存の割り付けられたディスクを解除したい場合に指定します。 以下の 3 つのオプションを組み合わせて指定します。(指定されたものが解除されます。組み合わせは任意です。)
--unassign-same-title 同じ系列の別バージョンの割り付けを解除します。 --unassign-different-title 別系列の割り付けを解除します。 --unassign-unmanaged-disk CO-Store 管理外のディスクの割り付けを解除します。
6.5.2. 書き換え開始 (update_title)¶
新たにバージョンを作り指定された系列の書き換え作業を開始します。:
CO-StoreApi.exe update_title [GLOBAL_OPTIONS] --store=STORE_NAME --title=TITIE --device=DEVICE [UNASSIGN_POLICY]
オプション¶
--store 処理の対象となる CO-Store ストア名。 --title 処理の対象となる系列名(ディスク名)。 --device 処理の対象となる端末名。
実行例¶
正常終了:
> CO-StoreApi.exe update_title --quiet --store=Store --title=Hoge --device=Dev-01系列 Hoge を端末 Dev-01 で書き換え開始しました。
6.5.3. 再書き換え開始 (modify_latest_version)¶
指定された系列の最新のバージョンを再度書き換えが出来る状態にします。:
CO-StoreApi.exe modify_latest_version [GLOBAL_OPTIONS] --store=STORE_NAME --title=TITIE --device=DEVICE [UNASSIGN_POLICY]
オプション¶
--store 処理の対象となる CO-Store ストア名。 --title 処理の対象となる系列名(ディスク名)。 --device 処理の対象となる端末名。
実行例¶
正常終了:
> CO-StoreApi.exe modify_latest_version --quiet --store=Store --title=Hoge --device=Dev-01系列 Hoge を端末 Dev-01 で再書き換え開始しました。
6.5.4. 書き換え終了 (finish_update)¶
指定された系列の書き換え中(保守モード)の最新バージョンを複数の端末から利用できる状態(実稼働モード)に変更します。:
CO-StoreApi.exe finish_update [GLOBAL_OPTIONS] --store=STORE_NAME --title=TITLE [--assign-working-device] [UNASSIGN_POLICY]
オプション¶
--store 処理の対象となる CO-Store ストア名。 --title 処理の対象となる系列名(ディスク名)。 --assign-working-device 更新終了後に更新用端末を最新バージョンに割り付ける場合に指定してください。
実行例¶
正常終了:
> CO-StoreApi.exe finish_update --quiet --store=Store --title=Hoge系列 Hoge の書き換えを終了しました。
6.5.5. 書き換え中止(元に戻す) (abort_update)¶
書き換え中(保守モード)の最新バージョンを削除します。:
CO-StoreApi.exe abort_update [GLOBAL_OPTIONS] --store=STORE_NAME --title=TITLE
オプション¶
--store 処理の対象となる CO-Store ストア名。 --title 処理の対象となる系列名(ディスク名)。
実行例¶
正常終了:
> CO-StoreApi.exe abort_update --quiet --store=Store --title=Hoge系列 Hoge の書き換えを中止しました。
6.5.6. 系列名列挙 (list_titles)¶
CO-Store の管理する系列名を列挙します。:
CO-StoreApi.exe list_titles [GLOBAL_OPTIONS] --store=STORE_NAME [--store-type=(Main|Diff)]
オプション¶
--store 処理の対象となる CO-Store ストア名。 --store-type ディスクが所属する CO-Store のストア種別(メインストア: Main, 差分ディスクストア: Diff)。
実行例¶
正常終了:
> CO-StoreApi.exe list_titles --quiet --store=StoreHoge Fuga
6.5.7. 系列情報確認 (query_title)¶
系列の情報を表示します。 --title が指定されていない時には storeに属する全ての系列についての情報を順次表示します。 --detailが指定されている時にはディスクがすべてのストレージで同期が取れているかどうかに関する情報も表示します。:
CO-StoreApi.exe query_title [GLOBAL_OPTIONS] --store=STORE_NAME [--title=TITLE] [--store-type=(Main|Diff)] [--detail]
オプション¶
--store 処理の対象となる CO-Store ストア名。 --title 処理の対象となる系列名(ディスク名)。 --store-type ディスクが所属する CO-Store のストア種別(メインストア: Main, 差分ディスクストア: Diff)。 --detail すべてのストレージで同期が取れているかどうかや、依存関係についての詳細情報を表示します。
実行例¶
- 正常終了
> CO-StoreApi.exe query_title --quiet --store=Store --title=Hoge --detail
Hoge
系列名: Hoge
ディスクサイズ: 60.0 GB
合計消費容量: 17.6 GB
ディスクタイプ: 動的ディスク (ブロックサイズ 2 MB)
モード: 標準イメージ (デバイス ハード ドライブにキャッシュする)
同期状況:
4 PVS1: ○, PVS2: ×
2 PVS1: ○, PVS2: ○
1 PVS1: ○, PVS2: ○
0 PVS1: ○, PVS2: ○
依存関係:
バージョン 2 に依存する系列 "Copy-Hoge" が存在します。
6.5.8. 系列削除 (delete_title)¶
指定した系列を削除します。:
CO-StoreApi.exe delete_title [GLOBAL_OPTIONS] --store=STORE_NAME --title=TITLE
オプション¶
--store 処理の対象となる CO-Store ストア名。 --title 処理の対象となる系列名(ディスク名)。
実行例¶
正常終了:
> CO-StoreApi.exe delete_title --quiet --store=Store --title=Hoge系列 Hoge を削除しました。
6.5.9. バージョン一覧の取得 (list_versions)¶
指定した系列のバージョン一覧を列挙します。:
CO-StoreApi.exe list_versions [GLOBAL_OPTIONS] --store=STORE_NAME --title=TITLE [--version=VERSION] [--version-access=(Production|Test|Maintenance)] [--detail]
- バージョンを指定しないと系列に属するバージョン一覧を返します。
- バージョンアクセス種別(--version-access)を指定すると該当する種別のバージョンのみを返します。
オプション¶
--store 処理の対象となる CO-Store ストア名。 --title 処理の対象となる系列名(ディスク名)。 --version 処理の対象となるバージョン名のリスト。("," 区切り。) --version-access バージョンアクセス種別(実稼動: Production, テスト: Test, 保守: Maintenance)。 --detail 詳細情報を表示します。
出力例¶
実稼働バージョンを取得した例。:
> CO-StoreApi.exe list_versions --quiet --store=Store --title=Hoge --version-access=Production4 2 1 0
詳細情報を表示する例。:
> CO-StoreApi.exe list_versions --quiet --store=Store --title=Hoge --version-access=Maintenance --detail5 系列名: Hoge バージョン名: 5 消費容量: 1.52 GB アクセス: 保守 (Maintenance) コメント: 教室プリンタの設定変更。 作成日時: 2013-10-20 15:22:14 同期状況: PVS1: ○, PVS2: ○
6.5.10. バージョン削除 (delete_version)¶
指定したバージョンを削除します。:
CO-StoreApi.exe delete_version [GLOBAL_OPTIONS] --store=STORE_NAME --title=TITLE --version=VERSION(S)
オプション¶
--store 処理の対象となる CO-Store ストア名。 --title 処理の対象となる系列名(ディスク名)。 --version 処理の対象となるバージョン名のリスト。("," 区切り。) --force 指定するとゴミ箱に入れていない状態からでも削除可能。
実行例¶
正常終了:
> CO-StoreApi.exe delete_version --quiet --store=Store --title=Hoge --version=2,3系列 Hoge のバージョン 2, 3 を削除しました。
6.5.11. コピー系列作成 (copy_title)¶
指定した系列・バージョンの内容を持つ新しい系列を作成します。:
CO-StoreApi.exe copy_title [GLOBAL_OPTIONS] --store=STORE_NAME --title=TITLE --version=VERSION --dst-title=DST_TITLE --dst-title-display=DST_TITLE_DISPLAY [--merge-to-new-base]
オプション¶
--store 処理の対象となる CO-Store ストア名。 --title 処理の対象となる系列名(ディスク名)。 --version 処理の対象となるバージョン名。 --dst-title コピー系列の系列名(PVS 登録用)。 --dst-title-display コピー系列の表示用系列名(CO-StoreConsole 用)。 --merge-to-new-base コピー系列作成後、コピー元系列に依存しないように「基本のマージ」を実施するかどうか。
実行例¶
正常終了:
> CO-StoreApi.exe copy_title --quiet --store=Store --title=Hoge --version=2 --dst-title=Copy-Hoge --dst-title="Hoge のコピー" --merge-to-new-base 系列 "Hoge" バージョン 2 を元にコピー系列 "Hoge のコピー"(Copy-Hoge) を作成しました。 系列 "Hoge のコピー" はコピータスク完了後、系列 "Hoge" への依存が解消されます。
- 0 が返されます。
正常終了 (依存を残す場合):
> CO-StoreApi.exe copy_title --quiet --store=Store --title=Hoge --version=2 --dst-title=Copy-Hoge --dst-title="Hoge のコピー" 系列 "Hoge" バージョン 2 を元にコピー系列 "Hoge のコピー"(Copy-Hoge) を作成しました。 系列 "Hoge のコピー" は系列 "Hoge" に依存してします。
6.5.12. 端末への割り当て (assign_device)¶
特定バージョンへの端末割り当て:
CO-StoreApi.exe assign_device [GLOBAL_OPTIONS] --store=STORE_NAME --title=TITLE --version=VERSION --device=DEVICE(S) [UNASSIGN_POLICY]
最新バージョンへの端末割り当て:
CO-StoreApi.exe assign_device [GLOBAL_OPTIONS] --store=STORE_NAME --title=TITLE --version=latest --device=DEVICE(S) [UNASSIGN_POLICY]
オプション¶
--store 処理の対象となる CO-Store ストア名。 --title 処理の対象となる系列名(ディスク名)。 --version 処理の対象となるバージョン名。 --device 処理の対象となる端末名。("," 区切り。)
実行例¶
正常終了:
> CO-StoreApi.exe assign_device --quiet --store=Store --title=Hoge --version=3 --device=Dev-01系列 Hoge バージョン 3 に端末 Dev-01 を割り付けました。
6.5.13. 書き換え終了時の割り付け変更 (assign_device_post_update)¶
CO-StoreApi.exe assign_device_post_update --store=STORE --title=TITLE --version=VERSION|all
オプション¶
--store 処理の対象となる CO-Store ストア名。 --title 処理の対象となる系列名(ディスク名)。 --version 指定されたバージョンに割り付けられている端末が、指定された系列の最新バージョンに割り付け変更されます。
実行例¶
--version にバージョン番号を指定すると、そのバージョンに割り付けられていた端末が最新バージョンに割り付け変更されます。:
> CO-StoreApi.exe assign_device_post_update --quiet --store=Store --title=Hoge --version=3系列 Hoge バージョン 3 に割り付けられていた端末を最新バージョンに割り付け変更しました。
--version=all を指定すると、系列のいずれかのバージョンに割り付けられていた端末すべてが最新バージョンに割り付け変更されます。:
> CO-StoreApi.exe assign_device_post_update --quiet --store=Store --title=Hoge --version=all系列 Hoge に割り付けられていたすべての端末を最新バージョンに割り付け変更しました。
6.5.14. 端末への割り当て解除 (unassign_device)¶
CO-StoreApi.exe unassign_device [GLOBAL_OPTIONS] --store=STORE_NAME --device=DEVICE(S) [--title=TITLE [--version=VERSION]]
オプション¶
--store 処理の対象となる CO-Store ストア名。 --title 処理の対象となる系列名(ディスク名)。 --version 処理の対象となるバージョン名。 --device 処理の対象となる端末名。("," 区切り。)
実行例¶
正常終了:
> CO-StoreApi.exe unassign_device --quiet --store=Store --title=Hoge --device=Dev-01
- 端末 Dev-01 から以下のディスクの割り付けを解除しました。
Store-LinkHoge@4 Store-LinkHoge@2
6.5.15. レプリケート再実施 (replicate_title)¶
手動でストレージの同期をしたい場合に利用します。(原則、ストレージの同期は CO-Store のタスク処理で行われます。):
CO-StoreApi.exe replicate_title [GLOBAL_OPTIONS] --store=STORE_NAME --title=TITLE --server=SLAVE_STORAGE(S) [--timeout=TIMEOUT]
6.6. 端末に関する操作¶
6.6.1. 端末起動 (boot_device)¶
CO-StoreApi.exe boot_device [GLOBAL_OPTIONS] --store=STORE_NAME --device=DEVICE(S)
オプション¶
--store 処理の対象となる CO-Store ストア名。 --device 処理の対象となる端末名のリスト。("," 区切り。)
実行例¶
正常終了:
> CO-StoreApi.exe boot_device --quiet --store=Store --device=Dev-01
- 以下の端末を起動しました。
Dev-01
6.6.2. 端末シャットダウン (shutdown_device)¶
CO-StoreApi.exe shutdown_device [GLOBAL_OPTIONS] --store=STORE_NAME --device=DEVICE(S)
オプション¶
--store 処理の対象となる CO-Store ストア名。 --device 処理の対象となる端末名のリスト。("," 区切り。)
実行例¶
正常終了:
> CO-StoreApi.exe shutdown_device --quiet --store=Store --device=Dev-01
- 以下の端末をシャットダウンしました。
Dev-01
6.7. コメント確認・編集¶
6.7.1. 指定したバージョンのコメントの取得 (get_version_description)¶
CO-StoreApi.exe get_version_description [GLOBAL_OPTIONS] --store=STORE_NAME --title=TITLE --version=VERSION
オプション¶
--store 対象の CO-Store ストア名。 --title 対象の系列名。 --version 対象のバージョン番号。
出力例¶
> CO-StoreApi.exe get_version_description --quiet --store=Store --title=Hoge --version=3
Windows Update & 壁紙変更
:hoge.bmp:fuga.bmp:1000:演習室用イメージ
6.7.2. 指定したバージョンのコメントからの CO-Booter で利用する PVS オプション用文字列の取得 (get_co_booter_option_string)¶
CO-StoreApi.exe get_co_booter_option_string [GLOBAL_OPTIONS] --store=STORE_NAME --title=TITLE --version=VERSION
オプション¶
--store 対象の CO-Store ストア名。 --title 対象の系列名。 --version 対象のバージョン番号。
出力例¶
> CO-StoreApi.exe get_co_booter_option_string --quiet --store=Store --title=Hoge --version=3
:hoge.bmp:fuga.bmp:1000:演習室用イメージ
6.7.3. 指定したバージョンのコメントを更新 (set_version_description)¶
CO-StoreApi.exe set_from_version_description [GLOBAL_OPTIONS] --store=STORE_NAME --title=TITLE --version=VERSION --description=DESCRIPTION
オプション¶
--store 対象の CO-Store ストア名。 --title 対象の系列名。 --version 対象のバージョン番号。 --description 書き込む文字列。
出力例¶
> CO-StoreApi.exe set_version_description --quiet --store=Store --title=Hoge --version=3 --description="自動更新で作成されました。:hoge.bmp:fuga.bmp:1000:演習室用イメージ"
系列 Hoge バージョン 3 にコメントを書き込みました。
6.8. 情報確認¶
6.8.1. 特定バージョンに割り付けられた端末一覧の取得 (list_assigned_devices)¶
バージョン指定がない場合は系列に割り付けられた端末すべてを返します。
端末種別(--device-mode)を指定した場合には、該当する種別の端末のみを返します。:
CO-StoreApi.exe list_assigned_devices [GLOBAL_OPTIONS] --title=TITLE [--version=VERSION] [--device-type=(Production|Test|Maintenance)] [--active]
オプション¶
--title 処理の対象となる系列名(ディスク名)。 --version 処理の対象となるバージョン名のリスト。("," 区切り。) --device-type 端末種別(実稼動: Production, テスト: Test, 保守: Maintenance)。 --active このオプションを指定すると端末が起動中のもののみを列挙します。
出力例¶
> CO-StoreApi.exe list_assigned_devices --quiet --title=Hoge --version=4 --device-mode=Production --active
Device-01
Device-02
Device-03
Device-04
6.8.2. 指定した端末に割り付けられたディスク一覧の取得 (list_assigned_disks)¶
CO-StoreApi.exe list_assigned_disks [GLOBAL_OPTIONS] --store=STORE_NAME --device=DEVICE
オプション¶
--store 対象の CO-Store ストア名。 --device 処理の対象となる端末名のリスト。("," 区切り。)
出力例¶
ストア名ディスク名の形式で表示されます。(系列 Hoge のバージョン 4, 系列 Fuga のバージョン 12 が割り付けられている場合。):
> CO-StoreApi.exe list_assigned_disks --quiet --device=Device-01
Store-Link\Hoge@4.vhd
Store-Link\Fuga@12.vhd
6.8.3. 系統樹表示 (show_phylogram)¶
ディスクファイル (.vhd, .avhd) の依存関係を系統樹で表示します。:
CO-StoreApi.exe show_phylogram [GLOBAL_OPTIONS] --store=STORE_NAME [--title=TITLE] [--server=SERVER]
系列を指定すると、指定した系列とその系列が依存する系列(ある場合)を系統樹にしたものを返します。
ストレージ(--server)を指定すると、指定したストレージ上のファイルの依存関係から系統樹を返します。
- レプリケートが完了していない状況などではマスターとスレーブで異なる状況になることもあります。
オプション¶
--store 対象の CO-Store ストア名。 --title 対象となる系列名(ディスク名)。 --server 対象となるストレージのサーバー名。
出力例¶
> CO-StoreApi.exe show_phylogram --store=Store --title=Hoge
::ROOT:: [::ROOT::]
+--Hoge.vhd [C:\vDisks\Store\Hoge.vhd]
+--Hoge.10.avhd [C:\vDisks\Store\Hoge.10.avhd]
| +--Hoge.12.avhd [C:\vDisks\Store\Hoge.12.avhd]
| +--Hoge.14.avhd [C:\vDisks\Store\Hoge.14.avhd]
| +--Hoge.15.avhd [C:\vDisks\Store\Hoge.15.avhd]
+--Hoge.1.avhd [C:\vDisks\Store\Hoge.1.avhd]
+--Hoge.2.avhd [C:\vDisks\Store\Hoge.2.avhd]
+--Hoge.3.avhd [C:\vDisks\Store\Hoge.3.avhd]
+--Hoge.4.avhd [C:\vDisks\Store\Hoge.4.avhd]
+--Hoge.5.avhd [C:\vDisks\Store\Hoge.5.avhd]
+--Hoge.6.avhd [C:\vDisks\Store\Hoge.6.avhd]
+--Hoge.7.avhd [C:\vDisks\Store\Hoge.7.avhd]
+--Hoge.8.avhd [C:\vDisks\Store\Hoge.8.avhd]
+--Hoge.9.avhd [C:\vDisks\Store\Hoge.9.avhd]
6.8.4. バイナリバージョン確認 (show_version)¶
CO-Store ストアを構成するすべてのサーバーにおいて CO-Store システムに関係する各種バイナリのバージョンがどのようになっているかを表示します。:
CO-StoreApi.exe show_version [GLOBAL_OPTIONS] --store=STORE_NAME
オプション¶
--store 対象の CO-Store ストア名。
出力例¶
> CO-StoreApi.exe show_version --quiet --store=Store
PVS:6.1.16.1204
CO-StoreServer@PVS-01:2.0.0.2
CO-StoreServerCommon@PVS-01:2.0.0.2
CO-StoreTaskQueue@PVS-01:2.0.0.2
CO-StoreServer@PVS-02:
CO-StoreServerCommon@PVS-02:
CO-StoreServer@PVS-03:
CO-StoreServerCommon@PVS-03:
CO-StoreServer@PVS-04:
CO-StoreServerCommon@PVS-04:
CO-StoreServer@PVS-05:
CO-StoreServerCommon@PVS-05:
CO-StoreServer@PVS-06:
CO-StoreServerCommon@PVS-06:
CO-StoreApi.exe:2.0.0.0
CO-StoreCommon.dll:2.0.0.1
CO-StoreConfig.exe:
CO-StoreConsole.exe:
IronPython.dll:2.0.21009.0
IronPython.Modules.dll:2.0.21009.00
log4net.dll:1.2.10.0
Microsoft.Scripting.Core.dll:0.9.20209.00
Microsoft.Scripting.dll:0.9.20209.00
Microsoft.Scripting.ExtensionAttribute.dll:0.9.20209.00
PvsProxy.dll:2.0.0.2
stdipy.dll:0.0.0.0
WPFToolkit.dll:
zfsipy.dll:2.0.11822.440
6.9. ログ収集¶
6.9.1. ログ収集 (gather_logs)¶
CO-StoreApi.exe gather_logs [GLOBAL_OPTIONS] --store=STORE(S) --server=SERVER(S) --date=DATE
オプション¶
--store 情報を収集する対象のストア名。("," 区切りで複数のストアを指定可能です。) --server 情報収集対象のサーバー名(IP アドレス)のリスト。("," 区切りで複数のサーバーを指定可能です。原則としてストアに属するすべてのサーバーのサーバー名を直接指定してください。) --date ログの収集対象とする日付を指定する。例) 20110101 (単一の日付を指定), 20110101:20111231 (期間で指定)
- 以降のオプションは原則指定不要。
--costore-dir CO-Store のインストールフォルダ。(デフォルト "C:Program FilesCO-CONVCO-Store") --costore-log-dir CO-Store のログ出力先フォルダ。(デフォルト "C:ProgramDataCO-CONVCO-Storelogs") --pvs-log-dir PVS のログ出力先フォルダ。(デフォルト "C:ProgramDataCitrixProvisioning ServicesLog")
実行例¶
> CO-StoreApi.exe gather_logs --quiet --store=Store --server=PVS1,PVS2,PVS3 --date=20131014:20131020
2013-10-14 から 2013-10-20 のログを回収しています...
ログの回収が完了しました。
.\CO-Store.Logs.2013-10-14=2013-10-20 以下を確認してください。
6.10. データベース構成¶
6.10.1. データベース作成 (create_database)¶
CO-Store で利用するデータベースを作成します。インストール時に 1 回のみ実行されます。:
CO-StoreApi.exe create_database [GLOBAL_OPTIONS] --database-name=DATABASE_NAME --sql-server=SQL_SERVER
オプション¶
--database-name CO-Store で利用するデータベースのデータベース名。 --sql-server SQL サーバー インスタンス名。:
例1) PVS-DB というサーバーの SQLEXPRESS というインスタンスを利用する場合 "PVS-DB\SQLEXPRESS" 例2) PVS-DB というサーバーのポート 1433 でサービスを提供している SQLEXPRESS というインスタンスを利用する場合 "PVS-DB,1433\SQLEXPRESS"
実行例¶
> CO-StoreApi.exe create_database --quiet --database-name=co-store --sql-server=PVS-DB\SQLEXPRESS
CO-Store データベース "co-store" を作成しました。
6.10.2. データベース更新 (update_database)¶
CO-Store で利用するデータベースを指定したバージョン(EXPECTED_VERSION)へ更新します。(指定しない場合には最新に更新。) データベースの更新を指示された場合にのみ実行してください。:
CO-StoreApi.exe update_database [GLOBAL_OPTIONS] --database-name=DATABASE_NAME --sql-server=SQL_SERVER [EXPECTED_VERSION]
オプション¶
--database-name CO-Store で利用するデータベースのデータベース名。 --sql-server SQL サーバー インスタンス名。:
例1) PVS-DB というサーバーの SQLEXPRESS というインスタンスを利用する場合 "PVS-DB\SQLEXPRESS" 例2) PVS-DB というサーバーのポート 1433 でサービスを提供している SQLEXPRESS というインスタンスを利用する場合 "PVS-DB,1433\SQLEXPRESS"
実行例¶
> CO-StoreApi.exe update_database --quiet --database-name=co-store --sql-server=PVS-DB\SQLEXPRESS
CO-Store データベース "co-store" のスキーマバージョンを 1.0.2 に更新しました。
6.11. 自動更新設定¶
CO-Store の自動更新モジュール (CO-StoreAgent) 利用のための API です。
6.11.1. 自動更新有効化 (enable_auto_update)¶
更新用端末で自動更新処理を実行するように設定します。:
CO-StoreApi.exe enable_auto_update [GLOBAL_OPTIONS] --store=STORE_NAME --device=DEVICE --title=TITLE [--enable-auto-logon]
オプション¶
--store CO-Store ストア名を指定してください。 --device 自動更新を実行する端末名を指定してください。 --title 自動更新を実行する系列名を指定してください。 --enable-auto-logon 自動ログオン機能を利用する場合は指定してください。
出力例¶
> CO-StoreApi.exe enable_auto_update --quiet --store=Store --device=Dev-01 --title=Hoge --enable-auto-logon
端末 "Dev-01" は系列 "Hoge" から起動した際に自動更新するように設定されました.
6.11.2. 自動更新無効化 (disable_auto_update)¶
更新用端末での自動更新処理の実行をしないように設定します。:
CO-StoreApi.exe disable_auto_update [GLOBAL_OPTIONS] --store=STORE_NAME --device=DEVICE
オプション¶
--store CO-Store ストア名を指定してください。 --device 自動更新を無効にする端末名を指定してください。
出力例¶
> CO-StoreApi.exe disable_auto_update --quiet --store=Store --device=Dev-01
端末 "Dev-01" の自動ログオン フラグは解除されました.
6.11.3. 端末側スクリプト実行有効化 (enable_device_scripts)¶
更新用端末で端末側スクリプトを実行するように設定します。:
CO-StoreApi.exe enable_device_scripts [GLOBAL_OPTIONS] --store=STORE_NAME --device=DEVICE --path=PATH
オプション¶
--store CO-Store ストア名を指定してください。 --device 自動更新を実行する端末名を指定してください。 --path 端末側スクリプトを保存するフォルダのルートとなるフォルダ名を指定してください。 ここで指定したフォルダ名の下に Private, Standard というフォルダを用意し、 更新時に実行するスクリプトか、通常起動時に実行するスクリプトかを区別します。
出力例¶
> CO-StoreApi.exe enable_device_scripts --quiet --store=Store --device=Dev-01
端末 "Dev-01" は起動時にスクリプトを実行するように設定されました. (スクリプト保存フォルダ名: "Default")
> CO-StoreApi.exe enable_device_scripts --quiet --store=Store --device=Dev-01 --path=Hoge
端末 "Dev-01" は起動時にスクリプトを実行するように設定されました. (スクリプト保存フォルダ名: "Hoge")
6.11.4. 端末側スクリプト実行無効化 (disable_device_scripts)¶
更新用端末で端末側スクリプトの実行をしないように設定します。:
CO-StoreApi.exe disable_device_scripts [GLOBAL_OPTIONS] --store=STORE_NAME --device=DEVICE
オプション¶
--store CO-Store ストア名を指定してください。 --device 自動更新を無効にする端末名を指定してください。
出力例¶
> CO-StoreApi.exe disable_device_scripts --store=Store --device=Dev-01
端末 "Dev-01" 起動時のスクリプト実行は無効化されました.
6.12. CO-Booter 連携¶
CO-Booter の ForceDisk 機能を利用するための API です。
6.12.1. ForceDisk 確認 (query_forcedisk)¶
CO-StoreApi.exe query_forcedisk [GLOBAL_OPTIONS] --store=STORE_NAME --device=DEVICE [--co-booter-server=CO_BOOTER_SERVER]
オプション¶
--co-booter-server リクエスト先の CO-BooterServer を "サーバー IP:ポート" の形式で指定してください。 --store CO-Store ストア名を指定してください。 --device 確認する端末名を指定してください。
出力例¶
登録がある場合の例:
> CO-StoreApi.exe query_forcedisk --store=Store --device=Dev-01 --co-booter-server=10.0.10.11:16910
端末 "Dev-01" の ForceDisk 設定は以下のようになっています.
対象系列: "Hoge"
有効期限: 2013-10-22 15:10:18
登録がない場合の例:
> CO-StoreApi.exe query_forcedisk --store=Store --device=Dev-01 --co-booter-server=10.0.10.11:16910
端末 "Dev-01" の ForceDisk 設定は以下のようになっています.
対象系列: ""
有効期限:
6.12.2. ForceDisk 登録解除 (clear_forcedisk)¶
CO-StoreApi.exe clear_forcedisk [GLOBAL_OPTIONS] --store=STORE_NAME --device=DEVICE --title=TITLE [--co-booter-server=CO_BOOTER_SERVER]
オプション¶
--co-booter-server リクエスト先の CO-BooterServer を "サーバー IP:ポート" の形式で指定してください。 --store CO-Store ストア名を指定してください。 --device 登録解除する端末名を指定してください。 --title 登録解除したいディスク名を指定してください。
出力例¶
> CO-StoreApi.exe clear_forcedisk --store=Store --device=Dev-01 --title=Hoge --co-booter-server=10.0.10.11:16910
端末 "Dev-01" の ForceDisk の解除は、成功しました. (0)
6.12.3. ForceDisk 登録 (set_forcedisk)¶
CO-StoreApi.exe set_forcedisk [GLOBAL_OPTIONS] --store=STORE_NAME --device=DEVICE --title=TITLE --version=VERSION [--co-booter-server=CO_BOOTER_SERVER]
オプション¶
--co-booter-server リクエスト先の CO-BooterServer を "サーバー IP:ポート" の形式で指定してください。 --store CO-Store ストア名を指定してください。 --device 確認する端末名を指定してください。 --title 起動を強制したいディスク名を指定してください。 --version 起動を強制したいディスクのバージョン番号を指定してください。
出力例¶
> CO-StoreApi.exe set_forcedisk --store=Store --device=Dev-01 --title=Hoge --version=4
端末 "Dev-01" の ForceDisk 設定は、成功しました. (0)
6.12.4. ForceDisk 確認 (check_forcedisk)¶
CO-StoreApi.exe check_forcedisk [GLOBAL_OPTIONS] --store=STORE_NAME --device=DEVICE --title=TITLE --version=VERSION [--co-booter-server=CO_BOOTER_SERVER]
オプション¶
--co-booter-server リクエスト先の CO-BooterServer を "サーバー IP:ポート" の形式で指定してください。 --store CO-Store ストア名を指定してください。 --device 確認する端末名を指定してください。 --title 起動を強制したいディスク名を指定してください。 --version 起動を強制したいバージョンを指定してください。
出力例¶
登録されている場合 (結果コード: 0):
> CO-StoreApi.exe check_forcedisk --store=Store --device=Dev-01 --title=Hoge --version=3
端末 "Dev-01" は系列 "Hoge" バージョン 3 で ForceDisk 設定されています.
有効期限切れの場合 (結果コード: 1):
> CO-StoreApi.exe check_forcedisk --store=Store --device=Dev-01 --title=Hoge --version=3
端末 "Dev-01" は系列 "Hoge" バージョン 3 を利用しての ForceDisk 設定は有効ではありません.
端末 "Dev-01" の ForceDisk は期限切れです.
登録されていない場合 (結果コード: 1):
> CO-StoreApi.exe check_forcedisk --store=Store --device=Dev-01 --title=Hoge --version=3
端末 "Dev-01" は系列 "Hoge" バージョン 3 を利用しての ForceDisk 設定は有効ではありません.
端末 "Dev-01" にはディスク "Hoge" は ForceDisk されていません.
6.13. ストア同期 (複数ファーム) 環境¶
6.13.1. ストア同期設定確認 (query_sync_store_configs)¶
オプション¶
--store CO-Store ストア名を指定してください。
出力例¶
マスター ストアの場合:
> CO-StoreApi.exe query_sync_store_configs --store=Store --quiet
ストア "Store" のストア同期設定:
==============================================================================
同期用ストア種別: 同期用マスター ストア
転送用フォルダ: E:\vDisk\Store\Sync
スレーブ ストアの場合:
> CO-StoreApi.exe query_sync_store_configs --store=Store --quiet
ストア "Store" のストア同期設定:
===============================================================================
同期用ストア種別: 同期用スレーブ ストア
転送用フォルダ: E:\vDisk\Store\Sync
未登録の場合:
> CO-StoreApi.exe query_sync_store_configs --store=Store --quiet
ストア "Store" のストア同期設定:
==============================================================================
同期用ストア種別: このストアはストア同期構成ではありません。
転送用フォルダ: E:\vDisk\Store\Sync
6.13.2. マスター ストア登録 (register_master_store)¶
オプション¶
--store CO-Store ストア名を指定してください。
出力例¶
登録成功の場合 (結果コード: 0):
> CO-StoreApi.exe register_master_store --store=Store
ストア "Store" はストア同期環境のマスター ストアに登録されました。
6.13.3. スレーブ ストア登録 (register_slave_store)¶
オプション¶
--store CO-Store ストア名を指定してください。
出力例¶
登録成功の場合 (結果コード: 0):
> CO-StoreApi.exe register_slave_store --store=Store
ストア "Store" はストア同期環境のスレーブ ストアに登録されました。
6.13.4. マスター ストア登録解除 (unregister_master_store)¶
オプション¶
--store CO-Store ストア名を指定してください。
出力例¶
登録成功の場合 (結果コード: 0):
> CO-StoreApi.exe unregister_master_store --store=Store
ストア "Store" はストア同期環境のマスター ストアから登録解除されました。
6.13.5. スレーブ ストア登録解除 (unregister_slave_store)¶
オプション¶
--store CO-Store ストア名を指定してください。
出力例¶
登録成功の場合 (結果コード: 0):
> CO-StoreApi.exe unregister_slave_store --store=Store
ストア "Store" はストア同期環境のスレーブ ストアから登録解除されました。
6.13.6. 共用系列確認 (query_sync_title)¶
オプション¶
--store CO-Store ストア名を指定してください。 --title 共用系列に登録したいディスク名を指定してください。
出力例¶
マスター ストアで共用系列に登録されている場合:
> CO-StoreApi.exe query_sync_title --store=Store --title=Hoge --quiet
ストア "Store" 系列 "Hoge" の共用系列設定:
===============================================================================
この系列は共用系列に設定されています。
同期用ストア種別: 同期用マスター ストア
ストア種別: メインストア
スレーブ ストアで共用系列に登録されている場合:
> CO-StoreApi.exe query_sync_title --store=Store --title=Hoge --quiet
ストア "Store" 系列 "Hoge" の共用系列設定:
===============================================================================
この系列は共用系列に設定されています。
同期用ストア種別: 同期用スレーブ ストア
ストア種別: メインストア
共用系列に登録されていない場合:
> CO-StoreApi.exe query_sync_title --store=Store --title=Hoge --quiet
ストア "Store" 系列 "Hoge" の共用系列設定:
===============================================================================
この系列は共用系列に設定されていません。
同期用ストア種別: 同期用スレーブ ストア
ストア種別: メインストア
6.13.7. 共用系列登録 (register_sync_title)¶
オプション¶
--store CO-Store ストア名を指定してください。 --title 共用系列に登録したいディスク名を指定してください。
出力例¶
マスター ストアで登録成功の場合 (結果コード: 0):
> CO-StoreApi.exe register_sync_title --store=Store --title=Hoge
ストア "Store" の系列 "Hoge" は共用系列に登録されました。
スレーブ ストアで登録成功の場合 (結果コード: 0):
> CO-StoreApi.exe register_sync_title --store=Store --title=Hoge
ストア "Store" の系列 "Hoge" は共用系列に登録されました。
ストア同期環境でない場合 (結果コード: 1):
> CO-StoreApi.exe register_sync_title --store=Store --title=Hoge
ストア "Store" はストア同期環境ではありません。
差分ディスクストアのディスクであった場合 (結果コード: 2):
> CO-StoreApi.exe register_sync_title --store=Store --title=Hoge
ストア "Store" の系列 "Hoge" は差分ディスクストアのディスクです。
ほかの系列に依存している系列は共用系列に指定できません。
6.13.8. 共用系列登録解除 (unregister_sync_title)¶
オプション¶
--store CO-Store ストア名を指定してください。 --title 共用系列から登録解除したいディスク名を指定してください。
出力例¶
マスター ストアで登録解除成功の場合 (結果コード: 0)
> CO-StoreApi.exe unregister_sync_title --store=Store --title=Hoge
ストア "Store" の系列 "Hoge" は共用系列から登録解除されました。
スレーブ ストアで登録解除成功の場合 (結果コード: 0):
> CO-StoreApi.exe unregister_sync_title --store=Store --title=Hoge
ストア "Store" の系列 "Hoge" は共用系列に登録解除されました。
ストア同期環境でない環境で登録解除成功の場合 (結果コード: 0):
> CO-StoreApi.exe unregister_sync_title --store=Store --title=Hoge
ストア "Store" の系列 "Hoge" は共用系列に登録解除されました。
このストアは現在ストア同期環境ではありません。
- ストア同期環境設定を先に解除していた場合に系列の設定を解除する場合を想定しています。
登録されていない場合 (結果コード: 1):
> CO-StoreApi.exe unregister_sync_title --store=Store --title=Hoge
ストア "Store" の系列 "Hoge" は共用系列ではありません。。
6.14. スレーブ系列同期タスク¶
6.15. ディスクのエクスポート・インポート¶
6.15.1. ディスクのエクスポート (export_disk)¶
オプション¶
--store CO-Store ストア名を指定してください。 --title エクスポートしたいディスク名を指定してください。(メインストアの系列のみです。)
出力例¶
エクスポート成功の場合 (結果コード: 0):
> CO-StoreApi.exe export_disk --store=Store --title=Hoge
ストア "Store" からのディスク "Hoge" のエクスポートに成功しました。
マニフェスト ファイルは "E:\vDisk\Store\Hoge.xml" に出力されました。