本読み)2019-10-26半死半生システム屋が恐れることとして、「半分死んでいる」というものがある。簡単にいえば、見た目は生きているのに実は死んでいるという状態のことだ。システムを構築する場合、二重化を考えないSEはいないが、予算の制約やら、システムの重要度の低さから、二重化されないケースは多い。逆にいえば二重化されているシステムは、予算と重要性のハードルをクリアしているということだ。二重化されているシステムがコケるとそれなりに大きなインパクトがある。二重化の厄介なところは、一方が死んでいることをもう一方が判断するのが難しいところである。一般的にサーバーの二重化であれば、pingに応答するか、http要求に応答するか、クエリに応答するかといった判断基準を設けて、基準を満たさなければ死んだと見なしてサービスを死んでいない側に引き継ぐ。pingには応答するが実は死んでいる、httpには応答するが実は死んでいる、クエリには応答するが実は死んでいる、なんて恐ろしいことは当たり前のように発生するのだ。逆に、pingには応答しないが生きているといった、応答しないのに生きているのも怖い。二重化というのは生き死にの判断が確実に行えることが前提の仕組みで、実は生き死にの判断は非常に難しいのだ。近年はこの生き死にの判断が、仮想化によってより難しくなっている。仮想技術によってまるで生きているようにみえるが、実は死んでいる。仮想OSが見せてくれるストレージは生きているのに、物理ストレージは死んでいる、仮想NICは生きているのに物理NICは死んでいる等だ。半死には簡単には再現できないので、テストができない。テストができないということは、切り替えが確実におこなえるという保証がないということだ。今障害が発生したら、結構な確率で二重化かつ半死にだということは覚えておいたほうがいいだろう。半死にが発生した場合にどうやって復旧させるのかというのは、検証方法を含めて設計段階であらかじめ考えておくことが結構重要なんですよという話でした。1903へのアップデート失敗を克服したか3か月ほど前の話。10の1903にアップデートしようと思って、何回か実施したのだけれどもことごとく失敗した。途中までうまくいくのだけれど、インストールが進捗し70%を超えたあたりの再起動でBSODが発生し、1809にロールバックしてしまうのだ。0x40017というものだが、グーグルさんに聞いてもあまり参考にならなかった。BSODも出ていることだし、ダンプ解析すれば一発で原因がわかるだろうと思い、ダンプファイルを解析しようと思ったのだが、ダンプファイルは存在しなかった。なると、手に負えないので1909が出るまで待って、1909を試してもうまくいかなかったら考えるかと思い、一旦アップデートをあきらめた。サブスクリプションの契約者にWindows10の1909の配布が始まったので、早速入手し、KIRAに対してアップデートを試してみたところ、やっぱり同じ現象が発生してインストールがうまくいかないのであった。困ったと思い、いろいろ調査したところ、以前グーグルさんに聞いたときは存在しなかった情報を発見した。なんとBSODに伴うwindowsのロールバックの際はダンプファイルは、c:\$Windows.~bt\Sources\Rollback\setupmem.dmpにあると記載されているではないか。それならダンプを解析すれば簡単だ。Windowsのダンプ解析はwindbgでできる。Windbgはhttps://so-zou.jp/software/tech/tool/debugger/windbg/この辺で使用方法を確認すればよい。-vすればBSODの原因となったであろう部分がかなり正確に判明する。大体の場合はハードかドライバーが原因で、ドライバーが原因なら更新かアンインストールすればよいだけだ。nameにarcsec.sysと記載されている。原因はarcsec.sysというファイルのようであった。Theatre」というソフトの一部であることが判明した。Theatre」をアンインストールして再度1909を適用してみたが、やはりarcsec.sysでBSODを起こしてしまう。アンインストールしてもc:\windows\system32\driversにarcsec.sysは残っているようだった。arcsec.sysファイルはなぜか削除ができないので、おそらくドライバーかサービスとして組み込まれちゃっているのだろう。サービスなら自動起動を停止して再起動すれば削除できるはずなので、サービス一覧を確認したが、ArcSecとかTotalMediaはなさそうだった。あればレジストリで自動起動を阻止するため、\HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\を見るとそのままずばりArcSecキーがあったので、取り急ぎStartに4を設定することで無効化し再起動したところ、ArcSecが削除できるようになっていたので削除した。再度1909をインストールしたところ今度は無事にインストールが行えたのであった。すべては、変なところにダンプファイルを置いておくMSが悪いと思ったものの、おそらく複数回発生するダンプの上書きを回避するために場所を変更したんだろうと思い、まあ許してやらんでもないと思ったのであった。いうことで、windows10のアップグレードでBSODで失敗する場合のリカバリ手順ができたのは喜ばしいのである。1903へのアップデート失敗を克服したかTweet広告を非表示にするもっと読むコメントを書く2019-09-04田舎出身者のゲーム音楽履歴ゲームの音楽について初めて意識したのは、これは間違いなくスーパーマリオである。小学生のころ友人の家に行って見せてもらったファミコンとスーパーマリオはその圧倒的なインパクトで、その夜の私を眠らせなかった。眠りたいのだが、あの電子音楽が耳に残って眠れないのだ。その後に驚いたのはドラクエ3だ。ゲーム音楽を交響楽団が演奏し、それがカセットテープとして販売されるとは。中学校にテープを持ってくる奴がいて、その再生でメロディのすばらしさに驚嘆する。ドラクエはやっていないのに音楽は覚えてしまった。その後、友人の影響でベーマガを知り、友人の打ち込んだYsやらソーサリアンやらでYK-2こと古代祐三氏を知ることとなる。*1高校に入ると、なんといってもFF3のメロディに感激し、植松伸夫氏の名前を知る。そのまま植松伸夫氏の作品をさかのぼってFF1のマトーヤの洞窟にはまる。高校でもゲーム音楽に詳しい友人ができ、古代祐三氏に再度はまり、アクトレイザーに驚愕する。*2このころのスクウェアが圧倒的で、「FF4」のオープニングで心踊らされ、「ロマサガ」の音と曲の良質さに驚き、「FF5」のオープニングのベースにやられ、「クロノトリガー」に神を感じたのであった。PS以前のゲーム音楽は制約により進化してきた分野と思う。制約内でのクオリティの進化を直接体験できたのは非常に運がよかった。制約がなくなった今ゲーム音楽の進化はおそらく止まってしまったように見えるが、「シーン別に音楽を提供できること」が強みであるので、その強みが活かされた音楽が提供されることを望む。*1:この友人は後に某R&Bユニットのプロデュースしたりしている。年に2回くらい巻数が多い(超長期連載の)マンガを数えて、まとめ記事にエア引用されるシリーズ。単独で100巻が14作、シリーズ100巻が9作。クッキングパパ150巻突破。シリーズの集計は「外伝」と思われるものを除外します。△が単独でも70越え。LIGA(6)」「ライジングサン(11-)」あと短期連載が3冊。○BLEACH74巻(完)☆かっとび一斗72巻(完)(「かっとび一斗(46)」、「風飛び一斗(26)」)○NARUTO72巻(完)☆味いちもんめ73巻(「味いちもんめ(33)」、「新(21)」、「独立編(10)」、「にっぽん食紀行(6)」、「世界の中の和食(2)」、「継ぎ味(1-)」)☆男塾72巻(「魁(34)」、「暁(25)」、「極(7)」、「真(6)」)○DREAMS71巻(完)次回用メモカイジシリーズ(69)黙示13、破戒13、堕天13、和也10、ワンポーカー16、24億4-テニプリシリーズ(69)42、新27夕焼けの詩(65)王家の紋章(65)乱太郎(64)かりあげ君(63)※超人ロックはこちらのid:soorceさんによりカウントされた93巻以降、風の抱擁が(3)+4、ホリーサークルが(1)+2、刻の子供達が+3、ラフラールが+4、ドラゴンズブラッドが+4、鏡の檻が+4、ガイアの牙が+2。※シティハンターシリーズはシーケンシャルな物語でないので、集計から除外。00:1270巻以上の漫画Tweet広告を非表示にするもっと読むコメントを書く2019-06-12PHPは知らんのですライセンスの問題さえなければ、無償のツールを会社で使用するのは特に問題ないのだけれど、もちろんデメリットもあって・問題があっても社内リソースで解決しなければならない(サポートが受けられない)・プラットフォームの更新に追随できるとは限らないという感じだ。無償ツールは簡単に使えるが、使い続けることが難しい。OS、ウェブサーバ、DBが変わっただけで動作しなくなるなんてザラで、動作しなくなったら自分で動かすか代替手段を考えなければならない。社内イントラで無償のwikiであるpukiwikiを使用している。非常によくできたツールであり、有志の作ったプラグイン機能も豊富で非常に便利だ。OSのアップデート、Apacheのアップデート、PHPのアップデートなどプラットフォームの更新によって動かなくなることが多い。動かなくなってもPHPが読めれば動かせるのだが、当社にはPHPが読める社員がいないのだ(笑)というわけで、Pukiwikiを使用している環境で、OSを更新したり、PukiWikiを更新したり、Apacheを更新したり、PHPを更新したりしたところ、PukiWikiのプラグイン「checkbox2.inc.php」が一部動かなくなった。pukiwikiで日本語名のページを作成すると、その日本語名ページではcheckbox2が動作しない。PHPなんて書いたことも読んだこともないが、なんとなく眺めているとなんとなく意味がわかってきた。ページ名称を入れてそうな変数を調べるとhtmlspecialcharsという関数で変換しているようだった。この関数を外してみるだけで正しく動作した。関数名から推定するに、XSSを発生させないようにエスケープする関数だろう。コードが読めれば、htmlspecialcharsをはずしてもXSSを起こさないか判断できそうだが、まあイントラなので、とりあえず外しただけで良しとした。ページ名に日本語がある場合、そもそもページ名はhtmlspecialcharsを通す前からエスケープされていそうだったので、おそらくは2重エスケープが問題だったと思われる。知らないプログラミング言語のツールは使うな、どうしても使うなら有償サポートつけるか、その言語を知れ6/13追記htmlspecialchars関数はPHP5.4あたりから第3引数に文字コード指定をしないと日本語処理がうまくいかないという話があるようで、それが原因かもしれません。年に2回くらい巻数が多い(超長期連載の)マンガを数えて、まとめ記事にエア引用されるシリーズ。単独で100巻が14作、シリーズ100巻が9作。ドカベンシリーズが205巻で完結。ミナミの帝王が150巻突破。パタリロ、釣りバカ日誌が100巻突破。シリーズの集計は「外伝」と思われるものを除外します。△が単独でも70越え。LIGA(6)」「ライジングサン(10-)」あと短期連載が3冊。☆かっとび一斗72巻(完)(「かっとび一斗(46)」、「風飛び一斗(26)」)○NARUTO72巻(完)☆味いちもんめ72巻(「味いちもんめ(33)」、「新(21)」、「独立編(10)」、「にっぽん食紀行(6)」、「世界の中の和食(2)」)☆男塾71巻(「魁(34)」、「暁(25)」、「極(7)」、「真(5-)」)○DREAMS71巻(完)次回用メモカイジシリーズ(68)黙示13、破戒13、堕天13、和也10、ワンポーカー16、24億3-テニプリシリーズ(67)42、新25夕焼けの詩(65)乱太郎(64)王家の紋章(64)かりあげ君(62)※超人ロックはこちらのid:soorceさんによりカウントされた93巻以降、風の抱擁が(3)+4、ホリーサークルが(1)+2、刻の子供達が+3、ラフラールが+4、ドラゴンズブラッドが+4、鑑の檻が+3、ガイアの牙が+2。※シティハンターシリーズはシーケンシャルな物語でないので、集計から除外。00:1470巻以上の漫画Tweet広告を非表示にするもっと読むコメントを書く2019-03-13いわゆる一つのBIOSパスワード問題BIOSパスワードという今更な技術があって、これは主に2種類の役割を担っている。1つはBIOS(またはUEFI)の設定変更を特定の人物もしくは組織に限定する役割だ。BIOS設定なんて下手にいじられたら、起動しないなんて当たり前で、トラブルのもとになるのでこの用途で設定するのはわからなくはない。BIOSいじろうなんて奴は、BIOS設定の初期化なんて簡単にやってしまうだろうから、あくまで初心者や非技術者に余計なことをさせないための機能だろう。1つはPCの起動を特定の人物もしくは組織に限定する役割だ。パスワード入力までOSに制御を渡さない役割。これがさっぱりわからないのだ。PCからデータを盗み出すなら、BIOSを通さず、HDDにダイレクトアクセスすればよいのだし、PCの操作権はOSの認証機能に任せればいいだろう。言うのであれば、HDDへのアクセスが困難でかつBIOS設定のクリアが困難なPCやサーバであれば意味があるかもしれない。いずれにせよセキュリティとしてはほとんど意味をなしていないBIOSパスワードであるが、いまだに多くの企業でセキュリティ対策として使用されていたりする。ここで、非常に困るのが「BIOSパスワードのセットアップはどうやっても自動化できない」ということだ。OSが起動していないので、自動化しようがない。企業で大量にPCをセットアップするのは、かなりの部分で自動化可能なのだけれども、BIOSパスワードだけはどうにもならないのだ。バーコードスキャナという機器がある。読んで字のごとし、バーコードを読み取ってコンピュータに読み取った値を渡してくれる機器だ。バーコードスキャナには、キーボード入力モードがある。読み取った値を「キーボード入力」に置き換えてくれるモードだ。1234567890123というバーコードを読み取ったバーコードスキャナは、コンピュータに1234567890123というキーボード入力を与えてくれる。バーコードスキャナは一般的にUSB接続なので、USBによるキーボード入力を受け付けるコンピュータは、バーコードスキャナによるバーコードスキャンで、キーボード入力を代行させることができる。CODE128というバーコードがある。英数字が扱えるバーコードなので、BIOSパスワードに使用可能な文字は大体網羅できるはずである。BIOSパスワード設定は「バーコードスキャナ」で「CODE128化したBIOSパスワード」を読み取ることで簡易化することができるかもしれないという誰が得するかさっぱりわからないお話でした。ブログを報告するスターをつけました引用をストックしましたストック一覧を見る閉じる引用するにはまずログインしてくださいログイン閉じる引用をストックできませんでした。再度お試しください閉じる限定公開記事のため引用できません。