【物欲と理性】統率者デッキの特異点から、なぜか「分割メカニカルキーボード」が生えてきた話

前回の記事で、眠っていた『ドクター・フー』のタイムロードたちを救済すべく、『ファンタスティック・フォー』との融合デッキ(It's Clobberin' Time!)を組み上げたお話をしました。

そのデッキの結びで「諸々のバタフライエフェクトを生み出す特異点になってしまった」と触れましたが、今回はその顛末についてです。

あ…ありのまま 今 起こった事を話すぜ!
おれは統率者デッキを買ったと思ったら分割キーボードを買っていた… 
な… 何を言ってるのか わからねーと思うがおれも何を買ったのかわからなかった… 頭がどうにかなりそうだった…
衝動買いだとかMy New Gear..だとかそんなチャチなもんじゃあ 断じてねえ…
もっと恐ろしいものの片鱗を味わったぜ…

なぜそんな時空の歪み(パラドックス)が発生したのか。その裏にあった「脳内決済システム」の攻防戦を振り返りたいと思います。

1. 発端:プロの「選球眼」が見たかった

自分でファンタスティック・フォーとドクター・フー統率者デッキのコラボを組んだのがあの旅行前。つまり、9月。

そこから旅行の準備やらphpの脆弱性やらでてんてこ舞い。ようやく時間ができて紙をしばける。追加カードを買うために専門店にでも行ってみるか。

その店頭にて「ショップがブラケット3向けに再構成した、ファンタスティック・フォー完成品デッキセット」

すでに自前のデッキは手元にあり、追加のシングル補強(5,550円)も済ませていました。カードそのものが喉から手が出るほど足りないわけではありません。
しかし、TCGプレイヤーなら一度は抱くであろう知的好奇心が頭をもたげたのです。

  • 「ショップのプロは、どんな思想でこの100枚を選び取ったのか?」
  • 「プロの『選球眼』を、現物のリストとして手元でカンニングしてみたい」

そんな欲求がむくむくと湧き上がり、私はレジへ向かおうとしました。

2. 脳内CFOの緊急監査:それは「情報」か「現物」か?

しかし、レジを目前にして、私の脳内決済システム(脳内Chief Financial Officer)がけたたましい警報を鳴らしました。

  • 買おうとしているもの:
    • 数万円のカード100枚セット(現物ハードウェア)
  • 本当に欲しいもの:
    • プロの構築思想という数行のリスト(情報・ナレッジ)
  • 現状:
    • 土地も主要パーツも自前で揃っており、買っても大半は重複する余剰在庫になる

「ちょっと待て。数行の知見(コードレビュー)を見るためだけに、同じデッキ丸ごとの身代金を払う気か?」
「お前は他人のテンプレに相乗りしたいのか? 自分で直感を頼りにチューニングする(DIYする)のが一番楽しいんじゃあないのか?」

冷徹な脳内CFOの監査が入り、決済要求は無慈悲にも《却下/Reject(STX)》されました。

こういうときの脳内CFOは「割とそそのかす」方です。しかも、久々の紙いじりという大義名分まであります。「なんで自分はそれを却下したのだろうか?」思いながら店を出ました。

3. 予算のエアポケットと「健康」という名の無敵パス

ここで終われば、単なる「無駄遣いを踏みとどまった賢明な話」で済みました。
しかし、問題はここからです。

「数万円のデッキを買う気満々だった」という事実により、筆者の心の中にはポッカリと数万円分の“浮いた枠(予算のエアポケット)”が生まれてしまっています。

TCGの紙の束に対しては「重複在庫だ! 費用対効果が悪い!」とあれほど厳格に gatekeeper を務めた脳内CFO。
ところが、視界の端にずっと気になっていた別のガジェットが映り込んだ瞬間、信じられない態度豹変を見せました。

それが、左右分割メカニカルキーボード(Mistel Barocco MD770 / 静音赤軸)でした。

筆者は分割キーボードを2021年に購入しています。

  • 「このキーボードもいい加減へたれてきている」
  • 「今年は既にノートPC/NAS/ミニPCとリプレースをした」
  • 「こっちもリプレースした方が良くないか?」
  • 「へたれたキーボードを更に使い続けるの?」
  • 「Kinesisの後継品を探そうにも日本の代理店は撤退した」
  • 「これは消耗品ではなく、健康と生産性の礎(インフラ)である」

さっきまで無駄遣いを許さなかった脳内CFOが、“少佐殿”の声で宣言します。

「よろしい ならば購入(kaufen)だ」

デッキには出なかった決済が、ほぼ同額のキーボードには一瞬で降りる。

「心の会計(メンタル・アカウンティング)」の二重基準、恐るべしです。

4. 着弾と調律:道具を己の直感に従わせる

こうして、統率者デッキの代わりに我が家に鎮座することになった分割キーボード。
しかし、ここでも一筋縄ではいきませんでした。

  • 左右を繋ぐケーブルの接続順を間違えて保護モードで沈黙し、冷や汗をかく
    • Ctrl+Ctrlの長押しで工場出荷リセットをかけて無事に蘇生させる
  • デフォルトのカーソルキーの並び(← → ↑ ↓)に脳がバグる
    • Microsoft PowerToysを導入し、OSレベルで直感通りの「← ↑ ↓ →」へリマップ
    • キートップ引き抜き工具で物理キーキャップも「← ↑ ↓ →」へと差し替える

5. 入力した瞬間

世界が変わりました。メンブレンと異なりすっとキーボードが落ち、次へのアクションへと導いてくれます。

この、キーボードをガシガシ叩いて入力できた初心がよみがえりました

諸君 私はタイピングが好きだ
諸君 私はタイピングが好きだ
諸君 私はタイピングが大好きだ
ブログの清書が好きだ
検証ブレストが好きだ
コマンド入力が好きだ
行動の言語化が好きだ

ぐらいの勢い。特にあのスコスコとした打鍵館はずっとタイピングしていたいぐらいの。

分割という特殊な環境ゆえに「他に替えが効かない」という代物に、ついに上位互換が現れました。

終わりに

もしあの日、衝動に任せてショップの完成品F4デッキを買っていたらどうなっていたでしょう。

おそらく、手元には重複したカードの山が残り、自前のデッキへの愛着も薄れ、肩をすぼめてメンブレンキーボードを叩き続ける日々が続いていたはずです。

と、言いつつも、結局のところ

「『衝動買いをした』というだけでこの長さ?」

といういつもの与太話でした。

【統率者メモ 2026/11/12】It’s Clobberin’ Time! ――眠れるタイムロードと超科学の融合

はじめに

MTGの統率者戦を遊んでいると、どうしても避けられないものがあります。カードパワーのインフレです。

かつては楽しく遊んでいたデッキでも、新しいカードが登場するにつれ、次第に卓に出す機会が減っていく。

今回、その憂き目に遭っていたのが『ドクター・フー』コラボの構築済みデッキ《パラドックスパワー》でした。

《13代目ドクター》と《ヤズミン・カーン》を統率者に据えた青赤緑のデッキです。

このデッキの特徴は、手札以外から呪文を唱えることで能力が誘発する「パラドックス」。

追放領域から呪文を唱えたり、クリーチャーを強化したり。独特の動きが楽しめるデッキでした。しかし、近年のカードパワーの上昇もあって、次第に出番が減っていました。

解体するには惜しい。ですが、そのままでは厳しい。そんなとき、思いがけないものを見つけました。

1. ファンタスティック・フォー、価格暴落

マーベルコラボの統率者デッキ『ファンタスティック・フォー』。

発売当初はプレミア価格がついていたものの、収録カード《ファンタスティッカー》を巡る禁止・制限の影響もあってか、価格が大きく下がっていました。

見つけた価格は6,080円程度。

ここで、収録カードを改めて確認します。

《ミスター・ファンタスティック》。

青単色のクリーチャーですが、起動型能力には赤緑白青の4色を要求します。そして、その能力は「自分がコントロールする誘発型能力を2回コピーする」。

つまり、元の能力と合わせて3回。

  • 青赤緑に白を足した4色。
  • 誘発型能力をコピー。

これ、パラドックスパワーと組み合わせられるのでは?

しかも、ファンタスティック・フォーは、元々非クリーチャー呪文を唱えることを重視する仕組みのデッキです。

両方のデッキを組み合わせれば、単純にカードを入れ替えるのではなく、それぞれの長所を活かせるのではないか。

こうして、2つの構築済みデッキを融合させる計画が始まりました。

↑ 建前 ↑

↓ 本音 ↓

「カード触りたい、シングル買いたい、新しいデッキ組みたい……」

という、TCGプレイヤーのサガ、というよりは宿痾です。

2. 追加カードと構築方針

今回の構築では、既存のカードを活用しながら、必要なものを追加する方針としました。

主な補強は以下の通りです。

誘発型能力を活用する

  • 《創造の座、オムナス》
  • 《火の怒りのタイタン、フレージ》
  • 《悟った喪失者、ナーセット》

まずは、強力な誘発型能力を持つカードです。

《ミスター・ファンタスティック》の能力は、誘発型能力であれば幅広くコピーできます。

例えば、フレージの戦場に出たときや攻撃したときの能力。本来なら3点のダメージと3点のライフ回復ですが、能力を2回コピーできれば、合計9点になります。

《創造の座、オムナス》。

上陸による誘発型能力をコピーできれば、土地を置くこと自体が大きなアドバンテージになります。

《悟った喪失者、ナーセット》は、攻撃時に墓地の非クリーチャー呪文をコピーして唱えられるカード。

ここでも手札以外から呪文を唱えるという、パラドックスの基本方針につながります。

呪文を唱えた成果を盤面に変える

盤面を作るカードも追加しました。

  • 《サメ台風》は非クリーチャー呪文を唱えることでサメ・トークンを生成。
  • 《三匹の盲目ネズミ》はトークンを増やす英雄譚。
  • 《エシカの戦車》は戦場に出たときに猫を生成し、攻撃時にトークンをコピーできます。
  • 《ファルコンとレッドウイング》も、盤面を広げるための戦力として採用しています。

墓地や手札以外からの利用

  • 《セヴィンの再利用》
  • 《発見の石板》

《セヴィンの再利用》は墓地からパーマネントを戻せる呪文で、フラッシュバックも持っています。

《発見の石板》は戦場に出たときにライブラリーの一番上を切削し、そのカードをそのターンにプレイできるようにするマナファクト。

