vCSAログイン時のエラー(telemetry-ui)

【環境】
vCSA 6.0u2a
Windows10 + Firefox 51

上記の環境にて、vCSAへログインすると、次のようなエラーが出た。

内部なエラーが発生しました - Unable to load resource module from /vsphere-client/telemetry-ui/locales/telemetry-ui-en_US.swf。
このエラーによって発生した問題をクリアするために、クライアントを再ロードすることをお勧めします。
vSphere Web Client を再ロードするには、「はい」をクリックしてください?

f:id:savakan:20170108154515p:plain


「エラースタック」のリンクをクリックすると、次のように表示される。

Error: Unable to load resource module from /vsphere-client/telemetry-ui/locales/telemetry-ui-en_US.swf
	at MethodInfo-666()
	at flash.events::EventDispatcher/dispatchEvent()
	at ModuleInfoProxy/moduleEventHandler()
	at flash.events::EventDispatcher/dispatchEvent()
	at ModuleInfo/errorHandler()

f:id:savakan:20170108154522p:plain


「はい」を押すとリロードされるが、同じエラーが出る。
「いいえ」を押すと、次のエラーが出る。一部が「en_US→ja_JP」になったもの。

f:id:savakan:20170108154526p:plain

f:id:savakan:20170108154530p:plain


ここで「いいえ」を押すと、vCSAへログインして普通に操作は可能。
(実際には、何か問題があるかもしれない)

原因は、ブラウザのアドオンの uBlock Origin が有効になっていたこと。

このサイトでは、広告ブロックを無効にすることで、上記のエラーが出なくなった。

Windows で busybox を使う

Windowsgrep/cut/uniq などを手軽に使いたかったので、busybox 使ったメモ。

インストーラではなく実行ファイルのみなので、レジストリも汚さない。


入手先
https://frippery.org/busybox/

busybox.exe」のダウンロードリンクがある。

ダウンロード後、念のため VirusTotal でチェック。

VirusTotal でチェック時に、ハッシュ値も確認する。

自分が入手時は以下のもの。
The latest executable is 419,840 bytes in size. Its sha256sum is:

44493dc69c1f435fe07e47b8fab5602391941cb798eb40d369c7cd47fb82cfba


なお、WindowsPowerShell 4.0以降(Windows 8.1 / 2012 R2以降)なら、次のようにハッシュ値を計算できる。

PS > Get-FileHash .\busybox.exe -Algorithm SHA256


◆使用例

PowerShellまたはコマンドプロンプトにて、以下のようにする。

PS> busybox ls -a
DOS> busybox ls -a


これだと grep を多段にする時なんかに面倒なので、busybox を省略できるようにしたい。

busybox のコマンドのハードリンクを任意のフォルダに作成する。

例えば、E:\test-busybox にコマンド群を展開する場合。

PS> .\busybox --install E:\test-busybox

上記のフォルダ内では、busybox を省略してコマンドを実行できる。

PS E:\test-busybox> ls -a


PowerShellの場合、パイプでgrepやcutを使う場合、下記のようにするとエラーになる。

PS E:\test-busybox> cat access_log | grep -i error
grep : 用語 'grep' は、コマンドレット、関数、スクリプト ファイル、または操作可能なプログラムの名前として認識されません。名前が正しく記述されていることを確認し、パスが含まれている場合はそのパスが正しいことを確認してから、再試行してください。
発生場所 行:1 文字:18
+ cat access_log | grep -i error
+                  ~~~~
    + CategoryInfo          : ObjectNotFound: (grep:String) [], CommandNotFoundException
    + FullyQualifiedErrorId : CommandNotFoundException

Suggestion [3,General]: コマンド grep は見つかりませんでしたが、現在の場所に存在します。Windows PowerShell は、既定では、現在の場所からコマンドを読み込みません。このコマンドを信頼する場合は、".\grep" と入力してください。詳細については、"get-help about_Command_Precedence" と入力してヘルプを参照してください。

メッセージの通り、PowerShellの場合、パイプ以降では .\ を指定する必要がある。

PS E:\test-busybox> cat access_log | .\grep -i error
PS E:\test-busybox> cat access_log | .\grep -i error | .\cut -f 1-5

一方、DOSプロントの場合は、.\ を指定する必要はない。

DOS E:\test-busybox> cat access_log | grep -i error


また、busybox-w32 では、コマンドラインワイルドカードを使用できない。

公式ドキュメントに記載されている。
https://github.com/rmyorston/busybox-w32/blob/master/README.md

Wildcard expansion is disabled by default, though it can be turned on at
compile time. This only affects command line arguments to the binary:
the BusyBox shell has full support for wildcards.

createuser 時にロールの属性設定をする方法

CnetOS のベースリポジトリにあるPostgreSQLのバージョンによって、createuser の動作が異なる件。

知人に何回も聞かれるのでメモ。

CnetOS 6.x(PostgreSQL 8.4)の場合

$ createuser -U postgres test1
Shall the new role be a superuser? (y/n) n
Shall the new role be allowed to create databases? (y/n) y
Shall the new role be allowed to create more new roles? (y/n) n

上記のように、ユーザ作成時に一部の属性を対話形式で設定できる。

CnetOS 7.x(PostgreSQL 9.2)の場合

$ createuser -U postgres test1

PostgreSQL 9.2 以降は、何も聞いてこない。すべて n で答えたものとなる。

