ふつーのプログラマです。主に企業内Webシステムの要件定義から保守まで何でもやってる、ふつーのプログラマです。

ハローサマー、グッドバイ(24) 環境構築

»

 谷少尉の決断は早かった。

 『グレイベア、ビーンだ』谷少尉は柿本少尉に呼びかけた。『1 階から救助してやれ。アックス、キトン、テンプルを連れて行け。シルクワームとリーフは入り口、屋上チームは上から援護しろ。こっちを攻撃してくるようなら、発砲を許可する』

 『アックスです。助けてやるんですか?』不満そうな声だ。『ヘッジホッグを殺した奴らですよ。敵対勢力じゃないですか』

 『賛成』誰かが名乗らずに言った。『ドアにたどりついたら中に入れてやるぐらいはいいけど、こっちから出ていってまで手を貸す必要はないと思います』

 『ビーンから全隊員へ。彼らはハーグ条約で言うところの、武器を捨て、自衛の手段を持たない投降者とみなすべきだ。直接手を汚さなくても、ここで見捨てるのは殺すと同義になる。それに訊きたいこともある。救助するんだ』

 モニタには、スクレイパーのカメラで赤外線撮影された映像が映っている。淡いグリーンの塊がいくつも動いているだけだったが、見ているうちに人間とZの区別がついてきた。人間の動きの方に目的意識のようなものが見て取れるのだ。どうやら、チョロ01 はどこかを負傷しているらしく、足を引きずるように進んでいる。シャツを振っているチョロ02 は、わらわらと寄ってくるZを突き飛ばしたり蹴り飛ばしたりと活発に動き、チョロ01 が懸命に歩くのをサポートしているようだ。

 だが、どうやらその派手な動きが、Zを引き寄せてしまったようだ。駐車場内に点在していたZたちが、地面に落ちた飴に群がる蟻のようにチョロ01 と02 に向かって進み出した。チョロ02 はシャツを捨てると、チョロ01 に肩を貸して引きずるように進み始めたが、周囲からZが迫ってくる。

 そのとき数体のZが同時に転倒した。柿本少尉たちが1 階の入り口から出て、UTS-15J を低く撃ちながら前進し始めたのだ。2 人の逃亡者は、この機を逃さず足を速めた。

 『いかん!』誰かが叫んだ。『そっちじゃない』

 進路を塞いでいた放置されたSUV を迂回しようと、チョロ01 と02 は右側に方向を変えたところだった。そこにSUV の陰からフラフラと現れた数体のZが襲いかかる。チョロ02 は思わず足を止めた。

 『レインバード、スクレイパー、止めろ!』

 2 体のZが、頭をバットで強打されたように横に吹っ飛んだ。立ちすくんでいたチョロ02 が、仲間を引っ張るように歩みを再開する。その行く手を遮るように3 体目のZが現れたが、誰かが放ったラバーショット弾で足をすくわれ転倒した。2 人の前方が空いた、と思ったそのとき、SUV の下から、子供のZが這い出すと、誰かが対応する間もなくチョロ02 の腕にしがみついた。

 悲鳴が割れた窓を通ってここまで聞こえた。何度も聞いたことがあるが、一向に慣れることはない、耳を塞ぎたくなるような声だ。

 『くそ!』誰かが罵った。『チョロ02 が噛まれた』

 何秒かの間、あらゆる通信が沈黙した。それを破ったのは谷少尉だった。

 『ビーンだ。チョロ01 のみを救助しろ。チョロ02 は見捨てる』

 ぼくはモニタから視線を外した。膝をついたチョロ02 に、何体ものZが折り重なるように襲いかかるのが見えたからだ。あれでは助からないだろう。あいつらが苦しんで死ぬように祈っただけに後味が悪い。

 『アックスです。チョロ01 を確保。足首を負傷している様子ですが、他は無事です』

 『ビーンだ。丁重に扱え。全員、速やかに撤収』

 チョロ01 は、まだ20 代前半に見える若い男だった。髪は金髪、鼻と耳に合計14 個のピアス。はぎ取られた迷彩服の下には、メッシュ地のインナー。これも速乾性素材なのだろう。鼻の下に目立たない色のパッチが貼ってあり、これで嗅覚を抑制しているのだと思われた。バンド隊員が1 階で全身をくまなく検査し、あらゆる持ち物を取り上げた後、2 階に連れて来られ、床に座らされている。よく見ると、左目の周りが赤く腫れていた。Zから逃れてくる過程でついたのかもしれないが、1 階で隊員の誰かが一発お見舞いしたのかもしれない。そうだとしても同情する気にはなれない。

 「名前は?」

 谷少尉が訊いたが、男はふてくされたように横を向いた。

 「おい。礼儀正しく質問をしているんだぞ。礼儀正しく答えてもらえないか?」

 男は沈黙で答えた。それを見たテンプルが凝縮した怒りをこめた声で言った。

 「靴を脱がせて外に放り出しましょう。非人道的だというなら、水鉄砲でも持たせてやればいい」

 「賛成」アックスも同意した。「俺たちはZを殺してはいかんと言われているが、人間を殺すなとは言われてない」

 「もう一度だけ訊く」谷少尉は冷静な声で言った。「これが最後だ。答えなければ、Zの大群の中で自分の運を試すことになるぞ。お前の名前は?」

 「ふ、藤田」男は怯えた声で答えた。「藤田ヤスシ」

 アックスとテンプルは、がっかりしたような顔になり、舌打ちした。谷少尉は少し苦笑すると質問を続けた。

 「どうして我々を襲撃した?」

 「オレは知らねえよ。オレらはただZを撃ちまくれるからって、西川さんに付いてきただけなんだよ。本当だ」

 Zを撃つ、というあたりで、朝松監視員が激昂した様子だったが、谷少尉は片手を上げて制し、質問を続けた。

 「その西川というのは?あっちの店で指揮してた奴か?」

 藤田はガクガクと首を縦に振った。

 「あんたらとやり合うなんて、ひとっことも聞いてなかったんだ。ただZを撃ちたかっただけだったのに。だから、オレとホリは付き合ってらんねえって逃げようとしたんだ。そしたらオレらまで撃とうとしやがって......」

 「ホリって誰だ?」

 「堀内だよ。さっきまで一緒にいた奴だ」藤田は谷少尉を睨んだ。「銃まで捨てたのに、見殺しにしやがって」

 「ミルウォーキー・カクテルがあれば救ったんだが、あいにくうちの車が爆発したとき一緒に燃えた。おかげで噛まれたらアウトだよ。誰かのせいでな」

 藤田は床に視線を落とした。

 「撃たれそうになったって?」柿本少尉が訊いた。「誰にだ?」

 「西川さんだよ」

 「生きてるのか?」柿本少尉は藤田に詰め寄った。「PC DEPOT に置いてきたときは、床に伸びてたぞ」

 ぼくも信じられない思いだった。最後に見たとき、リーダー格の男はブラウンアイズの一発を受けて意識を失っていたはずだ。

 「あんたらが出て行くのを待って、すぐ引き返して運び出したんだよ」藤田は助けるんじゃなかった、と言いたげに顔をしかめた。「オレは放っておきたかったんだが、他の奴が西川さんがいないと金がもらえないからって」

 「金?誰から?」

 「詳しいことは知らねえよ。本当だ。オレとホリは、ただのサバゲマニアなんだ」

 「よし、立て」谷少尉は藤田に命じた。「あっちでもう少し、詳しく話を聞かせてもらおう。アックス、キトン、テンプル、一緒に来い」

 「なあ、もう知ってることはないよ。本当だってば」

 「かもしれんが、人間は無意識のうちにいろんな情報をストックしているものなんだ」谷少尉はニヤリと笑った。「それを強制的にダウンロードするメソッドなら、いくつか心得がある。あっちに行くのは、一般人には少しばかり刺激の強い方法を試すことになるかもしれないからだ。もちろん、お前が協力的なら、その必要はない」

 「おい」立ち上がった藤田はうろたえたように周囲を見回した。「冗談だろ」

 「すぐにわかる」谷少尉は隊員たちを見た。「リーフ、シルクワームは、屋上のレインバードとスクレイパーと交代だ。ヘッドセットと端末の電源をスタンバイ状態にしておけ。エンジニアの方々は、引き続きソリスト関連をお願いします。残りは交代で仮眠を取れ」

 「ちょっと待て、少尉」朝松監視員が慌てて立ち上がった。「私も事情聴取する必要がある。そっちが終わったら、私に引き渡してもらいたい」

 「わかっています。少なくとも耳と口は使用できる状態で引き渡しますから安心してください」

 朝松監視員は頷いて腰を下ろしたが、藤田は自分を飛び越えて交わされた会話の内容にすっかり怯えてしまったようで、膝をつきそうになった。谷少尉たちは、構わず藤田を引きずるように、2階の奥の方に連れて行ってしまった。

 「あっちは任せておいて」ブラウンアイズが言った。「早くソリストの方を何とかしてよ」

 「わかった」

 ぼくは、胡桃沢さんたちに合図して、臨時の作業台に戻った。

 これがアクション映画なら、観客の前に映し出されるのは、バンド隊員たちが藤田を尋問するか拷問するかして、数々の謎を吐き出させるシーンなのだろう。ストーリー進行上、重要な情報が開示されたタイミングで、裏で何かやっていたエンジニアたちが、魔法のように組み上げたスーパー何とか装置を抱えて出てくれば申し分ない。

 ぼくたちがやっていたのは、もっと地味な作業だった。最初に行ったのは、ノートPC にラズパイマガジンの付録DVD を入れて内容を確認することだった。以前、趣味で少しだけラズベリーパイを触ったことがあるが、もはや記憶が曖昧なので、ラズパイマガジンの説明が頼りだ。

 「OS ですが」ぼくは雑誌をパラパラめくって、目的のページを見つけ出すと、胡桃沢さんに見せた。「これだけのOS が選択できますが、どれにします?推奨は、Raspbian という、Debian ベースのOS なんですが」

 胡桃沢さんはページを見て眉をひそめた。

 「ソリストはRedHat 系だ。Debian だとファイルとかコマンドが異なっていて、動作しない可能性があるな」

 「RedHat 系ですか」ぼくはインストール可能OS の一覧を見た。「だとすると、Pidora ですね。これは、Fedora 系です」

 「ああ、それなら何とかなるだろう」

 2 枚組の付録DVD から、Pidora のイメージファイルを探した。以前にセットアップしたときは、Windows マシンで準備したので、SDFormatter でmicroSD をフォーマットし、OS インストールツールのNOOBS をコピーしたのだが、ここにはLinux マシンしかない。作業はコマンドベースになる。

 拾ってきたUSB カードリーダーに、microSD カードを挿入し、ノートPC に差し込んだ。fdisk で確認してみたが、デバイスが認識されていない。

 「ああ、ちょっと待て」胡桃沢さんが首にかけていたUSB メモリを外して差し出した。「最初にこれで認証しなければダメだ」

 受け取ったUSB メモリを挿入すると、認証ダイアログが立ち上がった。胡桃沢さんが手を伸ばし、パスフレーズを入力、OK メッセージを確認したところでUSB メモリを引き抜いた。

 「これで認識されたはずだ」

 もう一度、fdisk で確認してみると、/dev/sdb2 として認識されている。ファイル形式はFAT32 だ。dd コマンドで、付録DVD に入っていたPidora のimg ファイルを書き込んだ。5分ほどで書き込みが終了する。fdisk で確認すると、2つめのパーティションがLinux 形式で作成されていた。この2 つ目のパーティションは、後で外付けHDD に移動する予定だ。

 1 階に行っていたサンキストが急ぎ足で戻って来て、手にしていた箱を差し出す。14 インチのLED 地上デジタルTV と、電源タップだ。

 「これでいいのか?」

 「ありがとう。バッテリーにつないでくれ」

 いよいよラズベリーパイのセットアップだ。エアダスターで基板の表面のゴミや埃を吹き飛ばした後、拾ってきたHDMI ケーブルでデジタルTV のHDMI ポートにつなぎ、INPUT SOURCE をHDMI に切り替える。次に事務室のPC から外してきたUSB キーボードとマウスを、ラズベリーパイのUSB ポートに差し込んだ。それから、フォーマットしたmicroSD カードをラズベリーパイに挿入した後、リチウムイオンバッテリーのコンセントに電源タップをつなぎ、USB-AC アダプタでラズベリーパイと接続した。ラズベリーパイのパイロットランプがオレンジ色に点灯し、同時にデジタルTV のモニタに、Pidora の起動画面が表示された。

 「まずは第一関門突破ですね」ぼくは少しホッとしながら言った。「とりあえず初期設定、やってしまいましょうか」

 ユーザ、ルートパスワード、を胡桃沢さんの指示通りに設定し、日付時刻関係はスキップした。Hostname は、soliste01 だ。入力が終わると、拍子抜けするほどあっさりとログイン画面が表示された。

 「起動しましたね」ぼくは胡桃沢さんに言った。「ソリストを入れてみましょうか。どうやるんですか?」

 「またこれだ」

 胡桃沢さんはUSB メモリを挿した。こちらは認証などかかっていないので、問題なく認識される。胡桃沢さんは何かのシェルスクリプトを実行した。たちまち、画面に大量のファイル名が上から下へ表示されていく。