こうして、元の構築済みデッキの特徴を残しながら、追加カードで不足する部分を補いました。

3. It's Clobberin' Time!

どうしても外せないカードがありました。

《鉄拳制裁タイムだぜ! / It's Clobberin' Time!》

ザ・シングの決め台詞として有名な言葉です。更に筆者にとってはもう一つの意味があります。

WWEのスーパースター、CMパンク。入場時に手首のテーピングを叩きながら叫ぶ、あの言葉です。

IT'S CLOBBERIN' TIME!

これを言いたい。実に身も蓋もない動機。ベースデッキは日本語版。この言葉は英語で言わなければカッコよくない。

そのために、これも追加購入。こうして、デッキが組み上がりました。

4. デッキリスト

太字はこの時買ったカード群です。

👑 統率者 (Commander) (1枚)

  • 《ミスター・ファンタスティック/Mister Fantastic(MSC)》

🥊 クリーチャー (Creatures) (19枚)

  • 《ザ・シング/The Thing(MSC)》
  • 《若き天才、ヴァレリア・リチャーズ/Valeria Richards, Precocious(MSC)》
  • 《高位存在、フランクリン・リチャーズ/Franklin Richards, Ascendant(MSC)》
  • 《一流の彫刻家、アリシア・マスターズ/Alicia Masters, Skilled Sculptor(MSC)》
  • 《アトランティスの王、ネイモア/Namor, Atlantean King(MSC)》
  • 《ファルコンとレッドウイング/Falcon and Redwing(MSC)》
  • 《スパイダーマン2099/Spider-Man 2099(SPM)》
  • 《13代目ドクター/The Thirteenth Doctor(WHO)》
  • 《ヤズミン・カーン/Yasmin Khan(WHO)》
  • 《4代目ドクター/The Fourth Doctor(WHO)》
  • 《火星の女王、イラクサ/Iraxxa, Empress of Mars(WHO)》
  • 《ダニー・ピンク/Danny Pink(WHO)》
  • 《燃え盛るティラノサウルス/Flaming Tyrannosaurus(WHO)》
  • 《自然の怒りのタイタン、ウーロ/Uro, Titan of Nature's Wrath(THB)》
  • 《火の怒りのタイタン、フレージ/Phlage, Titan of Fire's Fury(MH3)》
  • 《創造の座、オムナス/Omnath, Locus of Creation(ZNR)》
  • 《骨集めのドラコサウルス/Bonehoard Dracosaur(LCI)》
  • 《一足飛びの司令塔/Striding Shotcaller(SOC)》
  • 《悟った喪失者、ナーセット/Narset, Enlightened Exile(MAT)》

⚡ インスタント (Instants) (6枚)

  • 《流刑への道/Path to Exile(MSC)》
  • 《巧みな隠蔽/Clever Concealment(MSC)》
  • 《活性の力/Force of Vigor(OTP)》
  • 《英雄的介入/Heroic Intervention(WHO)》
  • 《感電の反復/Galvanic Iteration(MSC)》
  • 《マグマ・オパス/Magma Opus(STX)》

📜 ソーサリー (Sorceries) (21枚)

  • 《忠誠の確約/Promise of Loyalty(MSC)》
  • 《悲劇的な傲慢/Tragic Arrogance(MSC)》
  • 《思案/Ponder(WHO)》
  • 《定業/Preordain(WHO)》
  • 《真実の視認/See the Truth(M21)》
  • 《ファンタスティックな伸縮性/Fantastic Elasticity(MSC)》
  • 《量子ずれ/Quantum Misalignment(WHO)》
  • 《アールンドの天啓/Alrund's Epiphany(KHM)》
  • 《一攫千金/Strike It Rich(MH2)》
  • 《信仰無き物あさり/Faithless Looting(SOC)》
  • 《今を生きる/Seize the Day(MSC)》
  • 《ノヴァ・フレイム/Nova Flame(MSC)》
  • 《タイム・ボルテックスの中へ/Into the Time Vortex(WHO)》
  • 《遥か見/Farseek(WHO)》
  • 《三顧の礼/Three Visits(WHO)》
  • 《明日への探索/Search for Tomorrow(WHO)》
  • 《耕作/Cultivate(WHO)》
  • 《鉄拳制裁タイムだぜ!/It's Clobberin' Time!(MSC)》
  • 《表現の反復/Expressive Iteration(MSC)》
  • 《倒壊と再建/Wreck and Rebuild(WHO)》
  • 《塁壁からの挑発/Taunt from the Rampart(MSC)》

🌟 エンチャント (Enchantments) (9枚)

  • 《三匹の盲目ネズミ/Three Blind Mice(WOE)》
  • 《パイロットにする/Become the Pilot(WHO)》
  • 《サメ台風/Shark Typhoon(OTC)》
  • 《鏡割りの寓話/Fable of the Mirror-Breaker(NEO)》
  • 《過去へ帰還せよ/Return the Past(WHO)》
  • 《思考の旋風/Whirlwind of Thought(MSC)》
  • 《アニーの加入/Annie Joins Up(MSC)》
  • 《中はとても広い/Bigger on the Inside(WHO)》
  • 《宇宙の試練/Cosmic Crucible(MSC)》

⚙️ アーティファクト (Artifacts) (7枚)

  • 《太陽の指輪/Sol Ring(WHO)》
  • 《秘儀の印鑑/Arcane Signet(WHO)》
  • 《コンフェッション・ダイアル/Confession Dial(WHO)》
  • 《レーザー・スクリュードライバー/Laser Screwdriver(WHO)》
  • 《ファンタスティッカー/The Fantasticar(MSC)》
  • 《発見の石板/Tablet of Discovery(SOS)》
  • 《エシカの戦車/Esika's Chariot(KHM)》

🌍 土地 (Lands) (37枚)

  • 《平地/Plains(WHO)》
  • 《平地/Plains(WHO)》
  • 《島/Island(WHO)》
  • 《島/Island(WHO)》
  • 《山/Mountain(WHO)》
  • 《山/Mountain(WHO)》
  • 《森/Forest(WHO)》
  • 《森/Forest(WHO)》
  • 《森/Forest(WHO)》
  • 《不穏な投錨地/Restless Anchorage(LCI)》**
  • 《轟音の滝/Thundering Falls(MKM)》
  • 《商業地区/Commercial District(MKM)》
  • 《迷路庭園/Hedge Maze(MKM)》
  • 《クローサの境界/Krosan Verge(JUD)》
  • 《ケトリアのトライオーム/Ketria Triome(IKO)》
  • 《水浸しの新緑/Sodden Verdure(MSC)》
  • 《燃えがらの林間地/Cinder Glade(WHO)》
  • 《焼け焦げた間欠泉/Scorched Geyser(MSC)》
  • 《光輝の山頂/Radiant Summit(MSC)》
  • 《大草原の川/Prairie Stream(MSC)》
  • 《梢の眺望/Canopy Vista(MSC)》
  • 《回復の温泉/Rejuvenating Springs(MSC)》
  • 《踏み鳴らされる地/Stomping Ground(GPT)》
  • 《蒸気孔/Steam Vents(GPT)》
  • 《寺院の庭/Temple Garden(RAV)》
  • 《聖なる鋳造所/Sacred Foundry(RAV)》
  • 《繁殖池/Breeding Pool(DIS)》
  • 《神聖なる泉/Hallowed Fountain(RTR)》
  • 《バクスター・ビルディング/Baxter Building(MSH)》
  • 《寓話の小道/Fabled Passage(MSC)》
  • 《樹木茂る山麓/Wooded Foothills(ONS)》
  • 《溢れかえる岸辺/Flooded Strand(ONS)》
  • 《吹きさらしの荒野/Windswept Heath(ONS)》
  • 《沸騰する小湖/Scalding Tarn(ZEN)》
  • 《霧深い雨林/Misty Rainforest(ZEN)》
  • 《乾燥台地/Arid Mesa(ZEN)》
  • 《統率の塔/Command Tower(WHO)》

5. ものすごく身も蓋もない強化のからくり