postgres=# \du
                             List of roles
 Role name |                   Attributes                   | Member of
-----------+------------------------------------------------+-----------
 postgres  | Superuser, Create role, Create DB, Replication | {}
 test1     |                                                | {}


従来のように、createuser 時に対話式で一部の設定を行いたい場合は、「--interactive」オプションを付ける。

$ createuser -U postgres --interactive test2
Shall the new role be a superuser? (y/n) n
Shall the new role be allowed to create databases? (y/n) y
Shall the new role be allowed to create more new roles? (y/n) n

postgres=# \du
                             List of roles
 Role name |                   Attributes                   | Member of
-----------+------------------------------------------------+-----------
 postgres  | Superuser, Create role, Create DB, Replication | {}
 test1     |                                                | {}
 test2     | Create DB                                      | {}


「--interactive」オプションは、9.2 以降のドキュメントに記載されている。

PostgreSQL 9.2
https://www.postgresql.jp/document/9.2/html/app-createuser.html


リリースノートを探したら、9.2のやつに記載されていた。
https://www.postgresql.jp/document/9.2/html/release-9-2.html

createuserは、デフォルトではオプション設定のためのプロンプトを表示しないようになりました。(Peter Eisentraut)

以前と同じ動作をさせるには--interactiveを使ってください。

--interactiveが指定されていなければ、dropuserはユーザ名のプロンプトを表示しないようにしました。(Peter Eisentraut)

PDFファイルがClamAVで検知された件の覚書

2016/9/16~9/17頃から、ClamAVでサーバ上のPDFをスキャンすると、

「Pdf.Exploit.CVE_2016_4207-1」として判定されるようになった。


シグネチャはこの辺。
Signatures Published daily - 22213 | ClamAV | virusdb


1週間程度待っても、ClamAVの定義更新でどうにかなるものでもなかったので、手動でホワイトリストへ追加した。

# echo "Pdf.Exploit.CVE_2016_4207-1" >> /var/lib/clamav/local.ign2

テキスト形式なので、不要になったらファイルの該当行を削除する。

VDP で PBM error occurred during...Connection refused が出る

ESXi6 Update2+VCSA 6update2+VDP 6.1.2 の組み合わせにて、バックアップ時に次のようなエラーが発生する。
(他の組み合わせでは未確認)

PBM error occurred during PostProcessReconfigureSpec: Connection refused


全く同じエラーメッセージではないが、類似例を発見。
https://kb.vmware.com/selfservice/microsites/search.do?language=en_US&cmd=displayKC&externalId=2118557

上記KBのケースでは、「Profile-Driven Storage service」を有効にすれば良いらしい。


現在の稼働状況を確認。

vcsa:~ # service vmware-sps status
VMware vSphere Profile-Driven Storage Service is not running.

動作していなかったので起動させる。

vcsa:~ # service vmware-sps start
Starting VMware vSphere Profile-Driven Storage Service...
Waiting for VMware vSphere Profile-Driven Storage Service....................
running: PID:32169

稼働状況を確認。

vcsa:~ # service vmware-sps status
VMware vSphere Profile-Driven Storage Service is running: PID:32169, Wrapper:STARTED, Java:STARTED

これでVDPのエラーは出なくなった。

リモートデスクトップで Windows10(1607) をシャットダウン/再起動する方法

以前、こんな記事を書いた。

shobon.hatenablog.com


先日、Windows 10 バージョン 1607 を適用したところ、スタートメニューが変わって、リモートデスクトップでも簡単にシャットダウンできるようになった。

f:id:savakan:20160925084821p:plain

うっかりクリックしないよう注意が必要か・・・。

CentOS 7 の psql で tab 補完が大文字にならない件

今更だけど、人に聞かれたついでにメモ。

psql で tab を押してSQLキーワードを補完できるが、バージョンによって大文字だったり小文字だったり違いがある。

CentOS 6 / psql (PostgreSQL) 8.4.20

db=> sel
 ↓ tab
db=> SELECT 
 →SQLキーワードが大文字で補完される


CentOS 7 / psql (PostgreSQL) 9.2.15

db=> sel
 ↓ tab
db=> select
 →SQLキーワードが大文字ではなく、小文字で補完される

PostgreSQL 8.4/9.2 で何が変わったかを、ドキュメントで確認。

8.4
https://www.postgresql.jp/document/8.4/html/app-psql.html
 →COMP_KEYWORD_CASE の項目が無い

9.2
https://www.postgresql.jp/document/9.2/html/app-psql.html
 →COMP_KEYWORD_CASE の項目がある

SQLキーワードを補完する時に大文字小文字のどちらを使用するかを決定します。
lowerまたはupperが設定された場合、補完された単語はそれぞれ小文字または大文字になります。
preserve-lowerまたはpreserve-upper(デフォルト)が設定された場合、 補完された単語は入力済みの文字の大文字小文字を引き継ぎますが、何も入力されていない場合はそれぞれ小文字または大文字に補完されます。

つまり、途中まで大文字で入力されていれば、大文字で補完される。

CentOS 7 / psql (PostgreSQL) 9.2.15

db=> SEL
 ↓ tab
db=> SELECT

以前のバージョンと同じ動作(途中まで小文字でも、大文字で補完する)にしたければ、psql のパラメータで変更できる。

db=> \set COMP_KEYWORD_CASE upper

これをデフォルトにしたい場合は、~/.psqlrc へ記載する。