Check

 「これは?」

 「環境のチェックだ。必要なライブラリなどの有無と、バージョンや依存性のチェックをしている」

 「足りないライブラリがあったら、どうなるんですか?」

 胡桃沢さんはぼくをジロリと睨んだ。

 「多少のバージョン違いぐらいなら、ソリストの方で調整可能だ。依存性エラーなら、許容範囲かどうかチェックして、不要ならそのままインストール可能と判断する」

 「許容範囲外だったり、ライブラリ自体が全くなかったら?」

 「インストールはできない」胡桃沢さんは顔をしかめた。「いや、正確に言えばバイナリパッケージでのインストールはできない。ソースからコンパイルすれば可能だ」

 「ソースがあるんですか?」

 「ない。データ通信が回復すれば、基地から送ってもらうことができるが。そもそも、そんなケースは想定されていないからな」

 そのとき、チェックが終了した。ぼくと胡桃沢さんは、同時にモニタに目をやり、同時に唸った。

found error libraries.
ffmpeg-2.* not found.

 「これはチェックが失敗したってことですよね」ぼくは確認した。「何のライブラリですか?」

 「FFmpeg だ。動画/音声関連のライブラリだな。主にZ判定ロジックの映像解析処理で使用しているはずだ」

 「Z判定関連だけ組み込まなければいいんじゃないですか?」

 「そういう機能はないんだ」

 「おいおい」ボリスが呆れたように言った。「さんざん、大騒ぎしといて、結局これか。JSPKF 隊員に犠牲まで出しておいてな」

 その言葉は胸に鈍い痛みをもたらした。だが、それが浸透する前に、谷少尉が現れた。

 「どうですか、状況は?」

 「ダメだったようですよ」ボリスが嬉々として報告した。「そうだと思ってましたがね」

 谷少尉はボリスの言葉など無視して、ぼくの顔を見た。

 「鳴海さん?」

 「残念ですが......」ぼくは簡単に説明した。「ソリストのセットアップに必要なライブラリがなくて......すみません」

 これでイチかバチかの強行突破に賭けるしかない。てっきりそう言われると思っていたが、谷少尉は何かをじっと考えていた。

 「あの......」

 「そのライブラリはどうやったら入手できるんですか?」谷少尉は顔を上げて訊いた。「港北基地にしかないものですか?」

 「ライブラリ自体はオープンソースなので」胡桃沢さんは疲れたように自分の肩をもんでいた。「ただ、現状ではCIA の機密金庫にあるのと同じでしょう。ネットに接続する方法がないのですから」

 「いや、そうとは限らないですよ」谷少尉は笑顔を見せた。「オペレーションMM の目的の1 つを思い出してください」

 何だっけ?ソリストの実地テスト、Zの実態調査、根岸製油所の調査、それから......

 「ああ」ぼくは思わず手を打った。「正体不明のネットアクセスのことですか?」

 「そう、それです。アクセスポイントを探して、そこからネットに接続するんですよ」

 なるほど。確かにネットに接続できれば、FFmpeg のソースなりバイナリファイルなりを入手できるかもしれない。FFmpeg のサーバが稼働していて、そのサーバに至るまでの経路が分断されずに残っていればの話だが。

 「分隊長」サンキストが言った。「トラッカーはCCV と一緒に全滅してましたが」

 「何か代替機になるようなモノを作れないか?お前、そういうの得意だろう」

 「うーん、どうでしょうね」サンキストは頭を掻きながら天井を見上げた。「トラッカーは、この地区の主なプロバイダ回線につないで、トラフィックをチェックする機器なんですけど、言ってみれば小さなスイッチングハブなんですよ。スイッチぐらいはどこかに落ちてるかもしれないけど、それを制御するシステムとなると......」

 「無線LAN だけに絞ったらどうだ?」

 「まあ、それなら何とか。もう一度、PC DEPOT に行って、無線LAN アダプタを拾ってきて、そのノートPC に挿して......」

 「それは無理だ」胡桃沢さんが遮った。「キーを交換した機器としか通信できないようになっている」

 「無線LAN に絞るのは何か理由があるんですか?」ぼくは訊いた。

 「オペレーションの企画段階で、Google とYahoo に接続情報を問い合わせてみたところ、アクセス元はわからなかったんですが、通信速度が50Mbps 程度だったことから、無線LAN ではないかと推測されたんです」

 「なるほど。あの、それなら使えそうなデバイスに心当たりがあるんですが......」

 「なんだ?」サンキストがいぶかしげに訊いた。

 ぼくはブラウンアイズを見た。

 「例の預けたあれ......どうなったかな?」

 全員の視線が小柄な女性バンド隊員に集中した。ブラウンアイズは少しうろたえた表情を見せたが、すぐに頷いた。

 「ちょっと待ってて」

 そう言うと、ブラウンアイズはペットコーナーの奧の棚の陰に入っていった。カチャカチャ、ごそごそと何かを探るような音が聞こえた後、再び姿を現したブラウンアイズは、手にぼくのスマートフォンを持っていた。

 「これでしょう?」

 手渡されたスマートフォンは、人の体温と同じぐらいの温もりを維持していた。谷少尉は苦り切った顔で、ぼくとブラウンアイズの両方を睨んでいたが、やがて小さくため息をついた。

 「大佐には内緒にしておこう」そう言うと、谷少尉は目を剥いているボリスに向き直った。「ボリスさん、機密保持契約違反になることは承知の上ですが、それは無事に帰還したら弁護士連中に任せましょう。鳴海さん、それでWi-Fi が探せるんですね?」

 「はい。Wi-Fi チェッカーアプリが入ってるので」

 「わかりました。それで計画を立てましょう。全員を招集するので、少し待っていてください」

 谷少尉は最後にもう一度ブラウンアイズを睨むと、足早に戻っていった。ぼくはブラウンアイズの顔を見た。

 「どこに隠してた?」

 「大きなお世話よ」

 すまし顔で答えたブラウンアイズだったが、頬は微かに赤みを帯びていた。

