社内で利用しているwindowsパソコンのライセンス認証が作業漏れで出来てなかった。。。
かなりマニアックな現象ですが、そんなことがありました。
状況は、、、
・クライアントPCはインターネットに接続できない
・インターネットに接続できないので、ライセンス認証が出来ない
・ライセンス認証できていないクライアントPCを把握する必要がある
・資産管理ソフト(skysea)で管理はされているので、スクリプト(バッチ含む)の配布は可能
条件はこんな感じ。
普通であればインターネット側に出られるだけで認証は通るはずですが、ちょっと特殊な状況だったのでバッチファイルを作って資産管理ソフト skyseaで配布し状況を把握するひつようがありました。
つくったバッチファイルを紹介していきます。
skyseaでバッチファイルを配布する
いきなり種明かし。
バッチの中身はこんな感じ。
@echo off
rem 本batの起動ディレクトリをカレントディレクトリにする
cd /d %~dp0rem コンピュータ名を環境変数から取得しファイル名にする。それを変数に格納
SET pc=”c:\temp\%COMPUTERNAME%_check.txt”rem どのホスト名かわかるようにテキスト内にもhostnameを記述
hostname > %pc%rem ライセンス認証確認結果をさっき作ったのCドライブのtempにあるテキストに保存
cscript //nologo c:\Windows\System32\slmgr.vbs /dli >> %pc%rem 自分のPCがworkgroupだったのでIP指定。権限無いとファイルコピーできないのでnet use。
net use \\192.168.0.10\共有 /user:administrator passwordrem 結果ファイルを自分のPCに持ってくる
copy %pc% \\192.168.0.10\共有権限を削除して後処理
net use \\192.168.0.10\共有 /deleteexit
ただ単にライセンス認証の結果だけ出すのは「c:\Windows\System32\slmgr.vbs /dli」でいけます。
このスクリプトをskyseaで撒くとどうなるかというと、
「あらかじめ自分のPCに作った【共有】というフォルダに各PCからライセンス認証されているか/そうでないか、という結果が入ったテキストが送られてくる」
まあこんな感じ。
skyseaからバッチファイルを配布する際の注意点
注意点として、
・共有フォルダを予め作成
・CIFSとNTFSの権限を対向のクライアントPCが書き込めるように設定
・共有フォルダの同時接続数は20なので、net config server /autodisconnect:0 のコマンドでクライアントが通信が終わるとセッションも切れるようにしておく
これはなかなか重要。
net config server /autodisconnect:0
とくにこれ。
共有フォルダの同時接続20というのは忘れがち。
設定を忘れると、ファイルの取得が大幅に遅れます。
取得したファイルはエクセルにでも張り付けて加工すれば、これで社内のライセンス認証が出来てない端末を把握することが出来ました。
ここで言ってる内容がチンプンカンプンで上手くいかないって場合は、ココナラでIT系技術者にノウハウを売ってもらうのも良いでしょう。
インフラ系だったら安いと1000円とかで対応してくれる技術者もいるのでお勧めです。
skyseaで収集したテキストファイルを一つに結合。csv化してエクセルで管理も可能。
エクセルで一定間隔ごとに行列を入れ替えする。5行ごとに関数を使って入れ替え。
収集したテキストの結合やエクセルの加工も↑で紹介してます。
Sky株式会社について記事が多くなってきたので、まとめ記事を書いてます。 是非ご覧ください。 |
コメント