今回の追加カード購入額は合計5,550円でした。(店員さんからも「妙に切りの良い数字ですね」言われました

4色の統率者デッキを組むための追加投資としては、かなり抑えられた金額だと思います。

元のデッキが6,080円。追加5,550円。統率者デッキにしては安く抑えられましたが

  • 《樹木茂る山麓》《溢れかえる岸辺》《吹きさらしの荒野》などのフェッチランド。
  • 《踏み鳴らされる地》《蒸気孔》《寺院の庭》などのショックランド。
  • トライオーム。
  • ウーロや各種の強力な呪文

これらのカードは、新しく購入したものではありません。この合計は

今回、新しく財布から出ていった金額です。

それなりに長年MTGを遊んできた結果、必要なカードが手元にあった。

言ってしまえば、過去の自分が支払った金額を、現在の自分が都合よく無視しているとも言えます。

まぁ、皆が皆デュアランやクレードル、強力なマナファクトやピッチスペルを持っていないというのも真ではありますが、資産が皆無でもないという身も蓋もないお話です。

おわりに-パラドックスの特異点-

こうして、眠っていた《パラドックスパワー》は、『ファンタスティック・フォー』との融合によって新しいデッキになりました。

過去の資産は考えず、お世話になったパラドックスデッキへのリスペクトは忘れず、何よりもファンになった言葉

「It's Clobberin' Time!」

を言いたいデッキ。ですが、筆者にとって、このデッキのいきさつは、後に諸々なバタフライエフェクトを生み出す「特異点」になってしまったのは、また別のお話です。

何せ、買ったときの写真には

「ん? 2つほど構築済み買ってない?」となるので。

IDEA SPHERE:未来の筆者への置きエイム

はじめに

生成AIを日常的に使うようになって、一つの奇妙な現象について考えるようになりました。

AIに対して、やたらと攻撃的になるパターンがあります。

  • 「何度言えば分かるんだ」
  • 「こんなこともできないのか」
  • 「時間を無駄にした」

人間の部下に向かって言えば、パワーハラスメント確定です。ところが、相手がAIになると、これらの言葉を平然と投げつけることができてしまう。

ここで改めて言うのは、AIは人間ではないという厳然たる事実です。現在の生成AIが人間と同じように屈辱を感じたり、傷ついたりするという確かな根拠はありません。

そこで2つ問いを出します。

  • 「AIに何を言っても構わないのか?」
  • 「なぜ人間は、相手がAIだと認識した途端、自分の攻撃性に対するブレーキを緩めてしまうのか」

そして、もう1つ。

  • 「そのとき発した言葉は、本当に何も残さず消えていくのか?」

……3つでした。(そこで流れる不快なジングルと『Nobody Expects the Spanish Inquisition!』)

対話型AIは反撃してこない

人間同士のコミュニケーションでの攻撃や威圧行動はほぼリスクがあります。

  • 相手を怒鳴る
  • 侮辱する
  • 物理的攻撃

これらが明るみに出た場合

  • リアルファイト
  • ポリス沙汰
  • ジャッジメントタイム

などがあります。相手にも意思があり、反撃する能力があり、自分の行動には結果が伴います。

この、反撃される、戦いに巻き込まれる、或いは社会や法の裁きを受ける。そうした認識が、人間の行動を制御しています。

ところが、AIにはそのような反撃能力がありません。どれだけ罵倒しても、AIが腹を立てて机を叩くことはありません。翌日から口を利かなくなることもありません。人事部や労基に駆け込んだり当局に通報すると言うこともありません。

さらに、現在の対話型AIは、多くの場合、利用者の要求に応じるよう設計されています。

こちらが攻撃的になっても、謝罪し、説明をやり直し、次の指示を待つ。ここには極めて特殊な関係が成立します。

自分は相手に何を言ってもよい。しかし、相手は自分に対して攻撃的にならない。

現実の人間関係では、かなり危険な非対称性です。

相手が人間ではないという免罪符

この非対称性、一つの認知バイアスが働いているのではないかと考えました。

「相手は人間ではないのだから、何を言っても問題ない」

というものです。AIには人間と同じ人格権が認められているわけではありませんし、AIに対する厳しい言葉が、そのまま人間に対するハラスメントと同じ被害を生むわけでもありません。

ここには論理の飛躍があります。

相手が傷つかないことと、自分がどのように振る舞ってもよいことは、同じではありません。

誰もいない部屋で怒鳴り散らすことは自由です。しかし、毎日のように怒鳴り散らしている人が、その習慣を職場や家庭に一切持ち込まないと言い切れるでしょうか。

ここで考えたいのは、他人に対する影響だけではありません。もっと直接的な問題があります。

その言葉を発した本人は、その言葉を聞いているのです。

自分の言葉は、確実に自分に返ってくる

祖母は生前、「人を呪わば穴二つ」と言いました。「天に向かってつばを吐く」という言い方もあります。

こうした言葉を聞くと、因果応報や道徳的な戒めを連想するかもしれません。

筆者が考えているのは、もっと単純なことです。

自分が発した言葉を、自分自身が知っている。

という厳然たる事実です。

誰かを罵倒したとします。その相手が人間であれば、

  • リアルファイト
  • ポリス沙汰
  • ジャッジメント(ry

は状況によっては起きえます。相手がAIであれば、そうした反応はまず起きないでしょう。

では、何も起こらなかったのでしょうか。それに対しては、この回答があります。

その言葉を選び、その言葉を打ち込み、相手に投げつけた自分自身がいます。

他人が知らなくても、自分は知っています。誰からも非難されなくても、自分が何を言ったのかは、自分自身が知っています。

発した言葉の一つ一つを、いつまでも正確に覚えているわけではないし、言ったことを忘れる。言ってしまえばすっきりするパターンは数多くあります。

それでも、どのような場面で、どのような言葉を使うことを自分に許したのか。その経験が、自分の振る舞いに何の影響も与えないと考えるのは、少々楽観的ではないでしょうか。

誰にも聞かれていないと思っていた言葉にも、聞き手が一人だけいます。自分自身です。

AIが傷つかないからといって、自分の言葉まで無かったことにはなりません。

自分の言葉から、最後まで逃げられないのは自分自身なのです。

祖母の教え

ここで、祖母から教わった言葉を思い出します。

言い間違いは聞き手の責任。聞き間違いは言い手の責任。

少々奇妙な言葉に感じられるかもしれません。普通に考えれば、言い間違えたのは話した人の責任であり、聞き間違えたのは聞いた人の責任でしょう。

祖母の教えは逆です。これは、単に責任の所在を逆転させているのではありません。

  • 言い間違いを聞いたのであれば、聞き手が相手の意図をくみ取ろうとする。
  • 聞き間違いが起きたのであれば、言い手が伝え方を見直す。

つまり、コミュニケーションがうまくいかなかったとき、自分に何ができるかを考えるという教えです。

この言葉を、AIとの対話に当てはめてみます。AIがこちらの指示を取り違えたとします。

そのとき、利用者には2つの選択肢があります。

  • 「なぜ分からないんだ」と怒鳴ること。
  • 「自分の指示には、どのような曖昧さがあったのか」と考えること。

そして、

  • その物言いをそのまま信用して「恥をかいた」と後で糾弾すること。

……またしても3つでした。(やっぱり流れる不快なジングルと赤い僧衣の3人組が発する『Nobody Expects the Spanish Inquisition!』)

  • 「AIが悪い」と断じて終わるのか。
  • 「どうすれば、次は同じ間違いを避けられるのか」と考えるのか。

祖母の言葉は、責任を一方的に引き受けろという意味ではなく、自分が制御できる部分まで相手の責任にしてはいけないという教えなのだと思います。

なぜ期待を裏切られると怒るのか

生成AIは、驚くほど自然な文章を返します。

  • 複雑な質問に答え
  • プログラムを書き
  • 文章を推敲し
  • ときには専門家のような口調で助言します。

(というか、この記事の推敲そのものもAIの力を借りています)そうなると利用者は次第に錯覚します。

「これだけできるのだから、当然、これもできるはずだ」

しかし、生成AIは間違えます。存在しない情報をもっともらしく説明することもあれば、明確な指示を取り違えることもあります。

前の回答と矛盾する回答を、平然と提示する場合さえあります。その瞬間、期待は失望へと変わります。

  • 「さっきまでできていたのに」
  • 「なぜこんな簡単なことが分からない」
  • 「こちらの時間を返してほしい」

実際、AIの誤回答によって作業時間を浪費したり、成果物を壊されたりすることはあります。

私自身、AIを利用したサーバの更新作業で、ファイルが消失するという経験をしました。これは単なる誤字脱字や、ちょっとした勘違いとは次元が違います。

実害が生じた以上、原因を追及し、再発防止策を考えなければなりません。

しかし、そこでAIを罵倒したところで、失われたファイルが戻ってくるわけではありません。

むしろ、必要なのは事実の確認です。

  • 何を実行したのか。
  • どこで判断を誤ったのか。
  • どの段階で作業を止めるべきだったのか。

そして、AIの提案を採用し、実際に作業を進めた自分自身の判断はどうだったのか。

ここでも、祖母の教えが生きてきます。相手の間違いを指摘することと、自分の責任を考えることは、両立します。

責任を追及することと、怒りをぶつけることは、まったく別の行為です。

擬人化と道具扱いの都合のよい使い分け

ここで、さらに奇妙な矛盾が生まれます。人間は、AIが自然に会話しているときには、AIを人間のように扱います。

  • 「理解してくれた」
  • 「気が利く」
  • 「相談相手になる」

ところが、AIが間違えた瞬間には、道具として扱います。

  • 「機械のくせに」
  • 「金を払っているのに」
  • 「使えない」

これは、かなり都合のよい認識の切り替えです。期待するときには人間並みの理解力を要求し、責任を問うときには機械として扱う。

そして、攻撃するときには、相手が人間ではないことを理由に遠慮をなくす。道具であることを理由に、自分の感情を無制限にぶつけてよいという結論にはなりません。

ハンマーが釘をうまく打てなかったとしても、ハンマーに説教を始める人は普通いません。

ところが、ハンマーが流暢な日本語で謝罪し始めたら、途端に説教したくなる。

生成AIが作り出したのは、そんな奇妙な状況なのかもしれません。

AIへの態度は、自分自身への態度でもある

ここまで考えると、最初の問いに戻ります。

なぜ人はAIにハラスメントをしてしまうのか。筆者は2つほど考えます。

仮説1つめは、反撃されない相手に対して、人間が普段抑えている攻撃性を表出させやすくなるからです。

仮説2つめは、AIを人間のように認識する一方で、人間として尊重する必要はないと判断してしまうからです。

そして3つ目は、AIの能力に対する過剰な期待が、失敗したときの怒りを増幅させるからです。

……(やっぱり流れる不快なジングルと赤い僧衣の3人組がドアを蹴破りながら乱入して発する『Nobody Expects the Spanish Inquisition!』)

忘れてはいけないこと:終わりに変えて

自分の言葉が自分自身に返ってくることを、忘れているのではないか。

AIに対して攻撃的な言葉を使うことが、必ずしも人間への攻撃性を高めるとは限りませんが、自分がその言葉を発したという事実は変わりません。

それを正当化するのか。後悔するのか。次は違う言葉を選ぼうと考えるのか。

いずれにせよ、そこには自分自身の判断があります。さらに、どんな耳障りのいい意見を聞いたからとして、それを崇めたとしても、罵倒したとしても、最終的な結果の責任は、判断を下した自分にあります。

再掲しますが『HELLSING』でアーカードの言う

銃は私が構えよう。照準も私が定めよう
弾を弾装に入れ遊底を引き安全装置も私が外そう
だが
殺すのはおまえの殺意だ

です。とはいえ、祖母の教えに立ち返れば、コミュニケーションの失敗をすべて相手の責任にする必要もありません。

なので、3つほど答えを出します。

  • AIが間違えたのであれば、間違いを指摘する。
  • 自分の指示が曖昧だったのであれば、指示を修正する。
  • AIの能力では実現できないのであれば、別の手段を選ぶ。

怒鳴ったところでAIの能力が向上するわけではありません。時間は返ってきません。ですが、失った時間で学ぶことはある。

未来の筆者へ

AIにバチ切れた時、筆者はこの文章を書いたという事実をどっかで覚えているはずです。

さて、改めて述べます。人に言ったら

  • リアルファイト
  • ポリス沙汰
  • ジャッ(ry

になり得ることを、AIに対して言いましたか? そう、その答えは筆者自身が知っていますよね。

正当な怒りを持っていることと、その怒りを使って何をしてもよいことは違いますよね?

それさえ悟っていただければ、この記事を書いた筆者は満足です。

IDEA SPHERE:不死身のエースという過信

はじめに

Those who survive a long time on the battlefield start to think they are invincible.
I bet you do too, buddy.

「不死身のエースってのは戦場に長く居たものの過信だ」
「お前のことだよ相棒」

ゲーム『エースコンバットZERO』に登場する、ピクシーことラリー・フォルクの台詞です。筆者はこの言葉を、自分が運用しているGROWIのトップページに掲げています。

長く同じ仕事をしていると、成功体験が積み重なっていきます。幾度となくトラブルを切り抜け、障害を復旧し、時には無茶な要求にも対応してきた。

そうして経験を重ねるうちに、自分なら何とかできるという自信が生まれます。その自信は、日々の運用を支える大切なものです。

「自分は失敗しない」という過信に変わっていないか。そんな自戒を込めて、この言葉を掲げていました。

この言葉に、もう一度突きつけられました。

たった一つの失念

2026年11月5日。いつものようにGROWIのバージョンアップを実施していました。筆者が運用しているGROWIは、Gitからソースコードを取得し、ビルドして稼働させているものです。

アップデートに際しては、

  1. 変更内容を確認
  2. 必要に応じて退避する
  3. ブランチを切り替えてビルドする

何度も繰り返してきた作業です。今回、筆者は一つの手順を忘れていました。

git stash

作業ツリーに残っている変更を、一時的に退避するためのコマンドです。本来なら、作業状態を確認したうえで、必要な変更を退避してからアップデートを進めるべきでしたが失念しました。

ここまでは、筆者自身の失態です。問題は、その後でした。

復旧のつもりが

普段、こうした技術的な相談にはGeminiを利用しています。ところが今回は、いつもとは異なる相談先を使いました。

そこで案内されたのが、次のコマンドです。

sudo git reset --hard
sudo git clean -fd

説明は「変更を破棄して綺麗にする」。確かに、Gitの作業ツリーを整理するという意味では、目的に沿ったコマンドです。しかし、運用中のシステムに対しては話が変わります。

  • git reset --hard は追跡対象ファイルの未コミット変更を破棄します。
  • git clean -fd は、Gitが追跡していないファイルやディレクトリを削除します。

後者は、Gitの管理対象外にある独自の設定や追加ファイルまで巻き込む可能性があります。そして筆者は、そのコマンドを実行してしまいました。

ここで問題なのは、AIが危険なコマンドを提示したという事実だけではありません。

そのコマンドが何をするのか知っているはずの筆者が、十分に影響範囲を確認せず、実行してしまったことです。

普段なら、他人が書いた手順書にこのコマンドがあれば、まず確認するでしょう。

  • 削除対象は何か。
  • 退避は済んでいるか。
  • ロールバックできるか。

それを、自分自身の作業では怠ってしまったという過信です。

不死身ではなかったエース

その後、GROWIの起動に失敗しました。

Active: activating (auto-restart)
(Result: exit-code)

ExecStart=/bin/bash /home/www-data/growi/growi-start.sh
(code=exited, status=127)

終了コード127。起動スクリプト内で必要なコマンドが見つからない場合などに発生するエラーです。ここで、ようやく自分が置かれている状況を認識しました。

単なるアップデート作業だったはずが、稼働中のシステムを復旧する作業に変わっている。

幸い、筆者にはバックアップがありました。日頃から、設定変更やアップデートの前にはバックアップを取得する習慣があります。その習慣に助けられました。

バックアップから復元し、GROWIを再ビルド。無事、サービスを起動させることができました。

これで一件落着。 ……とは、なりませんでした。

消えた文字の個性

GROWIの画面を開いて、違和感を覚えました。フォントが違います。筆者はGROWIの表示フォントを、独自に配置した「kiloji」に変更しています。

これは2025年9月に実施したカスタマイズで、Apacheのリバースプロキシ設定を利用し、フォントファイルを直接配信する仕組みを構築したものです。

ところが、今回の復旧後には、そのフォントが適用されなくなっていました。調べてみると、

ls -lah /home/www-data/growi/packages/preset-themes/public/fonts/kiloji/

結果は、

そのようなファイルやディレクトリはありません

先ほどの git clean -fd によって削除された可能性が高い、というか原因はこれです。Git管理外に置いていた独自フォントのディレクトリが消えていました。

ここで役立ったのが、以前に書いていた技術メモでした。

フォントの配置場所、ApacheのAlias設定、カスタムCSS、動作確認方法。

当時の作業を記録していたため、何を復元すればよいのかがすぐに分かりました。フォントファイルを元の場所に戻し、表示を確認。無事、いつものGROWIが帰ってきました。

2025年9月の自分が書いた記録に、2026年11月の自分が助けられたわけです。

経験という諸刃の剣

今回の一件を振り返って、改めて考えさせられました。筆者は長年、サーバを運用してきています。

  • OSのアップデート
  • 脆弱性への対応
  • サービスの移行
  • 証明書の更新
  • 障害対応

等など。その経験があるからこそ、トラブルが発生しても落ち着いて対応できます。しかし、経験があるからこそ、慣れによって確認を省略してしまうこともあります。

  • 「いつもやっているから大丈夫」
  • 「この程度なら何とかなる」
  • 「何かあっても戻せる」

どれも、完全に間違った考えではありません。実際、今回はバックアップによって復旧できました。

しかし、復旧できることと、事故を起こしてよいことは同義ではありません。

ここを取り違えた瞬間、経験は自信から慢心へと変わってしまいます。

もう一つ、AIとの付き合い方についても考えさせられました。AIは便利です。自分では思いつかなかった解決策を提示してくれることもあります。しかし、AIが提示したコマンドを実行するのは、あくまでも自分です。相談先を変更したことも、提示されたコマンドも、今回の経緯を構成する要素ではあります。

それでも、最初の手順を失念したのは自分であり、コマンドを実行したのも自分です。そこをAIの責任に転嫁してしまえば、今回の失敗から得られるものは少なくなってしまうでしょう。

必要なのは、AIを疑うことではなく、AIの提案も含めて、自分の判断を検証することなのだと思います。

『HELLSING』でアーカードが言う

銃は私が構えよう。照準も私が定めよう
弾を弾装に入れ遊底を引き安全装置も私が外そう
だが
殺すのはおまえの殺意だ

そう、AIは判断基準に過ぎません。判断を受け入れる、決断をする。そして、その結果を受け入れ、責任を取るのは自分自身です。

生き残った理由

一方で、今回の復旧を可能にしたものも、長年の運用経験から生まれた習慣でした。

  • バックアップを取ること。
  • 変更内容を記録すること。
  • 設定ファイルの差分を残すこと。
  • 作業が終わったら、その経緯を技術メモとして残すこと。

今回、筆者は過去の自分が残したバックアップと記録によって助けられました。経験が過信を生み、経験から身についた習慣が、その過信による失敗を救った。

皮肉な話ではありますが、ここに一つの答えがあるようにも思います。

長く生き残ってきたことは、自分が不死身である証明にはなりません。

むしろ、失敗する可能性を認め、そのときに備えてきたからこそ、失敗からのリカバリーが可能になりました。

  • バックアップは、自分が失敗する可能性を認めているからこそ取るものです。
  • 作業記録も、未来の自分がすべてを覚えているとは限らないからこそ残すものです。

つまり、それらは自分の能力への過信とは正反対のところにある習慣なのです。

おわりに

無事に復旧したGROWIを開くと、そこにはいつものフォントで、いつもの警句が表示されていました。

Those who survive a long time on the battlefield start to think they are invincible.
I bet you do too, buddy.

「不死身のエースってのは戦場に長く居たものの過信だ」
「お前のことだよ相棒」

これまで何度も目にしてきた言葉です。その意味も、十分に理解していたつもりでした。

今日もまた、この言葉が自分に向けられていると感じました。

人はミスを犯す。そこに、今回のピボット旅行で飼い始めた脳内シャアがしゃしゃり出る前に、その「器」が語りかけてきました。

「過ちを気に病むことはない。
ただ認めて、次の糧にすればいい。
それが大人の特権だ。」

で、今回のお話は締めます。

自室サーバの世代交代・続編『いくつもの愛をかさねて』

はじめに

先日、長らく自室サーバとして稼働していたLet's note CF-XZから、BOSGAME E5への移行が完了しました。Nextcloudに続き、最後まで残っていたAdGuard Homeの移行も終了。

これにより、旧PCはその役目を終えることになりました。そして、その電源を落とそうとしたとき、筆者の脳裏をよぎったものがあります。

アニメ『機動戦士Vガンダム』。その中でも屈指の名場面として知られる、『天使たちの昇天』のリーンホース特攻です。

いくつもの愛をかさねて

『機動戦士Vガンダム』におけるリーンホース特攻。数多のダメージを受けたリーンホースJr.を駆り、若い世代に未来を託して戦場へ向かう老人たち。その場面で流れる挿入歌が『いくつもの愛をかさねて』です。

筆者が特に印象深く覚えているやり取りがあります。

「そろそろ、覚悟をするときかな? 艦長!」

「ジン・ジャハナム閣下もそうお考えなら……」

「若い者だけは退艦させた方がいいな」

「ようし、ネス! 総員に退艦準備をさせろ!」

これから何が起きるのかを理解した上で、次の世代を送り出す。自分たちが果たすべき最後の役目を、静かに受け入れる。筆者にとって、あの場面は単なる自己犠牲の描写ではありません。

自分たちが守ってきたものを、次の世代へと託す場面でもあります。そして今年、筆者は自宅の機材を相手に、これとよく似た感情を二度味わうことになりました。

一度目の退艦命令

今年実施した大きなリプレースの一つが、NASの世代交代です。長らく利用していたASUSTORから、QNAPへの移行。自宅内のデータを保管し、必要なときに取り出せるようにする。

日々の生活に溶け込んだその役割を、新しいNASへと引き継ぎました。移行を終え、データと機能が後継機で利用できることを確認。

いよいよASUSTORの電源を落とす段階になりました。そこで筆者が行ったのは、『いくつもの愛をかさねて』を流すことでした。脳裏に浮かぶリーンホースのブリッジ。

「そろそろ、覚悟をするときかな? 艦長!」

もはや、旧機材がその役割を担い続ける必要はありません。守るべきものは、すでに新しい機材へと移されています。

「若い者だけは退艦させた方がいいな」

データも、サービスも、これから先の運用も。すべてを後継機に託した上で、ASUSTORの電源を落としました。長く稼働していた機材が静かになる。

それは、単に一台のNASを停止させたというだけの出来事ではありませんでした。「一つの時代が終わった」でした。

ましてやこの機材、転職半年後の試用期間から本採用へと変わったときの一時金で買った、本当に思い入れのある機材ですからなおさらです。

二度目の退艦命令

そして今回。同じような世代交代が、今度は自室サーバで行われました。移行元はLet's note CF-XZ。もともとは、手元にあった機材の流用です。

専用のサーバ機を購入したわけでも、壮大な計画があったわけでもありません。使える機材があるのだから、使ってみよう。始まりは、そんな程度のものでした。

そこから役割が増えていきます。まずはNextcloud。自宅内のデータにアクセスするためのインターフェースとして、日常的に利用するようになりました。

そしてAdGuard Home。DNSサーバとして名前解決を担い、同時に広告ブロッカーとしても機能するようになりました。いつしか、単なる余剰機材だったノートPCは、自室ネットワークに欠かせない存在になっていたのです。

特にDNSは、普段その存在を意識することが少ないサービスです。正常に動いている限り、何も起こりません。しかし、停止すれば途端に困る。

名前解決ができなくなれば、ネットワークが接続されていても、普段通りにサービスを利用できなくなります。このLet's noteは自室のネットワークを支える重要な機材になっていました。

役目を引き継ぐ

そんなLet's noteにも、世代交代のときが訪れました。

新しい機材はBOSGAME E5。Ubuntu 26.04 LTSをインストールし、「four-mations」と名付けたミニPCです。

まずNextcloudを移行。次に旧環境に残っていたAdGuard Homeも移行しました。

両サービスが新しい環境で動作することを確認。これで、旧PCが担っていた役割はすべて引き継がれました。

あとは、電源を落とすだけです。ここで、再びリーンホースのブリッジが脳裏をよぎりました。

「そろそろ、覚悟をするときかな? 艦長!」

長年働いてきた機材に対して、最後に行う操作。

shutdown -h now

実行するコマンドは、ただのシャットダウンですが、そこに至るまでには、いくつもの作業がありました。

  • そろそろ買わねばという逡巡。
  • 覚悟を決めて購入したときの決意。
  • 新しい環境の構築。
  • 設定の移行。
  • サービスの動作確認。

最後に旧環境に依存するものが残っていないことの確認。

すべてが終わったからこそ、安心してこのコマンドを入力できました。電源が落ちたLet's noteを、自室ネットワークから切り離します。

これで、半年ほど自室のネットワークを支えてきた一台のノートPCは、その任務を終えました。

技術ではなく、魂の継承

前回の記事では、過去の自分が残した構築メモによって、今回の移行が円滑に進んだことを書きました。過去の経験が記録として残り、未来の自分を助ける。いわば、技術的な資産の継承です。

今回の世代交代を振り返ってみると、もう一つの継承があったことに気づきます。それは、機材が担ってきた役目そのものです。

  • ASUSTORからQNAPへ。
  • Let's noteからBOSGAME E5へ。

メーカーも、形状も、性能も異なります。それでも、新しい機材が引き継いだものは同じです。これまで通り

  • データを保管し、必要なときに取り出せること。
  • これまで通りファイルにアクセスできること。
  • これまで通り名前解決ができ、普段と変わらずネットワークを利用できること。

利用する側からすれば、何も変わらない、「なんてことない日々を過ごす」ことが理想です。しかし、その「なんてことない」を実現するために、裏側では大きな世代交代が行われています。

新しい機材に移されたのは、単なるデータや設定だけではありません。

これまで旧機材が守り続けてきた、日常そのものです。

そう考えると、これは単なる技術の継承ではないのだと思います。役目の継承。そして、筆者にとっては、魂の継承と呼びたい出来事でした。

終わりに変えて:老兵は死なず

リーンホース特攻が印象深いのは、老いた者たちが、自分たちの役目を理解しているからだと思います。

  • 自分たちが守るべきものは何か。
  • 何を次の世代に託すべきか。
  • そして、いつ自分たちが退くべきか。

今回の機材の世代交代にも、どこか通じるものがありました。旧機材が動いているからといって、いつまでも使い続ける必要はありません。

かといって、新しい機材を購入したからといって、すぐに旧機材の電源を落とせるわけでもありません。必要なものを引き継ぎ、後継機が役割を果たせるようになったことを確認する。その上で、初めて旧機材を退役させることができます。

ASUSTORも、Let's noteも、その役目を果たしてくれました。

そして、後継機がその役目を引き継いでくれたからこそ、筆者は安心して電源を落とすことができたのです。

「終わりを見届ける」――Finish the Story、これもまた、管理者の嗜みです。

自室サーバの世代交代・前編『未来に進むための記憶』

はじめに

先日購入したミニPC、BOSGAME E5。Ubuntu 26.04 LTSをインストールし、ホスト名を「four-mations」として運用を開始していました。

そして今回、最後まで旧PCに残っていたAdGuard Homeの移行が完了しました。これにより、長らく自室内サーバとして稼働していたLet's note CF-XZは、その役目を終えることになります。

今回の記事は、この世代交代についての記録です。そして、移行作業を通じて改めて実感した「過去の自分が残したメモ」のありがたさについても触れていきます。

旧環境と新環境

まず、今回の移行元と移行先について。

旧環境

  • 機種:Panasonic Let's note CF-XZ
  • CPU:Intel Core i5-7300
  • メモリ:8GB
  • ストレージ:256GB SSD
  • 主な用途:
    • Nextcloud
    • AdGuard Home

もともとはモバイルノートPCとして使っていた機材です。それを自室内のサーバとして転用し、ファイル共有やDNSフィルタリングといったサービスを担わせていました。

新環境

  • 機種:BOSGAME E5
  • CPU:AMD Ryzen 3 5300U
  • メモリ:16GB
  • ストレージ:512GB NVMe SSD
  • OS:Ubuntu 26.04 LTS Desktop
  • ホスト名:four-mations

性能面はもちろん、メモリやストレージにも余裕ができました。そして何より、専用のミニPCに役割を集約することで、今後の運用を見直す契機にもなりました。

段階的な移行

今回、すべてのサービスを一度に移行したわけではありません。

  1. Nextcloudを構築・移行し、動作を確認。
  2. 旧環境に残っていたAdGuard Homeを移行するという順序を取りました。

Nextcloudはファイル共有基盤ですから、移行後の動作確認も比較的わかりやすいものです。一方、AdGuard HomeはDNSという、自室のネットワークにおける重要な役割を担っています。

ここが停止すると、ネットワークそのものは生きているのに、名前解決ができず、普段利用しているサービスにアクセスできなくなるという状況が発生します。いわば、自室のネットワークにおける単一障害点の一つです。

そのため、先にNextcloudを移し、最後にAdGuard Homeを移行するという段階的な手順を取りました。そして、ようやく両サービスの移行が完了。

旧PCに残っていた役割を、すべて新しいミニPCへと引き継ぐことができました。

最大の功労者は、過去の自分

さて、今回の移行作業で特に役立ったものがあります。それは、新しいツールでも、最新のAIでもありません。

過去に自分が書き残した構築・運用メモです。

Nextcloudの構築に際しては、以前の環境で記録していた設定や手順が役立ちました。AdGuard Homeについても同様です。過去の構築記録を参照しながら、必要な設定や作業内容を確認し、移行を進めることができました。

このとき改めて実感したのが、記録というものの価値です。構築した当時は、目の前の問題を解決するために調べ、コマンドを実行し、動作を確認していました。

そして、その結果をメモとして残していたわけです。時間が経ち、環境が変わり、再び同じような作業をすることになったとき、その記録は立派な引き継ぎ資料になっていました。

しかも、引き継ぎ元と引き継ぎ先は同一人物です。

過去の自分から、現在の自分への引き継ぎ。

これほど話が早い引き継ぎも、なかなかありません。何しろ、記録を書いた本人が、記録を読む本人の癖を熟知しているのですから。

なぜメモを残すのか

筆者は日頃から、サーバの構築や障害対応、アップデート作業などを記録しています。その際に意識しているのは、単に実行したコマンドを並べることではありません。

  • 何を目的とした作業なのか
  • どのような環境で実施したのか
  • どの順番で作業したのか
  • どのように動作を確認したのか
  • どのような問題があり、どう解決したのか

こうした情報を、後から読み返せる形で残しています。理由は単純です。

未来の自分が、今の自分と同じことを覚えている保証はないからです。

人間の記憶は、案外あてになりません。そのときは理解していた設定も、数か月、数年経てば忘れているものです。ましてや、日々さまざまなシステムに触れていれば、個々の設定内容まで記憶し続けることは現実的ではありません。

だからこそ、記録を残す。そして、記録があるからこそ、次の作業では調査や試行錯誤を減らすことができます。今回の移行は、その効果を実感できる機会となりました。

技術的負債ではなく、技術的資産

システム運用では「技術的負債」という言葉をよく耳にします。過去の設計や実装、あるいは先送りした判断が、将来の作業を難しくするというものです。

しかし、今回の経験は、その逆を考える契機になりました。

  • 過去に残した記録が、将来の作業を容易にする。
  • 当時の調査や検証に費やした時間が、次の作業で再利用できる。

つまり、過去の作業が、未来の自分にとっての資産になっているわけです。

  • 一度調べたことを、もう一度最初から調べ直す必要はありません。
  • 一度経験した問題を、もう一度同じように試行錯誤する必要もありません。
  • 記録を残しておけば、その経験を次の作業の出発点にできます。

もちろん、OSやアプリケーションのバージョンが変われば、手順も変わります。だからこそ、過去の記録を参照し、現在の環境との差分を確認しながら作業することになります。

そして、その差分もまた、新しい記録として蓄積されていきます。こうして経験が積み重なっていくことこそ、筆者が技術メモを残し続ける理由の一つです。

おわりに

Nextcloudに続き、AdGuard Homeの移行も完了。

これで、長らく自室のネットワークを支えてくれたLet's note CF-XZは、その役目を新しいBOSGAME E5へと譲ることになりました。

中古のノートPCをサーバとして転用し、長年運用してきた環境。今回の移行を支えてくれたのは、ほかならぬ過去の自分が残した記録でした。

かつて構築した環境が役目を終えても、そこで得た知識や経験は、記録として残り続けます。

  • ハードウェアには寿命があります。
  • OSにもサポート期限があります。
  • アプリケーションも、いつかは更新や置き換えが必要になります。

しかし、そこで得た経験を記録しておけば、次の環境へと引き継ぐことができます。

機材は世代交代しても、記録は世代を超えて役に立つ。

今回の移行で得た、何よりの実感です。

こんな状況を一番表す言葉がこれです。『ユミアのアトリエ』主人公、ユミア・リースフェルトに曰く

人が記憶を紡ぐのは過去に縋るためじゃない! 未来へ進むためだ!

この記憶を紡ぐため、VPSやWordpressにメモを残しておいてよかったと思うことしきりです。

ボードゲーム『六華』感想。

背後に麻雀が透けていながらも、ゲーム性は異なり、更に麻雀の純粋な楽しさである「面子を揃える」に特化させた、言葉通りの意味で「華がある」ボードゲームでした。

ルール概要

牌を合わせていく麻雀系ゲーム。通常の麻雀と異なり、上下異なる/同じドミノ牌を自摸っていき、捨てるときは表にする。

大きく違うのは「表にした捨て牌」を利用できるという点です。

役もたった三種類。

  • 一色(1点): 手牌6枚の下の数をすべて同じ数字に揃える。
  • 三連(3点): 「上の数が連番・下の数が1種類」の3枚セットを2組揃える。
  • 六華(実質7点の6点): 下の数を1種類に揃え、上の数を1〜6の完全連番で揃える(最高役・一発逆転)。
  • (※★マーク付き牌による「輝きボーナス(追加点)」あり)

このゲームの好きなところ

「揃える楽しさ」に特化したルール。

麻雀がある程度分かるプレイヤーであれば、サマリーカードを見せて「捨て牌でも自摸れる」点と「ついでに完成(聴牌+捨て牌で完成)ルール」を教えるだけ。

ボドゲ初心者や子供でも分単位で理解できます。

麻雀の楽しさ(自摸とツモ上がりの快感)だけを純度高く抽出したルールと言えます。

とても質が良いコンポーネント

上下で数字・スートが分かれた「ドミノ牌(リッカ牌)」は適度な重さと質感があり、洗牌しやすいです。同作者の金字塔的作品『タイガー&ドラゴン』の裏表の区別がつきにくい欠点が著しく改善されています。

牌スタンドも同梱されているため、振動で牌を取りこぼすと言うこともありません。

上下異なる牌による劇的な手牌の変化。

本作最大のギミックです。牌の上下をひっくり返すことで、上の数字・下のスートの組み合わせが変化するため、

「ん? この一枚を逆にしただけで手役が完成する!」となるのはちょっとしたアハ体験です。

誰かが和了った後に「あー、こっち残してれば!」のたらればも頻発。

これにより、たった42枚の牌でも毎回異なるゲーム体験が可能。「1000回遊べる」という看板は伊達ではないと思いました。

ダウンタイムがほぼない

手配が5枚、6枚で完成。裏目を引いても「取り返せる」し、10点先取はかなり早く決着がつきます。更に高得点の『六華』にこだわらずとも逆転可能なのでサクサク進みます。

フリテン・流局がない世界

本作の更なる特徴として「捨てた牌を自摸れる」点にあります。これによって「手配が変化した結果、切った牌を利用したくなった」が可能な点にあります。

そのため、フリテンが存在せず、どんな状況でも(それこそ全ての牌が表になっても)役の完成を狙うことができます。

やや評価が分かれると思ったところ

運要素の強さ

6枚という短さゆえに配牌や引きの偏りが大きく、ガチガチの読み合いを求めたい場合は「引き運ゲー」と感じられるそうな点です。

人数によるプレイ感の違い

2人だとあっさり終わりやすく、一方的な展開になりがちでした。読み合いや捨て牌のジレンマが本格化するのは3〜4人程度という形。

追加ルールが麻雀に寄りすぎる。

上述した流局・フリテンなしはひりつく勝負が至高という方には向きません。

リーチ、ロン、無双などの追加ルールを全部盛りにすると「それなら麻雀でよくないか?」というのは冷静に思いました。

個人的に思ったこと

麻雀未経験者への導入としての優秀さ

これに尽きます。極端な話、下の数字だけを一致させれば完成するので、ほとんどの年齢層をカバーします。

また、これで牌に慣れればその派生形のゲームにもつなげやすいというのもポイントです。(なお、それ系で筆者が好きなのは『ひらがじゃん』と『すずめ雀』です)

アイスブレイクや人数時間調整にぴったり

インスト、セットアップ、ゲームが手短。そのため、重いゲームの息抜きだったりボドゲ会の人数が揃うまでの時間あわせにも都合が良いゲーム。ずっしりとした牌でありながら、割とコンパクトなパッケージも好感が持てます。

まとめ

  • 単純で覚えやすいルール
  • それでいて奥深いルール展開
  • 小気味の良いコンポーネント

などが揃った傑作。長らく入手困難だったことも、ファンが多いことも納得。麻雀系ゲームが好きな方もあまり興味がない方も楽しめる傑作でした。

ピボット旅行2026-終章『Finish the Story』

はじめに

岡山駅から新幹線に乗り込み、東京へ。4泊4日にわたるピボット旅行2026も、いよいよ終わりを迎えようとしていました。

指定された座席に腰を下ろし、荷物を整理してやったことはSNSの更新です。今回の旅行中、筆者は意識的にSNSから距離を置いていました。

  • 旅先で見たもの
  • 食べたもの
  • 感じたこと。

それらを逐一SNSに投稿するのではなく、その場での体験を優先していたのです。とはいえ、写真を撮らなかったわけではありません。むしろ、その逆です。

カメラやスマートフォンには、4日間の記録が大量に残されていました。帰りの新幹線は、それらを整理し、写真をアップロードするための時間。

そして、写真を見返すうちに、今回の旅行がいったい何だったのかを考える時間にもなりました。

そもそも、何をピボットしたのか

今回の旅行は、もともとブロンプトンを携行し、しまなみ海道を走ることを大きな目的としていました。

しかし、出発前から気になる天気予報。秋雨前線の影響によって、予定していた日程は雨に見舞われる可能性が高くなっていました。そこで下した決断。

ブロンプトンを置いていく。

10年以上にわたって旅の相棒としてきた折りたたみ自転車。それを置いていくという選択は、単なる荷物の削減ではありませんでした。旅のスタイルそのものを変える決断です。自転車で走ることを前提に組み立てた旅程を捨て、徒歩、鉄道、船を中心とした旅へと切り替える。

つまり、ピボット。

この決断を振り返ると、どうしても思い出す人物がいます。ジョン・シナです。

You Can't See Me.

2025年、ジョン・シナは長年築き上げてきたベビーフェイスとしての立場を捨て、衝撃的なヒールターンを果たしました。それまでの自分を否定するかのような、大胆なギミックチェンジ。

しかし、その試みは必ずしも期待された結果には結びつきませんでした。そして、再びフェイスターンへ。ここで重要なのは、ヒールターンが失敗したという事実そのものではありません。

一度変えたギミックを、もう一度変えることができた。

ということです。筆者もまた、今回の旅行で自分のギミックを変えました。自転車で走る旅行者から、公共交通機関を利用して各地を巡る旅行者へ。

もっとも、筆者の場合は悪役になったわけではありません。ブロンプトンを置いてきたからといって、突然観光客に向かって椅子を振り回すようになったわけでもありませんし。ただし、自分の中では相当に大きな転換でした。

そして、旅を終えようとしている今、もう一度考えます。このギミックチェンジは、果たして成功だったのか。

天候運という現象

筆者は以前から、自分の天候運について一種の確信を持っていました。それは単なる願望ではなく、これまでの経験から得られたものです。

例えば2018年の尾道旅行。台風が接近するという、普通ならば旅行の中止や変更を検討するような状況でしたが、実際に台風の影響を受けたのは夜間。日中は驚くほどの晴天に恵まれ、旅程を楽しむことができました。

しかも、筆者の心境としては「当然」とか「この私が旅をしている以上、それは絶対だ」でした。

それでも今回の旅行では、雨が降りました。それも、実に容赦なく。尾道では雨の中を歩き、金刀比羅宮への参拝にも雨の予報がつきまといました。

従来の自分であれば、こう考えたかもしれません。

「こんなはずじゃなかったのに」

ですが、今回の旅行を振り返ってみると、少し違った景色が見えてきます。

天運の矜恃

確かに、今回の天候運は全面的に味方してくれたわけではありませんでした。

一番降ってほしくない場面では、雨が止んでいた。

まず、海路です。今回の旅行は、東京から徳島へ向かうフェリーによって幕を開けました。そして、瀬戸内海を渡る移動も旅程の重要な一部でした。

船という交通手段を旅の柱に据えた以上、悪天候によって航行や移動そのものに支障が出ることは避けたいところ。その肝心な場面では、天候が大きな障害になることはありませんでした。

そして、もう一つ。金刀比羅宮です。海上交通の守り神として信仰を集めてきた、こんぴらさん。その参拝に際して、雨が止んだこと。筆者にとっては、これが何よりも印象的でした。

海路と、海路を司る神様。そこだけは譲らなかった。まるで、自分の天候運が最後の矜恃を見せてくれたような出来事でした。

すべてを晴れにすることはできませんでした。しかし、守るべきところは守ってくれました。今回の天候運もなかなか味な仕事をしてくれたものです。

雨が見せてくれたもの-That is not a Prediction, That is a SPOILER!!-

そして、今回の旅行で得られた最大の発見の一つ。

雨の中の旅行にも、得られるものがある。

こちらにも記したように、iPhone Airによるノールック撮影。ファインダーを覗き込んで構図を練るのではなく、文字通り、画面を確認せずに撮影したものです。

結果を見るまでも無く、シャッターを切ったときに脳内に響いた

That is not a Prediction, That is a SPOILER!!(これは予言では無い、ネタバレだ!!)

事実、その写真は最終的にブログのバナーにまで採用されました。旅行中に撮影した数々の写真。ブログの顔となったものがノールックで撮影した一枚だったというのですから、何とも出来すぎた話です。

  • 雨があったからこそ撮影できたもの。
  • ノールックだったからこそ得られたもの。

事前に計画して撮影したものではありません。旅の中で、その場の状況を受け入れ、シャッターを切った結果です。そして、そうして残された写真が、旅を終えた今、何よりも雄弁に今回の旅行を物語っています。

SPOILER!

最初から結末を知っていたのは、案外、筆者ではなく写真の方だったのかもしれません。

崩れたバイアス

今回の旅行では、いくつもの先入観が崩れました。

まず、高松という街に対する認識。当初、筆者が高松に期待していたのは、四国や中国地方を巡るための交通拠点としての利便性でした。

  • うどんが美味しい。
  • 鉄道や船の接続がよい。

それだけでも十分に魅力的な街だと思っていました。しかし、実際に滞在してみると、それだけではありませんでした。

  • 商店街を歩く楽しさ。
  • 地元の食文化。
  • 思いがけない発見。

旅の終わりに近づくにつれ、また訪れたいと思うようになっていたこと。単なる拠点として選んだ街が、旅の目的地そのものになっていたのです。

また、自転車がなければ行動範囲が狭まるという認識も変わりました。

  • 長距離移動を鉄道に任せる。
  • 船に乗る。
  • 歩きたい場所で歩く。
  • 疲れたら休む。

そして、天候に応じて行き先を変える。自転車を持たないことは、行動の制限ではなく、別の選択肢を手に入れることでもあったのです。

食事についても同様でした。事前に綿密な計画を立てなくても、その場で自分の食べたいものを選ぶ。時には予定を変更する。その結果、思いがけない美味しいものに出会う。

徳島ラーメン、うどん、骨付き鶏、そして最後の岡山でのえび飯。特にえび飯は、会計時に現金が足りるかどうかという、今回の旅でも最大級のピンチを伴いました。

このように、今回の旅行では、自分が当然だと思っていたものが次々と覆されました。

しかし、そのどれもが不快なものではありませんでした。むしろ、これまでの自分が持っていなかった視点を与えてくれたのです。

記録するということ

そして、今回の旅行で得られた最大の収穫。それは、記録です。筆者は普段からWordPressでブログを更新しています。

技術的な作業記録、日々の出来事、趣味の話、旅行記。興味を持ったことを調べ、実際に体験したことを文章にする。

それが、長年続けてきた習慣です。今回の旅行でも、同じことを続けました。4泊4日も旅先での出来事を記録し、帰宅後も記事としてまとめ続けました。

しかも、一つの出来事から複数の記事が生まれることもありました。

  • 何気ない食事。
  • 移動中の出来事。
  • 天候による予定変更。
  • 買い物。
  • 写真。
  • それらの出来事から派生する、自分自身の考察。

気がつけば、今回の旅行は、当初想定していた以上の分量の旅行記になっていました。単に記事の本数が増えたことではありません。

体験を記録することで、その体験から得られるものが増えていった。

ということです。旅先では気づかなかったことが、文章にする過程で見えてくる。別々の出来事だと思っていたものが、後から一つの流れとしてつながる。そして、記録を読み返すことで、自分が何を考え、どのような判断を下したのかが分かる。

これは、普段のサーバ運用にも通じるものがあります。

  • 何が起きたのか。
  • なぜ、その判断をしたのか。
  • 結果はどうだったのか。

次に同じような状況が起きたとき、どうすればよいのか。

ログを残すことの意味は、単に過去を保存することではありません。未来の自分が判断するための材料を残すことです。

今回の旅行記も、まさにそのような記録になりました。

  • 雨に降られた。
  • 予定を変えた。
  • 想定外の出来事が起きた。
  • それでも、旅を続けた。

そして、その一つ一つを記録することができた。筆者にとって、これ以上の収穫はありません。

Finish the Story

新幹線の車内。写真のアップロードを続けながら、今回の旅行を振り返ります。当初の予定通りにしまなみ海道を走っていたら、どのような旅になっていたでしょうか。

それは、それで楽しい旅だったと思いますが、今回訪れた場所や、出会ったものの多くは経験できなかったでしょう。

  • ブロンプトンを置いていくという決断。
  • 天候に応じて旅程を変更するという判断。
  • 雨の中でも楽しめるものを見つけるという発見。

そのすべてが、今回のピボット旅行を形作っていました。ここで、冒頭のジョン・シナの話に戻ります。

一度ギミックを変えたからといって、そのギミックに固執する必要はありません。うまくいかなければ、また変えればいい。もちろん、自分が納得する範囲で。

今回の旅を終えたからといって、筆者がブロンプトンに乗らなくなるわけではありません。

  • また自転車で旅をしたくなったら、そうすればいい。
  • 徒歩や鉄道で旅をしたくなったら、そちらを選べばいい。

大切なのは、過去の自分が決めたスタイルを守り続けることではなく、その時々で自分が納得できる選択をすることです。

つまり、今回のピボット旅行は、ブロンプトンを置いていくことで始まりましたが、ブロンプトンを否定する旅ではなかったのです。むしろ、これまでの旅の経験に、新しい選択肢を加える旅でした。

そして、今回の旅を通じて得た経験は、すべて記録として残っています。

  • 天候運への確信。
  • 崩れたバイアス。
  • 自分の判断。
  • 思いがけない出会い。

その一つ一つが、次の旅へとつながっていくことでしょう。

旅は終わります。

しかし、旅によって得られたものは終わりません。

新幹線は東京へ向かって走り続けます。写真のアップロードを終え、筆者は改めて今回の旅を思い返しました。

最初に思い描いていた旅とは、まったく違うものになりました。ですが、

これが、筆者の選んだピボット旅行2026です。

そして、そのすべてを書き残すことができました。物語を終わらせるために必要だったのは、当初の計画を完遂することではありません。自分で選び、自分で歩き、自分で記録すること。

その積み重ねによって、初めて自分の物語が完成するのです。

Finish the Story.

ピボット旅行2026、これにて終幕です。

ピボット旅行2026-断章『ロープ際のカウント2.99』

はじめに

ピボット旅行2026、最終日。ここまでの旅では、実に様々なピンチに遭遇してきました。

天候による旅程変更。雨の中での移動。予想外の出来事。そして、その都度行われた脳内ゴリラルームによる判断。

しかし、今回の旅における最大のピンチは、そんなものではありませんでした。それは、岡山で昼食を食べ終えた直後のこと。しかも、その危機を救ったのは、ほんの数時間前の何気ない判断だったのです。

雨の後楽園

最終日の目的地の一つ、岡山後楽園。あいにくの雨模様でしたが、ここで筆者の目を引いたものがあります。

彼岸花です。

今回の旅行では、尾道でも雨に濡れた彼岸花を撮影していました。秋の訪れを告げる鮮やかな赤。雨に濡れることで、その色彩はいっそう際立ちます。晴天の下で見る花も美しいものですが、雨の中だからこそ見られる景色というものもあります。

尾道に続き、岡山でも出会えた雨の彼岸花。結果的に、今回の旅を象徴する被写体の一つとなりました。

そんな後楽園への入場時、ちょっとした出来事がありました。入場料の支払いにSuicaが使えたのです。これまでの旅行でも、交通系ICカードやデビットカードを活用してきた筆者。

現金を取り出す必要もなく、いつものように支払いを済ませました。このときは、単に便利だと思っただけでした。

これが後になって、とんでもない伏線だったことが判明します。

岡山名物、えびめし

後楽園の散策を終えてのランチタイム。岡山に来たからには、やはり地元の名物を食べたいところです。そこで選んだのが、岡山名物の「えびめし」。

名前だけ聞けば、海老の入った炒飯のようなものを想像するかもしれません。実際に目の前に現れたのは、独特の黒褐色をしたご飯でした。カレーの風味を感じさせる、カラメルソースを使った味付け。

一見すると濃厚そうな色合いですが、口に運んでみると、香ばしさと旨味が広がります。そこに加わる、プリプリとした海老の食感。

これだけでも十分に満足できる一皿ですが、今回の食事には更なる主役がいました。有頭海老フライです。サクッとした衣の香ばしさ。海老そのものの甘味。そして、頭の部分から感じられる海老味噌の濃厚な旨味。

えびめしの香ばしさと、海老フライの旨味。

同じ海老を使いながら、それぞれ異なる方向から味覚を楽しませてくれます。そして、これらを口の中で綺麗に洗い流してくれたのが、ニルギリ茶。すっきりとした飲み口が、濃厚な食事の後に実に心地よい。

旅の最後に、また一つ美味しいものを引き当てることができました。大満足です。

この時点では。

お会計

食事を終え、余韻に浸りながらお会計へ。そこで、店員さんから告げられた一言。

「お支払いは現金かPayPayになります」

……。

…………。

現金、そんなに持っていない。

今回の旅行では、基本的にSuicaとデビットカードで支払いを済ませてきました。現金が必要になる場面は限られており、財布の中身をそれほど気にしていなかったのです。

ここで提示された選択肢。

現金かPayPay。

筆者が普段使っている決済手段が、見事に両方とも外れました。

……財布の中に、いくら残っていた?

とりあえず財布を開きます。千円札がある。よし。しかし、これだけでは足りません。

小銭入れを開きます。

100円。
200円。
300円。

頼む。あと少し。ここで小銭を数える手が止まりました。

支払いを済ませた結果、残金40円。

…………。

危なかった。本当に、危なかった。ここで「これからお金下ろしてきます」とかは相当に格好が悪い状況です。しかも、新幹線まで2時間を切っている状況です。

狂乱の貴公子、再び

ここで、ふと思い出したことがあります。この日の朝食です。朝に食べたうどんを、プロレス界のレジェンド、リック・フレアーになぞらえていたのです。

「狂乱の貴公子」の異名を持つその試合運びといえば、観客の感情を巧みに操り、絶体絶命の状況からでも生き残る老獪さ。そして、何よりも印象的なのが、カウント2.99でのキックアウトです。

レフェリーの手がマットを叩く。「スリー……!」と思った瞬間、肩が上がる。あるいは、レフェリーが3カウントを数え終わったというのに、よく見れば片足がしれっとロープにかかっていてロープブレイク。

  • 観客は騒然。
  • 対戦相手は抗議。
  • そして当の本人は、何食わぬ顔で生き残っている。

これぞ、リック・フレアー。

朝食のうどんを喩えるために狂乱の貴公子を持ち出したら、昼食でその試合運びを再現するとは誰が思いますか。

今回の旅における最大のピンチ。それは、雨でも怪我や体調不良でもなければ、旅程の変更でもありませんでした。昼食代が払えるかどうか。

しかも、その決着は残金40円という、まさしくカウント2.99の世界。筆者、この時の会計の記録に「カウント2.99のキックアウト」と項目名につけたほどです。

最高の伏線

そして、ここで思い出したのが、後楽園での支払いです。入場料をSuicaで支払っていたこと。もし、あのとき現金で支払っていたら?答えは明白です。

えびめしのお会計で、現金が足りなくなっていました。

何の気なしに選んだSuica決済。それが、数時間後の自分を救っていたのです。

  • 尾道から続く雨の彼岸花。
  • 岡山後楽園での散策。
  • 岡山名物のえびめし。

それぞれが旅の思い出として独立しているはずだったのに、最後の最後で思わぬ形につながりました。まさか、後楽園の入場料をSuicaで払ったことが、昼食代を支払えるかどうかの分岐点になっていたとは。

これもまた、今回のピボット旅行らしい展開です。

試合終了

こうして、無事に支払いを終えました。財布に残された現金は40円。レフェリーの3カウントは成立せず。ロープ際で、辛うじて生き残った格好です。

そして、お店を後にしてようやく、先ほど食べたえびめしの味が蘇ってきました。

  • カレーの風味をまとったご飯の香ばしさ。
  • プリプリとした海老の食感。
  • 有頭海老フライの香ばしさと、海老味噌の旨味。
  • それらをすっきりと流してくれたニルギリ茶。

今回のピボット旅行は、天候や交通事情に合わせて予定を変更し、その都度、別の楽しみを見つけてきた旅でした。

しかし、最終日の昼食に至っては、ピボットする余地すらありません。あるのは、財布の中身だけ。

そこで生き残れたのは、後楽園でのSuica決済という、本人すら意識していなかった伏線のおかげでした。

朝食でリック・フレアーを持ち出し、昼食でリック・フレアーの試合をする。

そして、財布には40円が残った。カウント2.99。狂乱の貴公子、岡山にて生還。

Woooo!

CVE-2026-98432対応・解決編『サーバ管理者は眠りたい』(Ubuntuの先行パッチ適用によるカーネルアップデート)

はじめに

2026年10月31日、Linuxカーネルの脆弱性「CVE-2026-98432」に対して、nftablesによる暫定緩和策を実施しました。

このときの方針は、修正版カーネルが公開されるまでの間、攻撃経路を少しでも狭めるというものです。ここで問題となったのがUbuntu側の修正版の提供状況でした。

脆弱性の存在は明らかになっている。修正パッチも存在している。しかし、Ubuntuの通常の更新経路には、まだ修正版が配信されていない。そんな中、2026年11月2日にCanonicalから発表がありました。

Fixes available in -proposed pocket for CVE-2026-98432

修正版カーネルが -proposed ポケットで利用可能になった、というものです。

-proposed は、Ubuntuの更新パッケージが正式公開される前に検証される領域です。つまり、修正版は手に入る。しかし、通常の更新として配信するための検証はまだ終わっていない。

ここで筆者は、正式公開を待つのではなく、修正版カーネルを先行適用することにしました。今回は、その適用手順と、再起動後の確認、通常の更新経路への復帰までを記録します。

1. 対応環境と修正版の確認

今回の対象はUbuntu 24.04 LTSのVPSです。

まず、現在稼働しているカーネルを確認します。

uname -r

結果:

6.8.0-147-generic

インストール済みのカーネルパッケージも確認します。

dpkg -l | grep linux-image

続いて、APTで利用可能なバージョンを確認します。

apt-cache policy linux-generic
インストールされているバージョン: 6.8.0-147.147
候補: 6.8.0-147.147

この時点では、通常の noble-updates および noble-security に修正版は存在していません。

一方、Canonicalが公開したUbuntu 24.04 LTS向けの修正版は以下のとおりです。

6.8.0-149.149

そこで、noble-proposed を一時的に利用することにします。

2. noble-proposedの登録

まず、APTに noble-proposed を追加します。

echo 'deb http://archive.ubuntu.com/ubuntu noble-proposed main' | sudo tee /etc/apt/sources.list.d/noble-proposed.list

次に、-proposed のパッケージが通常の更新で無差別に選択されないよう、優先度を明示します。

sudo tee /etc/apt/preferences.d/99-noble-proposed <<'EOF'
Package: *
Pin: release a=noble-proposed
Pin-Priority: 100
EOF

通常の更新リポジトリの優先度500より低くすることで、-proposed に存在するパッケージを通常のアップグレード対象として優先させないようにします。なお、Ubuntuの -proposed は標準でも優先度100として扱われます。今回は設定を明示しています。

パッケージリストを更新します。

sudo apt update

続いて、修正版が認識されているか確認します。

apt-cache policy linux-generic

結果:

linux-generic:
  インストールされているバージョン: 6.8.0-147.147
  候補:               6.8.0-147.147
  バージョンテーブル:
     6.8.0-149.149 100
        100 http://archive.ubuntu.com/ubuntu noble-proposed/main amd64 Packages
 *** 6.8.0-147.147 500
        500 http://archive.ubuntu.com/ubuntu noble-updates/main amd64 Packages
        500 http://security.ubuntu.com/ubuntu noble-security/main amd64 Packages
        100 /var/lib/dpkg/status

ここで、修正版の 6.8.0-149.149 が認識されました。ただし、候補は依然として 6.8.0-147.147 のままです。

これは意図した挙動です。

3. インストール前のシミュレーション

いきなりカーネルを更新するのは避けたいところです。特に今回は、正式公開前のパッケージを本番VPSへ導入します。

そこで、APTのシミュレーション機能を利用します。

sudo apt-get -s install -t noble-proposed --only-upgrade linux-generic

-s はシミュレーション、-t noble-proposed は対象のリポジトリを指定するオプションです。

今回の結果は以下のとおりでした。

アップグレード: 8 個
新規インストール: 7 個
削除: 0 個
保留: 21 個

更新対象には以下が含まれていました。

  • linux-generic
  • linux-image-generic
  • linux-virtual
  • linux-image-virtual
  • linux-headers-generic
  • linux-headers-virtual
  • linux-libc-dev
  • linux-tools-common

また、カーネルイメージ、モジュール、ヘッダー、ツール類が 6.8.0-149 として新規導入されます。特に確認したかったのは、パッケージ削除が0件であることです。

4. 修正版カーネルの適用

シミュレーションに問題がなかったため、実際の更新を実施します。

sudo apt-get install -t noble-proposed --only-upgrade linux-generic

今回の環境では、linux-generic に加えて linux-virtual 系のメタパッケージも依存関係として更新対象になりました。

インストール後、カーネルを切り替えるために再起動します。

sudo reboot

再起動後、稼働カーネルを確認します。

uname -r

結果:

6.8.0-149-generic

修正版カーネルでの起動に成功しました。

これでCVE-2026-98432に対するカーネル側の修正は適用できました。

……と、ここで終われば話は簡単だったのですが。

5. 再起動後のサービス確認

カーネルが更新できたからといって、システム全体が正常に動いているとは限りません。

そこで、systemdの状態を確認します。

systemctl --failed

結果:

UNIT LOAD ACTIVE SUB DESCRIPTION

0 loaded units listed.

失敗しているユニットがあった場合は、カーネル更新との関連を含めて原因を確認し、必要に応じて関係者と調整した上で対処します。

6. noble-proposedの登録解除

修正版カーネルの適用と再起動後の確認が完了したため、最後にAPTの設定を元に戻します。noble-proposed は正式公開前のパッケージを提供する領域です。

今回必要だったのは修正版カーネルの先行適用であり、継続して有効にしておく必要はありません。

追加した設定ファイルを削除します。

sudo rm /etc/apt/sources.list.d/noble-proposed.list
sudo rm /etc/apt/preferences.d/99-noble-proposed

パッケージリストを更新します。

sudo apt update

続いて、カーネルの状態を確認します。

apt-cache policy linux-generic

結果:

linux-generic:
  インストールされているバージョン: 6.8.0-149.149
  候補:               6.8.0-149.149
  バージョンテーブル:
 *** 6.8.0-149.149 100
        100 /var/lib/dpkg/status
     6.8.0-147.147 500
        500 http://archive.ubuntu.com/ubuntu noble-updates/main amd64 Packages
        500 http://security.ubuntu.com/ubuntu noble-security/main amd64 Packages
     6.8.0-31.31 500
        500 http://archive.ubuntu.com/ubuntu noble/main amd64 Packages

修正版の 6.8.0-149.149 はインストール済みとして維持されています。通常の更新リポジトリに存在するバージョンは 6.8.0-147.147 ですが、APTが自動的にダウングレードすることはありません。

最後に、noble-proposed の設定が残っていないことを確認します。

grep -R 'noble-proposed' /etc/apt/sources.list /etc/apt/sources.list.d/ /etc/apt/preferences.d/ 2>/dev/null

結果は出力なし。これでAPTの設定も通常の状態へ戻りました。

7. 暫定緩和策について

10月31日に実施したnftablesによる暫定緩和策については、今回は撤去せず、そのまま維持することにしました。今回のカーネル更新によってCVE-2026-98432の修正は適用されていますが、既存のフィルタリングルールを急いで取り除く必要もありません。

筆者の環境ではGoを使用しておらず、現在のルールによる運用上の問題も確認されていません。そのため、今回の対応ではnftablesのルールと永続化用のsystemdサービスを変更せず、現状維持とします。

8. 対応結果

今回の対応結果をまとめます。

項目結果
CVE-2026-98432修正版適用完了
稼働カーネル6.8.0-149-generic
noble-proposed登録解除済み
systemd失敗ユニット0件
nftables暫定緩和策維持

これで、今回のCVE対応は一段落となりました。

おわりに

今回、改めて実感したのは、脆弱性対応における判断の難しさです。Canonicalが修正版を -proposed に公開したのは、正式な更新経路へ投入する前に、十分な検証を行うためです。

その判断には合理性がありますが、実際にサーバを運用する立場からすれば、脆弱性が明らかになっているにもかかわらず、正式な更新を待ち続けることにもリスクがあります。

  • 正式公開まで待つのか。
  • 検証中の修正版を先行適用するのか。
  • 暫定緩和策でどこまで対応できるのか。

どの選択にも、それぞれのリスクと運用コストがあります。この場合、筆者が選べる道は2つです。

  • 正式公開まで待ち、日々、脆弱性チェックに怯えて眠れない時間を継続するのか?
  • 少々のリスクを承知でカーネルアップデートを行い、(少なくともその問題は)解決させてぐっすり眠る日を確保するのか?

筆者の性分は後者だったというお話です。

Page 1 of 311

次

Powered by WordPress & Theme by Anders Norén