(続)

Comment(16)

コメント

ばぶ

(;´Д`)ハァハァ

ほげほげ

彼女がやたらととんがってるのは、仕事以外のことでも
危険を踏んでいる、恩着せがましい思いもあったんでしょうね。
しかし、会って数時間、お荷物として抱えていく人間のために、
そこまでしちゃうの? と、思ってしまいました。

あと、スマホを取り出すとき、葛藤とかなかったのかなあ。

まあ、言い出したら切りが無いですが。

F

ffmpegくらいなら他のディストリイメージ内探せば一つくらい転がっててもおかしくないとは思う。
ソリストのインストールをしている以上はJREインストールは真っ先にしているはずで、これはraspbianイメージから引っ張り出すことになるはず。
そうである以上は、他のディスクイメージから探すことを思い付かないはずがないとは思う。

FF

ffmpegくらい、どこかに入ってそうなもんですよね

FFF

いや、ffMpeg は、入ってそうで入ってない。再配布に条件か何かあったと思う。
Raspiは何度かインストールしてるけど、、いつもwgetしてる。
実はどこかに入ってる?

FFFF

勘違いしていたら申し訳ないのですが、

> 同時にノートPC のモニタに、Pidora の起動画面が表示された。

はノートPCではなくデジタルTVになるのでは

読者not校正者

ボリスさんが怪しすぎる。
システムが復旧すれば自分の生存確率も上がるのに復旧失敗を喜ぶとは、
自分の命よりも仕事を優先するクレイジーなのか?
あるいは、自分の命は助かる算段が立っているのか?
限りなく後者に思えるが、さて?
続きが楽しみです。

FFFFさん、ご指摘ありがとうございます。
デジタルTVが正しいです。

tenfu2tea

WiFiの発信源はエースシステムでしよう。ボリスのミッションは、JSPKF団員を、そこに引き連れることかな。。大目的は想像できませんが。

ソリストは再起動できるに違いないけれど、これで脱出できたら、物足りないですねえ、さらなる波乱を期待します。

ばぐったー

憂鬱な月曜なはずが、更新が月曜朝の楽しみになっている者です。
これを見てテンション上げて仕事してますが、連載終わると… (´・ω・`)

細かい突っ込みですみませんがmicroSDがmicorSD(oとrが逆のtypo)となってる箇所が1箇所ありますね。

ばぐったーさん、ご指摘ありがとうございます。

イエーガー

ブラウンアイズの体温で暖められたスマホに頬ずりしたいw

L

小清水大佐のチェックを通過出来て、かつ激しく動いても大丈夫な場所で...あのへんかなw 妄想が膨らみますねw

西山森

ブラウンアイズとのロマンスを期待。番外編でもいいし。

Y

カツシン作戦

eyes to me

ツンデレとかの陳腐な萌路線に走ってしまったのですか?


私は全然構いません

コメントを投稿する