AI謎解きプロジェクト|AIは本当に謎を解けるのか?人間との知能実験を開始

人間とAIが、同じ条件で挑む知能実験を始めます。

AI謎解きプロジェクトは、AIが本当に文章だけで謎を解けるのかを検証する長期実験です。
AIは、驚くほどの速度で進化しています。

文章を書き、プログラムを作成し、画像を生成し、Web検索や外部ツールまで自在に扱えるAIも登場しました。

しかし、私たちは一つの疑問を持っています。

「AIは、本当に”考えて”いるのでしょうか。」

知識を検索できることと、自ら考え抜くことは同じではありません。

そこで私たちは、この疑問に真正面から挑むため、新しいプロジェクトを開始します。

それが 「AI謎解きプロジェクト」 です。


このプロジェクトが目指すもの

私たちが目指すのは、単なる謎解きイベントではありません。

人間とAIが同じ条件で挑戦し、その思考力を継続的に記録・比較する実験プロジェクトです。

AIは数か月で大きく進化します。

今日解けなかった問題を、半年後には数分で解いてしまうかもしれません。

逆に、人間なら自然に気付けることを、AIはいつまでも見落とし続ける可能性もあります。

だからこそ、一度きりの勝負では意味がありません。

同じ思想で問題を公開し続け、人間とAIの能力変化を記録していきます。


なぜ「文章だけ」の謎解きなのか

このプロジェクトで扱う問題は、基本的に文章だけで構成します。

画像の細かな観察力や、手作業による操作、音声認識といった能力は評価対象にしません。

必要なのは、

  • 読む力
  • 理解する力
  • 仮説を立てる力
  • 論理的に推論する力
  • 間違いを修正しながら最後まで考え抜く力

です。

つまり、

「読む・考える・解く」

という純粋な知的能力を測ることが、このプロジェクトの目的です。


人間とAIを公平に比較するために

AIに不利な問題を作るつもりはありません。

もちろん、人間にだけ有利な問題を作るつもりもありません。

重要なのは、

誰が解くのかではなく、誰が最後まで到達できるのか。

という一点です。

問題は、人間にもAIにも同じ条件で公開します。

その上で、

  • 到達できたか
  • どれだけ時間がかかったか

を基本指標として比較していきます。


4つの参加カテゴリ

このプロジェクトでは、参加者を4つのカテゴリに分けます。

① 人間のみ

AIを一切使わず、人間だけで挑戦します。

人間の基準となる重要なカテゴリです。


② 人間+AI

人間が主体となり、AIを補助ツールとして利用します。

AIを「どれだけ上手に使いこなせるか」も能力の一部として評価します。


③ AI+人間

AIが主体となって考え、人間は最低限の補助だけを行います。

例えば、

  • AIでは入力できない作業
  • AIでは参照できない資料
  • 必要最小限の操作

など、人間は「手足」としてのみ介入します。

AIの自律性を測るためのカテゴリです。


④ AIのみ

このカテゴリが、本プロジェクト最大の挑戦です。

AIに渡されるのは、スタート地点だけ。

そこから先は、

  • Web検索
  • ブラウザ操作
  • Python
  • MCP
  • 外部ツール

など、必要だと判断したものは自由に利用できます。

制限は設けません。

むしろ、それらを使いこなせなければ解けない問題も積極的に取り入れていきます。

AIは、

どの情報を集め、

どのツールを選び、

どの仮説を採用し、

いつ間違いに気付き、

どのように修正しながら答えへ到達するのか。

その過程そのものが、この実験の観測対象です。


AIはどこまで自律できるのか

現在のAIは非常に高性能です。

しかし、長い推論を続けること、誤りを自ら修正すること、複数の仮説を管理しながら探索を続けることは、まだ得意とは言えません。

私たちは複数のAIで試験を重ねていますが、現時点では人間の介助なしに最後まで安定して到達できるAIは、ごく限られるという印象を持っています。

もちろん、これは現在の話です。

数か月後には、まったく違う結果になっている可能性も十分あります。

だからこそ、このプロジェクトは継続開催します。


AIの進化を記録する

AIは毎月のように新しいモデルが登場します。

ChatGPT

Claude

Gemini

Grok

Copilot

ローカルLLM

これらすべてが比較対象になります。

今年解けなかったAIが、

来年には最速記録を更新するかもしれません。

私たちは、その変化を継続して記録していきます。


人間の参加者も募集します

もちろん、この実験の主役はAIだけではありません。

人間が解けなければ、公平な比較は成立しません。

参加は

  • 一人でも
  • チームでも

自由です。

謎解きが好きな方

AIに興味がある方

人間の思考力に挑戦したい方

そして、

「AIなんかにはまだ負けない。」

そう思っている方の挑戦も、お待ちしています。


これは、AIが人間を超える瞬間を記録するプロジェクトかもしれない。

私たちは、AIが必ず人間を超えるとは考えていません。

しかし、その可能性を否定もしません。

もし、AIが人間を安定して上回る日が来るなら。

それは単なる性能向上ではありません。

「思考」という領域で、人間と肩を並べた瞬間なのかもしれません。

その歴史的な変化を、同じルール、同じ思想、同じ条件で記録し続ける。

それが、この AI謎解きプロジェクト の使命です。


あなたも、この実験の目撃者になりませんか。

このプロジェクトは、一度限りでは終わりません。

問題は継続的に公開し、人間とAIの挑戦記録を積み重ねていきます。

参加方法やルールの詳細は、順次公開予定です。

まずは、このプロジェクトに興味を持っていただけたら幸いです。

AIは、本当に考えて謎を解けるのか。

その答えは、まだ誰にも分かりません。

だからこそ、私たちは挑戦を始めます。人間とAIが、同じ条件で挑む知能実験を始めます。

AI謎解きプロジェクトは、AIが本当に文章だけで謎を解けるのかを検証する長期実験です。
AIは、驚くほどの速度で進化しています。

文章を書き、プログラムを作成し、画像を生成し、Web検索や外部ツールまで自在に扱えるAIも登場しました。

しかし、私たちは一つの疑問を持っています。

「AIは、本当に”考えて”いるのでしょうか。」

知識を検索できることと、自ら考え抜くことは同じではありません。

そこで私たちは、この疑問に真正面から挑むため、新しいプロジェクトを開始します。

それが 「AI謎解きプロジェクト」 です。


このプロジェクトが目指すもの

私たちが目指すのは、単なる謎解きイベントではありません。

人間とAIが同じ条件で挑戦し、その思考力を継続的に記録・比較する実験プロジェクトです。

AIは数か月で大きく進化します。

今日解けなかった問題を、半年後には数分で解いてしまうかもしれません。

逆に、人間なら自然に気付けることを、AIはいつまでも見落とし続ける可能性もあります。

だからこそ、一度きりの勝負では意味がありません。

同じ思想で問題を公開し続け、人間とAIの能力変化を記録していきます。


なぜ「文章だけ」の謎解きなのか

このプロジェクトで扱う問題は、基本的に文章だけで構成します。

画像の細かな観察力や、手作業による操作、音声認識といった能力は評価対象にしません。

必要なのは、

  • 読む力
  • 理解する力
  • 仮説を立てる力
  • 論理的に推論する力
  • 間違いを修正しながら最後まで考え抜く力

です。

つまり、

「読む・考える・解く」

という純粋な知的能力を測ることが、このプロジェクトの目的です。


人間とAIを公平に比較するために

AIに不利な問題を作るつもりはありません。

もちろん、人間にだけ有利な問題を作るつもりもありません。

重要なのは、

誰が解くのかではなく、誰が最後まで到達できるのか。

という一点です。

問題は、人間にもAIにも同じ条件で公開します。

その上で、

  • 到達できたか
  • どれだけ時間がかかったか

を基本指標として比較していきます。


4つの参加カテゴリ

このプロジェクトでは、参加者を4つのカテゴリに分けます。

① 人間のみ

AIを一切使わず、人間だけで挑戦します。

人間の基準となる重要なカテゴリです。


② 人間+AI

人間が主体となり、AIを補助ツールとして利用します。

AIを「どれだけ上手に使いこなせるか」も能力の一部として評価します。


③ AI+人間

AIが主体となって考え、人間は最低限の補助だけを行います。

例えば、

  • AIでは入力できない作業
  • AIでは参照できない資料
  • 必要最小限の操作

など、人間は「手足」としてのみ介入します。

AIの自律性を測るためのカテゴリです。


④ AIのみ

このカテゴリが、本プロジェクト最大の挑戦です。

AIに渡されるのは、スタート地点だけ。

そこから先は、

  • Web検索
  • ブラウザ操作
  • Python
  • MCP
  • 外部ツール

など、必要だと判断したものは自由に利用できます。

制限は設けません。

むしろ、それらを使いこなせなければ解けない問題も積極的に取り入れていきます。

AIは、

どの情報を集め、

どのツールを選び、

どの仮説を採用し、

いつ間違いに気付き、

どのように修正しながら答えへ到達するのか。

その過程そのものが、この実験の観測対象です。


AIはどこまで自律できるのか

現在のAIは非常に高性能です。

しかし、長い推論を続けること、誤りを自ら修正すること、複数の仮説を管理しながら探索を続けることは、まだ得意とは言えません。

私たちは複数のAIで試験を重ねていますが、現時点では人間の介助なしに最後まで安定して到達できるAIは、ごく限られるという印象を持っています。

もちろん、これは現在の話です。

数か月後には、まったく違う結果になっている可能性も十分あります。

だからこそ、このプロジェクトは継続開催します。


AIの進化を記録する

AIは毎月のように新しいモデルが登場します。

ChatGPT

Claude

Gemini

Grok

Copilot

ローカルLLM

これらすべてが比較対象になります。

今年解けなかったAIが、

来年には最速記録を更新するかもしれません。

私たちは、その変化を継続して記録していきます。


人間の参加者も募集します

もちろん、この実験の主役はAIだけではありません。

人間が解けなければ、公平な比較は成立しません。

参加は

  • 一人でも
  • チームでも

自由です。

謎解きが好きな方

AIに興味がある方

人間の思考力に挑戦したい方

そして、

「AIなんかにはまだ負けない。」

そう思っている方の挑戦も、お待ちしています。


これは、AIが人間を超える瞬間を記録するプロジェクトかもしれない。

私たちは、AIが必ず人間を超えるとは考えていません。

しかし、その可能性を否定もしません。

もし、AIが人間を安定して上回る日が来るなら。

それは単なる性能向上ではありません。

「思考」という領域で、人間と肩を並べた瞬間なのかもしれません。

その歴史的な変化を、同じルール、同じ思想、同じ条件で記録し続ける。

それが、この AI謎解きプロジェクト の使命です。


あなたも、この実験の目撃者になりませんか。

このプロジェクトは、一度限りでは終わりません。

問題は継続的に公開し、人間とAIの挑戦記録を積み重ねていきます。

参加方法やルールの詳細は、順次公開予定です。

まずは、このプロジェクトに興味を持っていただけたら幸いです。

AIは、本当に考えて謎を解けるのか。

その答えは、まだ誰にも分かりません。

だからこそ、私たちは挑戦を始めます。

公開予定について

入り口は、2026/8/12に第一弾を公開公開予定です。 その前(2026/8/5)に、コラボ先のサイトにて練習問題が公開される予定です。誰でも挑戦できるので、参加してください。 なお、ゴールできたら、その証として是非その証拠にコメントなどを残していってください。 


謎解き問題 入り口

・関連:2026/8/5 昼頃 公開予定; → hoscm X https://x.com/hoscm2025
・第一弾:2026/8/12公開予定; → 準備中です


関連記事

参考リンク

WordPressで謎のエラーが発生、これを何とか直す WordPress「YOP Poll 7.0.8」でFatal Error発生|Class “YopPoll\Admin\Deactivation_Feedback” not found の原因と対処法

WordPress「YOP Poll 7.0.8」でFatal Error発生|Class "YopPoll\Admin\Deactivation_Feedback" not found の原因と対処法

5年ほど特に問題もなくアップデートを続けつつ利用してきたWordPressだが、突然? 編集画面に入ろうとするとエラーが発生するようになった。これについて対処していく。 方針は、原因調査、対処、再発防止策絵検討と進める。

発生しているエラーは次です。  一部伏字化しています。

Fatal error: Uncaught Error: Class "YopPoll\Admin\Deactivation_Feedback" not found in /home/XXXX/YYY/public_html/info/wp-content/plugins/yop-poll/includes/class-plugin.php:42 Stack trace: #0 /home/XXXX/YYY/public_html/info/wp-content/plugins/yop-poll/includes/class-plugin.php(20): YopPoll\Plugin->init_hooks() #1 /home/XXXX/YYY/public_html/info/wp-content/plugins/yop-poll/includes/class-plugin.php(14): YopPoll\Plugin->__construct() #2 /homeXXXX/YYY/public_html/info/wp-content/plugins/yop-poll/yop_poll.php(80): YopPoll\Plugin::instance() #3 /home/XXXX/YYY/public_html/info/wp-includes/class-wp-hook.php(341): {closure}('') #4 /homeXXXX/YYY/public_html/info/wp-includes/class-wp-hook.php(365): WP_Hook->apply_filters(NULL, Array) #5 /home/XXXX/YYY/public_html/info/wp-includes/plugin.php(522): WP_Hook->do_action(Array) #6 /home/XXXX/YYY/public_html/info/wp-settings.php(622): do_action('plugins_loaded') #7 /home/XXXX/YYY/public_html/info/wp-config.php(94): require_once('/home/XXXX/YYY...') #8 /home/XXXX/YYY/public_html/info/wp-load.php(50): require_once('/home/XXXX/YYY...') #9 /home/XXXX/YYY/public_html/info/wp-admin/admin.php(35): require_once('/home/XXXX/YYY...') #10 /home/XXXX/YYY/public_html/info/wp-admin/about.php(10): require_once('/home/XXXX/YYY...') #11 {main} thrown in /home/XXXX/YYY/public_html/info/wp-content/plugins/yop-poll/includes/class-plugin.php on line 42
この Web サイトに重大なエラーが発生しました。サイト管理者のメール受信箱で手順を確認してください。問題が解決しない場合は、サポートフォーラム をお試しください。

WordPress のトラブルシューティングについてはこちらをご覧ください。

原因の検討

エラー内容を見ると、「Fatal error: Uncaught Error: Class “YopPoll\Admin\Deactivation_Feedback” not found 」とでている。 このプラグイン(plugins/yop-poll)があやしい。 プラグインの自動アップデートに失敗してと推測される。”not found”と言われているので、まずは、このファイルがあるかをチェックする。

原因調査方法について

SSHでログインして対象のファイルなどを確認する


$ ls -ltra wp-content/plugins/yop-poll/includes/Admin/
合計 148
-rw-r--r-- 1 XXXX XXXX 915 7月 30 01:23 class-admin-page-add-new.php
-rw-r--r-- 1 XXXX XXXX 15219 7月 30 01:23 class-guide.php
-rw-r--r-- 1 XXXX XXXX 5842 7月 30 01:23 class-admin.php
-rw-r--r-- 1 XXXX XXXX 33577 7月 30 01:23 class-admin-page-votes.php
-rw-r--r-- 1 XXXX XXXX 228 7月 30 01:23 class-admin-page-upgrade-to-pro.php
-rw-r--r-- 1 XXXX XXXX 259 7月 30 01:23 class-admin-page-settings.php
-rw-r--r-- 1 XXXX XXXX 1807 7月 30 01:23 class-admin-page-results.php
-rw-r--r-- 1 XXXX XXXX 25307 7月 30 01:23 class-admin-page-polls.php
-rw-r--r-- 1 XXXX XXXX 15001 7月 30 01:23 class-admin-page-logs.php
-rw-r--r-- 1 XXXX XXXX 18534 7月 30 01:23 class-admin-page-bans.php
drwxr-xr-x 2 XXXX XXXX 4096 7月 30 01:23 .
drwxr-xr-x 12 XXXX XXXX 4096 7月 30 01:23 ..


おえ「class-deactivation-feedback.php」はないですね。 これが原因かも
$ find wp-content/plugins/yop-poll -iname "*deactivation*"
$ nl -ba wp-content/plugins/yop-poll/includes/class-plugin.php | sed -n '30,55p'
30 // REST API.
31 add_action( 'rest_api_init', array( $this, 'register_rest_routes' ) );
32 add_filter( 'rest_post_dispatch', array( $this, 'set_rest_nocache_headers' ), 10, 3 );
33
34 // Admin.
35 if ( is_admin() ) {
36 $admin = new Admin\Admin();
37 $admin->init();
38
39 $guide = new Admin\Guide();
40 $guide->init();
41
42 $deactivation_feedback = new Admin\Deactivation_Feedback();
43 $deactivation_feedback->init();
44 }
45
46 // Frontend.
47 $frontend = new Frontend\Frontend();
48 $frontend->init();
49
50 // Assets.
51 $assets = new Assets();
52 $assets->init();
53
54 // Cron-based auto-reset.
55 $auto_reset = new Cron\Cron_Auto_Reset();

$ grep -R “Deactivation_Feedback” wp-content/plugins/yop-poll
wp-content/plugins/yop-poll/includes/class-plugin.php: $deactivation_feedback = new Admin\Deactivation_Feedback();

うーーん これは配布物件の制作ミス? ですか?  それでは 

暫定回避方法(編集画面をすぐ復旧したい場合)

一時的な対処として、

$deactivation_feedback = new Admin\Deactivation_Feedback();
$deactivation_feedback->init();

の2行をコメントアウトしてみる

参考情報です

$ grep “Version:” wp-content/plugins/yop-poll/yop_poll.php

Version: 7.0.8
$ grep “Stable tag” wp-content/plugins/yop-poll/readme.txt
Stable tag: 7.0.8

$ grep -R “spl_autoload|autoload|require_once|include_once” \

wp-content/plugins/yop-poll/includes
wp-content/plugins/yop-poll/includes/Admin/class-admin-page-bans.php: require_once ABSPATH . ‘wp-admin/includes/class-wp-list-table.php’;
wp-content/plugins/yop-poll/includes/Admin/class-admin-page-logs.php: require_once ABSPATH . ‘wp-admin/includes/class-wp-list-table.php’;
wp-content/plugins/yop-poll/includes/Admin/class-admin-page-polls.php: require_once ABSPATH . ‘wp-admin/includes/class-wp-list-table.php’;
wp-content/plugins/yop-poll/includes/Database/class-schema.php: require_once ABSPATH . ‘wp-admin/includes/upgrade.php’;

$ vi wp-content/plugins/yop-poll/includes/class-plugin.php で編集してコメントアウトしてみる

結果

上の2行のコメントアウトで、編集画面(管理者画面)は復旧しました

関連記事

YOP Poll 7.0.8

YOP Poll

ローカルLLM時代への準備検討を開始する ― Ollama+Gemma 4+MCPで2027年に備える

ローカルLLMを本気で検討すべき時期に入ってきた。クラウドAIの技術解放が一段落し、知名度が上がるにつれて、各サービスは投資フェーズから回収フェーズへ舵を切りつつある。実験的に触っていた頃は気にならなかった「使い方」と「コスト」が、いまは真正面から課題として立ち上がってきた。先行する各AIの選別・選択が進むこの時期に、選択肢のひとつとしてローカルLLMをどこまで実務へ組み込めるのか。2027年を見据えた検討を、ここから始める。

この記事の結論(2026年7月時点の現在地)

  • ローカルLLM単体では「AIに作業を任せる」構成にはならない。OllamaはMCPを話さないため、両者を仲介するクライアントが必須になる。
  • 推論エンジンの第一候補はGemma 4(2026年4月2日公開・Apache 2.0)。E4B変種ならVRAM 8GBクラスから動く。
  • クライアント側の情勢は動いた。Roo Codeは2026年5月15日に終了しており、いま選ぶなら本線はCline。
  • 検証すべきは「生成速度」ではなく「エージェントループが完走するか」。ここが未検証のため、本記事は検討段階の記録として置く。

なぜ2027年に向けてローカルLLMを検討するのか

動機は「クラウドAIをやめたいから」ではない。むしろ逆で、クラウドAIを使い続けるために、降ろせる作業を切り分けたいという発想である。検討の軸は四つに整理できる。

  • コスト構造:クラウドAIは従量課金で、使うほど比例して増える。ローカルLLMはGPUの初期投資と電力に置き換わり、使用量が増えても単価が上がらない。
  • 機密性:社外に出しにくいソースコードや顧客データを扱う作業は、そもそも外部APIに投げる前提を置きたくない。
  • 可用性:API障害、レート制限、モデルの世代交代による挙動変化。手元で完結する経路をひとつ持っておく意味は大きい。
  • 役割分担:ローカルLLMは全面置き換えではなく「下ごしらえ担当」として見る。整形・分類・一次調査・定型コードの叩き台までをローカルで済ませ、判断を要する部分をクラウドに残す。

ローカルLLMを実務に組み込む3層アーキテクチャ

「ローカルのOllamaでモデルを動かしながら、MCP経由でAndroid StudioやPython環境などのローカルシステムを操作する」という構成は、次の3層に分解できる。

役割候補
推論エンジン(脳)プロンプトを解釈し、次の一手を決めるOllama上のGemma 4
クライアント(司令塔)モデルとツールを仲介し、ループを回すCline などMCP対応クライアント
MCPサーバー(手足)ファイル読み書き・コマンド実行filesystem / shell(terminal)

最初に押さえる前提 ― OllamaはMCPを話さない

ここを誤解すると設計を丸ごとやり直すことになる。Ollamaが提供するのは、OpenAI互換のエンドポイント(http://localhost:11434/v1)と、Ollama独自形式のツール呼び出し(tool_calls)である。これはMCP準拠ではない。したがって「OllamaにMCPを設定する」という操作は存在しない。

MCPサーバーを使うには、(1) MCPクライアント機能を持つツール(Cline、Continue.dev、LM Studio、Goose など)をOllamaに向けるか、(2) MCPHostやollama-mcp-bridgeのような変換ブリッジを挟むか、のどちらかになる。ローカルLLMを「手足付き」で動かす設計は、この仲介層をどう置くかで決まる。


推論エンジンの候補:Gemma 4

Gemma 4は2026年4月2日にApache 2.0で公開された、Google DeepMindの第4世代オープンウェイトモデルである。Gemini 3と同系の研究成果から蒸留されており、ローカルLLM用途としては現時点で扱いやすい選択肢に入る。

  • 変種はE2B・E4B(実効2B/4B、コンテキスト128K)と、26B MoE・31B Dense(コンテキスト256K)。
  • Ollamaは0.22以降が必要。ollama pull gemma4 で既定のE4B(約9.6GB)が取得できる。
  • 2026年5月5日に投入されたMulti-Token Prediction(投機的デコード)により、デコード側スループットは最大3倍程度まで伸びるとされる。

VRAMの目安

モデル量子化VRAM目安位置づけ
E4BQ48GB〜常用。整形・要約・軽い編集
26B MoE(A4B)Q416GB前後長文コンテキスト重視
31B DenseQ418〜20GB精度重視。24GB級GPU向け
31B DenseBF16約64GB実質サーバー用途

出発点はQ4_K_Mでよい。加えて、コンテキストウィンドウ(KVキャッシュ)用にVRAMを2〜4GB空けておくこと。ローカルLLMで詰まる原因は、モデルが載らないことより、長い会話でKVキャッシュが膨らんで落ちることのほうが多い。


クライアント選定 ― 2026年前半に前提が変わった

ここが今回の検討で最も更新が必要だった箇所である。ネット上の解説記事は「Cline と Roo Code の二択」で書かれたものが多いが、その前提はすでに崩れている。

  • Roo Codeは2026年4月21日に終了を発表し、2026年5月15日にVS Code拡張のサービスを終了した。Roo Code CloudとRouterも停止し、リポジトリは読み取り専用でアーカイブされている。
  • 理由は技術的な行き詰まりではなく方針転換で、「IDEはコーディングの未来ではない」としてクラウドエージェントへ軸足を移した。
  • コミュニティフォークとしてZoo Code、Kilo Codeが後を継いでおり、移行先として案内されたのがClineである。

つまり、いまからローカルLLM+MCPの環境を組むなら、まずCline一本で考えるのが合理的である。フォーク系は、動く構成が固まってから比較対象に加えればよい。

項目ClineZoo Code / Kilo CodeClaude Desktop
状態現行・開発継続Roo Code終了後のコミュニティ継続現行
MCP対応標準対応対応(本家仕様を継承)標準対応
Ollama接続API Providerとして選択可選択可直接は非対応(ブリッジが必要)
向く用途開発ループの自動化Roo流モード運用の継承汎用のMCP作業
情報量多い少ない(移行期)多い

MCPサーバーは2つあれば足りる

Python実行とAndroidプロジェクト操作を目的にするなら、必要な「手足」は2種類だけである。ファイルを読み書きするfilesystem系と、コマンドを実行するshell(terminal)系。多くのMCPサーバーはバックグラウンドでNode.jsまたはPythonを動かすため、Node.jsのLTS版とPythonの安定版を先に入れておく。

{
  "mcpServers": {
    "filesystem": {
      "command": "npx",
      "args": [
        "-y",
        "@modelcontextprotocol/server-filesystem",
        "C:/Users/<ユーザー名>/Projects/AndroidApp_Project"
      ]
    }
  }
}

filesystemに渡すパスは、最初はプロジェクト1フォルダだけに絞る。許可範囲を広げるのは、ループが安定して回ることを確認してからでよい。コマンド実行系はクライアント側の機能として持っている場合があるため、Clineの設定を確認したうえで、足りなければ別途MCPサーバーを追加する。

想定している開発ループ

Android Studioのボタンを直接押させるわけではない。狙いは開発工程そのものを任せることで、流れは次のようになる。

  1. 指示を出す。例:「ログイン画面にバリデーションを追加し、gradleビルドが通るまで修正を繰り返すこと」。
  2. Gemma 4がプロンプトを解析し、ファイルを読む必要があると判断してfilesystem MCPの利用を要求する。
  3. クライアントが実際にファイルを読み、内容をモデルへ戻す。
  4. モデルが修正内容を出力し、クライアントが書き込む。
  5. クライアントが python run_test.pygradlew assembleDebug をターミナルで実行する。
  6. エラーが出ればログを読み取り、2に戻る。通れば完了。

クラウドAIでは当たり前に回るこのループが、ローカルLLMでどこまで完走するか。それが今回の検討の核心である。


ローカルLLMのコストをどう見るか

「月額いくら浮くか」で判断すると、たいてい見誤る。比較すべき項目を並べておく。

  • 初期投資:VRAM 16GB級で常用ラインに入り、24GB級で選択肢が広がる。ここが最大の固定費。
  • 電力:推論中は継続的に消費する。長時間のエージェントループを回すなら無視できない。
  • 時間コスト:ローカルLLMは生成が遅く、失敗によるやり直しも増える。人間の待ち時間は隠れコストになる。
  • 自律性の閾値:エージェントループはローカルモデルにとって最も厳しい負荷である。一定規模(20B台後半クラス+24GB前後のVRAM)を超えないと安定しにくい、という見方が一般的になってきている。

結論として現実解は併用になる。定型作業と機密性の高い処理をローカルLLMへ降ろし、判断と設計はクラウドAIに残す。この線引きを決めるための材料集めが、いまの段階の目的である。

動作検証の計画

公開前に通す検証項目を、順序つきで固定しておく。

  1. Ollama 0.22以降を導入し、ollama pull gemma4 が完了すること。
  2. ollama run gemma4 で日本語の応答品質と体感速度を確認すること。
  3. 500エラー発生で →  irm https://ollama.com/install.ps1 | iex
  4. 環境変数を正しく設定してOllamaを完全に再起動する → Get-Process | Where-Object {$_.ProcessName -like “ollama“} | Stop-Process -Force
    → これでもだめなら、GPU 起因かも 4GB VRAMなら ollama run llama3.2:3b  → これで起動した・
  5. VS Code+Clineで、API Providerを Ollama、Model IDを gemma4 として接続が通ること。← VRAMが多量にあれば
  6. filesystem MCPを1フォルダだけ許可し、読み取りが成立すること。
    → Windowsでは、
MCP設定ファイルの起動:ollama runのラムボンランナーから、MCP設定ファイルを直接起動します。
PSコマンドで > ollama run llama3.2:3b


VS Codeをインストールする
公式サイト:https://code.visualstudio.com/
VS Codeを開いて
Ctrl + Shift + X を押す
検索欄で Cline  入れて Installをクリックする

ollama pull qwen3-coder × 18GBもある 
ollama pull qwen3:4b ◎  ←  これもだめそう 8GBくらい必要そう
> ollama pull qwen2.5:1.5b

左のClineアイコンをクリックし開き 「Bring my own API Key」APIでcontinueを押し Providerを Ol←

JDKのアップデート: ollama runのラムボンランナーは、オリジナルのLlamaと互換性がないように設計されています。つまり、古いバージョンのJDKを使用することはできません。 recentなバージョンのJDK を使用してください。
llamapの置き換え: ollama runは、Java program のコンパイルとリンキングを扱うためのコマンド llamap を提供しますが、これも modernな Java version では使用できません。代わりに javac コマンドを使用する必要があります。
JDKの設定ファイルの検索: cp オプションは古いバージョンの JDK にあり、modern な JDK に使用できないため、 modernな JDK では使用できません。代わりに -class-pathオプションまたは実際の JDK の lib directory を指定する必要があります。

  1. コマンド実行を経由して「実行 → エラー読み取り → 自己修正」のループが完走すること。
  2. 同じ課題をクラウドAIにも投げ、所要時間と成功率を並べて比較すること。

関門は5番である。ここを通過できた時点で、本記事を実測値つきで更新する。

まとめ ― 2027年に向けた現在位置

ローカルLLMは「安く済ませる手段」ではなく、「どの作業を手元に置くか」を決めるための道具である。2026年7月時点で、推論エンジン(Gemma 4)とクライアント(Cline)とMCPサーバー(filesystem/shell)という3層の見取り図は描けた。一方で、Roo Codeの終了のように前提が半年で入れ替わる領域でもある。だからこそ構成を固定するより、検証手順を先に固めておくほうが実務では効く。ローカルLLMの検討は、ここから実機での確認フェーズに入る。

関連記事

参考リンク

2026年夏版 最新AIはこう使え ― MCPからClaude Coworkへ、実務を「任せる」ための環境が変わった ―

春版の「人・もの・かね」を踏まえ、半年で起きた最大の変化「MCPからCoworkへ」を解説。フォルダ接続へ変わった許可設定とサンドボックスを実体験から。

この半年でAI活用の景色を変えたのが、Anthropicの「Cowork」です。春に「AI活用は“ひと・もの・かね”で読み解ける」という話を書きましたが、その枠組みは変えずに、今回は“AIに実務を任せる土台”がどう変わったかを、夏版としてお届けします。

  • ひと → AI+スキル
  • もの → MCP+操作対象リソース
  • かね → セッション(利用制限)

この枠組みは今も変わっていません。前提として、まず春版をご覧ください。
2026年春版 最新AIはこう使え ―「人・もの・かね」から読み解くAI活用の新常識―

そのうえで、この半年で現場に一番効いてきた変化を、夏版として1つだけ掘り下げます。テーマは「MCPからCoworkへ」。AIに“手足”を与える方法そのものが、変わり始めました。

Coworkとは — Anthropicが提唱する「実務を任せる」仕組み

Claude Cowork(クロード・コワーク)は、Anthropicが提唱する新しいAIの使い方です。2026年1月に研究プレビューとして登場し、4月にmacOS/Windowsで一般提供、7月にはWeb・モバイルへと広がりました。短期間で対象がどんどん広がっています。

ひとことで言うと——CoworkはClaudeに“実務そのもの”を任せる場所です。

春版の言葉でいえば、これは「もの=AIの手足」を、より安全に付け替えられるようにした仕組みです。つまり、Claudeとの対話の中で許可設定を行う仕組みに強化された、ということです。設定ファイルを開いて書く代わりに、「このフォルダを使っていい?」に答えるだけ。(「より安全に」が具体的に何を指すかは、記事の後半であらためて説明します。)

利用者目線で、何が変わったのか — 設定ファイルから「フォルダ接続」へ

体感がいちばん大きいのは、環境構築まわりです。

これまで(MCP直結の時代)
AIにファイルを触らせるには、設定ファイル(claude_desktop_config.json)に filesystem サーバーを書き、ドライブを列挙する作業が必要でした。うまくいかなければ再起動し、バージョンを固定し、記述ミスを疑う。(この設定に何度もハマった記録は別記事に書きました → ステージング版正式公開版(mic.or.jp)

いま(Cowork)
設定ファイルを触りません。「このフォルダを接続していい?」に、あなたが1回OKを出すだけ。承認した瞬間から読み書きできます。再起動もバージョン固定も不要です。

しかも許可の粒度が細かい。フォルダ単位・セッション単位で、必要なぶんだけ。使い終われば、その権限は持ち越しません。

「設定する」から「その場で許可する」へ。環境構築の主役が、設定ファイルから“承認”に移りました。

夏版_MCP-Cowork仕組み図ダウンロード

CoworkはMCPを隠蔽化する仕組みなのか

使ってみての率直な感想です。Coworkは、MCPを隠蔽化する仕組みのように見えます。

より正確には、MCPをなくしたのではなく、その「設定」と「権限付与」を利用者から見えない場所に畳み込んだ、という感じです。

  • ファイル接続:ほぼ隠蔽。もう「MCP」という単語すら意識しません。
  • 外部サービス連携:隠すというより“包む”。MCPは裏で生きていて、コネクタの提案という形で見えにくく・使いやすくなっています。

そして——Coworkの裏側にはMCP相当の仕組みが、利用者に見えない形で確かに存在します。外部サービスは今もMCPコネクタそのもの、ファイルは接続したフォルダをサンドボックスにマウント。利用者はそれを直接見ません。要するにCoworkは、「MCPを知らなくてもAIに手足を付けられる」ための製品化レイヤーなのだと思います。

「より安全に」とは具体的に何か — 最小権限とサンドボックス

後回しにした「安全」の中身です。Coworkの安全は、だいたい次の4つで担保されています。

  • フォルダ単位:許可したフォルダしか触れない
  • セッション単位:許可は持ち越さない。使い終われば消える
  • サンドボックス:コード実行は隔離された環境(仮想環境)の中。ホストPCを直接いじらない
  • ネットワーク:既定では勝手に外に出ない(許可制)

春版の「もの=手足」に対して言えば、手足を出せる範囲を、あらかじめ囲ってあるということです。

ここに大事な連鎖があります。裏でMCP相当の“見えない仕組み”が動くからこそ、その隠蔽に安心感を持たせるために、動作環境を仮想環境(サンドボックス)に閉じ込める——という設計になっている。「見えないものが動く」怖さを、「触れる範囲を囲う」ことで打ち消しているわけです。

サンドボックス(仮想化)のコストという論点

ただ、囲うにはコストがかかります。

サンドボックスを仮想化やクラウドで用意すれば、セッションごとに計算資源のコストが発生します。ここは春版の「かね=配分すべき経営資源」の続きの話です。

一つの発想として——毎回クラウドで仮想環境を立てる代わりに、多少スペックの低いマシンでも“専用の物理サンドボックス機”を1台用意し、そこで動かせば、コストを抑えられるかもしれません。安全のための隔離は「別の箱で動かす」ことが本質なので、その箱が仮想か物理かは、目的次第で選べるはずです。

もちろんトレードオフはあります。クラウドの隔離は毎回まっさらで、維持管理が要らず、同時にいくつも立てられる弾力性がある。物理機はそのクリーンさと手軽さを手放す代わりに、コストを固定費に寄せられる。どちらが得かは使い方次第で、「安全のためのコストをどう持つか」は、これからのAI活用の設計課題になっていくと思います。

使い方の提案 — Cowork時代の許可設定の作法

  1. ファイルは「フォルダ接続」を主経路に。Coworkで作業するなら、旧設定ファイルに頼らず、都度フォルダを接続する運用へ切り替える。いちばん素直で、つまずきが少ない。
  2. 「どちらの層で動く操作か」を意識する。ファイルの読み書きはCowork接続、外部サービスはコネクタ(MCP)。繋がらないときは、まず「どの経路を叩いているか」を疑う。
  3. 最小権限を“不便”ではなく“作法”として使う。毎回の接続はひと手間ですが、これは「任せる相手に、必要なぶんだけ鍵を渡す」ことそのものです。
  4. 旧config方式の人こそ、一度見直す。設定が正しくても、Coworkでは反映されないことがある。両面を知っておくだけで、無駄なトラブルを避けられます。

これは新しい“弊害”でもあります。Coworkでは、こちらが「このフォルダをCoworkで接続して」と指示しないと、MCPの設定自体は正しくできていても、ファイルにアクセスできないことがあります。従来なら“設定さえ合っていれば動く”はずが、Coworkでは“その場の接続指示”という一手間が新たに必要になった——便利さと引き換えの、小さな引っかかりです。

【体験メモ】設定ファイルにはドライブを正しく書いてある。なのにCoworkからは繋がらない。「フォルダを接続」に切り替えたら一発で解決した。原因は、Coworkの標準ファイル操作が“旧設定ファイル”ではなく“フォルダ接続”のほうを見て動くから。

むすび — AIは進化し続ける。人間にも“使いこなす力”が問われる

春版の結論は「AIは設計してから任せる」でした。夏版はその一歩手前をこう言い直します。任せるには、まず“安全に繋ぐ”ところから。

Coworkの「最小権限・セッション単位で、その都度許可する」という作法は、「部下にどこまで任せるか」というあの昔ながらの問いと地続きです。全部の鍵を最初から渡さず、仕事に必要なぶんだけ、その都度渡す。

そして——ここが今回いちばん伝えたいことです。このようにClaudeをはじめとするAIは、これからもどんどん新しい形へ進化していきます。半年で「MCPからCoworkへ」動いたように、また次の形が来る。

だとすれば、問われているのはAIの性能だけではありません。新しいものを理解し、使いこなす力——それが、私たち人間の側にも求められています。AIが進化するスピードに、学び続ける私たちが並走できるか。そこが、これからのAI活用の本当の分かれ目なのだと思います。

関連記事

「Unable to find a medium」でLive USBが起動しない原因と対処法|casperエラー解説

Unable to find a medium containing a live file system というメッセージが表示されて、Linux の Live USB が起動しないまま止まってしまった経験はないでしょうか。GRUB のメニューを選んだ直後にこの画面で止まると、多くの人はまず「USB メモリが壊れたのか」と考えます。

Unable to find a medium containing a live file system
Attempt interactive netboot from a URL?
yes no (default yes):

しかし実際には、USB そのものの故障だけが原因とは限りません。むしろ、一度 USB メモリを抜き差ししただけであっさり正常起動する、というケースも少なくないのです。この Unable to find a medium というメッセージが伝えているのは「結果」であって「原因」ではありません。両者を分けて理解しておくと、同じ症状に出会ったときに落ち着いて対処できるようになります。本記事では、このメッセージが何を意味するのかをまず整理し、その上で考えられる原因と、現実的な対処の順序を解説します。なお本記事は特定の製品に限った話ではなく、Ubuntu 系の Live USB 全般に当てはまる内容として書いています。

Unable to find a medium の意味:casperがLiveファイルシステムを探す仕組み

「Unable to find a medium containing a live file system」とは、起動処理を担うプログラム(casper)が、Live ファイルシステムを格納したメディアを見つけられなかった、という意味です。

ここでいう medium(メディア)は USB メモリだけを指すわけではありません。DVD ドライブ、ISO イメージをマウントしたデバイス、その他 Live システムを格納しうる媒体をまとめて指しています。つまりこのメッセージは「Live ファイルシステムが入っているはずの媒体を見つけられなかった」という結果だけを述べているのであって、「USB メモリが故障した」と断定しているわけではないのです。

では、その「Live ファイルシステム」とは何でしょうか。Ubuntu 系の Live システムでは、起動後に実際に動く本体は filesystem.squashfs という圧縮されたファイルです。電源投入から起動完了までの流れは、おおまかに BIOS / UEFI から GRUB へ、GRUB から Linux カーネルへ、カーネルから initramfs(初期 RAM ファイルシステム)へと進み、その中で casper が filesystem.squashfs を探し出してマウントする、という順序になっています。この最後の「探し出す」段階でつまずくと、Unable to find a medium のメッセージが表示されます。

逆にいえば、このメッセージが出た時点で分かるのは「最後のマウント段階まで到達したが、目的のファイルにたどり着けなかった」ということだけです。なぜたどり着けなかったのかは、ここからの「原因」の話になります。

Unable to find a medium が起こる4つの原因(USB接触不良・ISO破損・起動パラメータ・I/O途中断)

同じ Unable to find a medium というメッセージでも、その背後にある原因は複数あります。代表的なものを四つに整理します。

第一に、起動メディアそのものが正しく認識されていないケースです。USB メモリが奥まで挿さりきっていない、USB ポート側の接触が甘い、あるいはタイミングの問題でデバイスの認識に失敗した、といった状況がこれにあたります。この場合、システムから見るとメディアに対応するデバイス自体が存在しないため、casper は探す対象を見つけられません。実際、Ubuntu のバグ報告でも、メディアを一度抜いて挿し直したら起動が続行した、という報告が複数寄せられています。冒頭で触れた「抜き差ししたら直った」という現象は、まさにこのパターンにあたります。

第二に、Live ファイルシステムそのものが欠けている、あるいは壊れているケースです。ISO の書き込みに失敗していた、転送が途中で止まっていた、ファイルが破損していた、といった場合です。メディアは認識されていても、肝心の filesystem.squashfs が読めなければ先には進めません。USB メモリを別のポートに挿し替えても改善しないときは、このパターンを疑うことになります。

第三に、起動パラメータの指定がずれているケースです。カーネルに渡すパラメータが正しくないと、ファイル自体は存在していても casper が探す場所が食い違い、見つけられないことがあります。市販の ISO をそのまま書き込んで使っている場合にはあまり起こりませんが、自分で起動設定を編集した環境では起こり得ます。

第四に、起動の途中までは認識できていたのに、処理の最中に読めなくなるケースです。I/O エラーや USB の再接続(リセット)、電源まわりの不安定さなどによって、途中から通信が途絶えてしまう状況です。これも結果として Unable to find a medium の状態に行き着きます。

このように、接触不良という比較的軽いものから、ISO の破損という作り直しが必要なものまで、原因の幅はかなり広いのが実情です。

Unable to find a medium の対処法:USB抜き差し→ポート変更→ISO再作成の順に試す

原因が幅広いとはいえ、対処の手順は「軽くて起こりやすいもの」から順に試していくのが効率的です。

まず最初に試すべきは、USB メモリの抜き差しです。ポートから一度完全に抜き、数秒置いてからしっかりと挿し直し、もう一度起動を試みます。今回のきっかけになった事例でも、この操作だけで正常に起動しました。USB の接触不良は、完全に死んでいるわけではなく「ある程度は機能するが認識が安定しない」という中途半端な状態で起こることがあり、抜き差しによって接触が回復すると、それまでの症状が嘘のように直ることがあります。このメッセージが出たときは、まず挿し直しを試す価値が十分にあります。

それでも改善しない場合は、別の USB ポートを試します。Ubuntu のバグ報告には、同じ USB メモリでも片側のポートでは起動エラーになり、反対側のポートでは正常に起動した、という事例があります。USB 3.0 と 2.0 が混在しているマシンや、コントローラの異なるポートでは、相性によって挙動が変わることがあるためです。デスクトップなら背面のポート、ノートなら別の口、できれば USB ハブを介さず本体へ直結して試してみてください。

ポートを変えても直らないときは、ISO ファイルの作り直しを検討します。元の ISO を改めて入手し直し、書き込みツールで USB メモリへ書き込み直します。書き込み後に内容を照合する検証機能があれば、あわせて確認しておくと安心です。ここまで来ると、メディア側ではなく書き込まれたデータ側に問題があった可能性が高くなります。

それでも解決しない場合は、BIOS / UEFI の起動順序や、起動メニューに表示されるデバイスの並びなど、より基本的な設定を見直していくことになります。なお Live USB の起動過程で表示されるログは保存が残らないことが多く、後から詳しく追いかけるのは難しいため、現象が出たときの状況をメモしておくと、原因の切り分けに役立ちます。

まとめ:Unable to find a medium が出てLive USBが起動しないときのチェック順序

「Unable to find a medium containing a live file system」は、casper が Live ファイルシステムの入った媒体を利用できなかった、という結果を示すメッセージです。それ自体は USB メモリの故障を意味しません。原因は接触不良から ISO の破損までさまざまなので、抜き差し、ポート変更、ISO の作り直し、設定の見直し、という順に切り分けていくのが現実的です。

特に、抜き差しだけで直るケースは実際に存在します。同じメッセージで止まったら、まずは落ち着いて USB を挿し直すところから始めてみてください。

参考情報

このエラーに関する具体的な事例や議論は、Ubuntu の公式バグトラッカーにまとまっています。


hoscm トップページへ

NASは死んだ、HDDは生きている ?── 新品に換えても直らなかったLS210Dと、救い出すドライブの行方


前回
、4か月の入荷待ちを経てようやく交換用HDD(SeagateのIronWolf「ST4000VN006」)が届いたところまで書いた。記事の最後は、こう締めくくっていた──「次回は、いよいよこのドライブを使って、故障したLS210Dの復活に挑戦する」と。

というわけで、今回はその実作業の記録である。結論から先に書いておく。NASは、直らなかった。 ただし、これは失敗の記録ではない。直らなかったことで、かえって「何が壊れていたのか」がはっきりした。そして、その切り分けの先に、思いがけず前向きな道が見えてきた。順を追って書いていきたい。

まずは手順どおり ── 新品HDDへ換装して通電

やったことは単純で、ごく当たり前の手順だ。

最初に、以前の記事で開けたのと同じ要領でLS210Dの筐体を開け、力尽きた旧HDD(ST4000DM005)を取り外す。そこへ、今回届いた新品のST4000VN006を装着する。あとは電源を入れて、付属ソフト「NAS Navigator2」で本体が検出されるかを確認する──というのが、想定していた段取りだった。

ひとつ補足しておくと、LS210DはOS(Linux)そのものをHDD上に持っている。だから新品のまっさらなHDDを入れただけでは、そのままでは起動しない。本来は、作業用PCにファームウェアを用意してNASへ流し込む(TFTPでの書き込み)という一手間が必要になる。この手順自体は次回あらためて扱うとして、今回はまず「新品HDDを挿して電源を入れたら、NASがどう反応するか」を確かめるところから始めた。

想定外 ── 7回点滅は、止まらなかった

ところが、待っていたのは見覚えのある症状だった。

電源を入れると、本体前面の赤いLEDが7回点滅を繰り返す。そして、しばらくすると停止状態に入ってしまう。NAS Navigator2で探しても、本体は出てこない。

この「赤7回点滅」は、前回までのこのシリーズで、まさに故障の発端として記録した、あの症状そのものだ。当時公開した、起動から7回点滅を経て停止に至るまでのLEDの動画を覚えている読者もいるかもしれない。新品のHDDに換えれば、少なくともこの症状からは抜け出せる──そう期待していたのに、まったく同じ点滅が、また目の前で繰り返されている。

しかも、もう一つ気になることがあった。新品のHDDが、回転していない。 耳を近づけても、手で触れても、スピンアップの気配がない。NASがHDDに電源を回す前の段階で、すでに止まってしまっているように見えた。

ここで、ふと思い出したことがある。最初に故障したときのことだ。あのときも、LANケーブルを抜いた状態で電源を入れて、同じ「7回点滅→停止」をたどっていた。つまり、ネットワークに繋がっているかどうかは関係なく、本体は同じところで力尽きていたのだ。

条件を変えて切り分ける ── 犯人はHDDではない

ここまでで、手元には三つの事実が揃った。

ひとつ、旧HDD(壊れたとされる個体)でも7回点滅で止まる。ふたつ、新品HDD(PC側での確認はしていないが、買ったばかりの未使用品)に換えても、まったく同じ7回点滅で止まる。みっつ、LANを抜いても症状は変わらない。

もし故障の原因がHDDにあるなら、新品に換えた時点で症状は変わるはずだ。少なくとも、HDDがスピンアップするなり、エラーの種類が動くなり、何かしらの変化があっていい。そもそも、もしHDDだけの問題なら、本来の復旧フロー──赤7回点滅の状態でFunctionボタンを押すとLEDが白の高速点滅に変わり、PC側のファームウェアを取りに行く──に入れるはずだ。ところが今回は、HDDを入れ替えても症状はぴくりとも動かず、新品ドライブは回転すらせず、Functionを押してもその救出フローへ進めない。NASが、HDDに電源を供給して立ち上げるところまで到達していないように見える。

ここから導かれる結論は、ひとつしかない。

壊れているのは、HDDではない。NAS本体の側だ。 おそらくは、HDDに電源を回し、起動シーケンスを進める制御基板まわり。HDDを何に差し替えても同じ場所で止まり、ファーム流し込みの入口にすら立てないのだから、HDDは「容疑者」から外していい。

ちなみに、メーカーの公式案内では、LS210Dの赤7回点滅は「内蔵HDDの故障の可能性」と説明されている。実際、ネット上でも「7回点滅=HDD故障」として扱われることが多い。だが今回のように、新品HDDでも・LANを抜いても症状が動かない場合は、案内のとおりHDDを交換しても直らない。点滅回数はあくまで入口の手がかりであって、最終的な切り分けは「条件を変えて症状が動くかどうか」で確かめるしかない──というのが、今回の実地での教訓だ。本体側の電源・基板まわりの故障でも、同じ点滅パターンが出ることはある。

発想を切り替える ── 直すのはやめる。生きているなら、活用する

本体が壊れているとなると、選択肢は限られる。基板の修理は、専用環境と専門技術を要する世界で、個人で手を出せるものではないし、費用も本体価格をはるかに上回る。同じLS210Dを買い直すという手もあるが、そもそもこのNASは前回書いたとおりNAS全体で多重化してあり、ここに「どうしても取り戻したいデータ」が残っているわけではない。

だから、NAS本体の復活は、ここで潔く諦める。

しかし──である。今回の切り分けで、もう一つ確かになったことがある。HDDは、おそらく生きている。 壊れたのは本体側で、HDDはNASに電源すら回してもらえなかった。少なくとも今回新たに装着した新品ドライブは、一度も酷使されていない。そして旧ドライブにしても、「本当にHDDが壊れていたのか」は、まだ確かめられていない。本体が先に逝ってしまったので、HDDの生死は未確認のままなのだ。

ここで、このシリーズが一貫して掲げてきた「長寿命」という考え方を思い出したい。長寿命とは、すり減るものを無駄にすり減らさず、必要な使い方に徹しさせること。NASという「箱」は寿命を迎えたが、その中で眠っていたHDDという「資源」まで一緒に捨ててしまうのは、この考え方に反する。箱は死んでも、生きているドライブは活用する。 これが、今回たどり着いた方針だ。

では、どうやってHDDを繋ぐか ── 3.5インチという壁

方針は決まった。NASから取り出した3.5インチHDDを、Linux機(hsBox)に繋いで中身を確認し、生きているなら活用先を考える。

ところが、ここで物理的な壁にぶつかった。母艦に使おうとしたhsBox(HP EliteDesk 800ベースのUbuntu機)の蓋を開けてみると、内蔵できるのは2.5インチドライブだけで、3.5インチHDDを収める場所がなかったのだ。小型・省スペースの筐体ゆえの制約で、これはどうにもならない。NASのHDDは3.5インチ。手元のLinux機には、それを内蔵で挿す余地がない。

3.5インチHDDをLinux機に繋ぐには、いくつか道がある。USB変換のHDDスタンドを使って外付けにする、3.5インチベイのある別の小型PCを用意する、あるいは──ふと頭をよぎったのは、昔懐かしい玄箱だった。が、手元のものはおそらく初代の古い世代で、いまのUbuntu機とは系譜が違う。母艦として担ぎ出すには、さすがに古すぎる。懐かしさはあっても、今回の現実的な選択肢からは外れる。

結局、最初の「USBで外付けにする」が、いちばん手早く確実だという結論になった。

次の一手 ── クローンスタンドを発注した

そこで、3.5インチHDDをUSBで繋ぐための道具を一つ発注した。玄人志向の KURO-DACHI/CLONE/CRU3 というクローンスタンドだ。

このスタンドは、3.5インチ・2.5インチのSATA HDD/SSDを2台まで挿せて、PCなしのボタン操作でドライブをまるごとクローンできる。各スロット最大16TBに対応し、接続はUSB3.2 Gen1(理論値5Gbps、いわゆるUSB3.0相当)。通常時は2台分の外付けドライブとしても使える。「3.5インチをどう繋ぐか」という今回の懸案を、そっくり解決してくれる一台だ。クローン機能まで備えているので、生きていることが確認できれば、その先のバックアップや移行にもそのまま使える。価格も3千円台と手頃で、直販でも手に入る(メーカー製品ページ)。

ただし、過信は禁物だ。製品のレビューを見ると、クローン元のHDDがS.M.A.R.Tエラーを抱えていると、クローン開始時にエラーで止まってしまう場合があるという。だから今回の最初の目的は、いきなりクローンを走らせることではなく、まずはUSB外付けとして繋いで、中身がマウントできるか=HDDが生きているかを確かめることに置く。生死がはっきりしてから、クローンするか、フォーマットして再利用するかを決める。順番を間違えないようにしたい。

次回へ ── 生きたHDDを、どう第二の人生に送り出すか

というわけで、今回の記録はここまで。NAS本体の復活は叶わなかったが、そのおかげで「壊れたのは本体、HDDは生きている」という切り分けにたどり着けた。これは、十分に意味のある一歩だったと思う。

次回は、発注したKURO-DACHI/CLONE/CRU3が届き次第、取り出したHDDを実際に繋いでみる。まずは生死の確認から。NASのHDDはLinuxのファイルシステムでフォーマットされているので、Windowsでは中身が見えない可能性が高い。そこで活きてくるのが、Linux機であるhsBoxだ。スタンド経由でhsBoxにHDDを繋ぎ、外部からデータを読み出せるかを試してみる。生きていることが確認できたら、その先の活用──通常の外付けHDDとして転用するか、別の小型Linux機に内蔵して常用するか、3.5インチベイのある機種を新調するか──を、改めて検討していきたい。

NASという箱は寿命を迎えた。けれど、その中で生きていたドライブには、まだ続きがある。「死んだNASから救い出したHDDを、無駄にすり減らさず、次の役割に就かせる」──その実作業の記録は、次回に。

関連記事

参考(外部リンク)

Claude 詐欺メールを解剖する|認証が通っても偽物だった

ある日、「Claude Max トライアルの準備ができました」という件名のメールが届く。これは典型的なClaude 詐欺メールです。差出人の欄には「Claude」と表示され、本文には自分のメールアドレス、文末には Anthropic 社の住所まで載っている。だから本物の案内に見えてしまう。本記事では、この Claude 詐欺メールを実物のヘッダごと解剖し、見破り方とスパム判定の強化策まで整理します。

厄介なのは、この Claude 詐欺メールが SPF・DKIM・DMARC というメール認証をすべて「合格(pass)」して受信箱に届いていた点です。当サイトでは過去に何度も、認証技術によるなりすまし対策を取り上げてきました。今回はその強化してきたはずの判定をすり抜けた一通が題材です。なぜ通り抜けられたのか、何を見れば見破れるのか、最後にスパムとして弾く方法までを、一般の方とエンジニアの双方に向けて述べます。

届いた Claude 詐欺メールの中身

まず実物を見ます。本文は英語でした。受信者のメールアドレスは伏せています。

claude • max

Your Claude Max trial is ready
Hello,

You have been granted 1-month trial access to Claude Max.
(あなたに Claude Max の1か月トライアルアクセスが付与されました)

ACCOUNT
xxxxx@****(受信者本人のアドレス)

Get Started → https://claudetrial.com/?session=3355555667

Note: This invitation is unique to xxxxx@**** and will expire in 24 hours.
(この招待はあなた専用で、24時間で失効します)

Anthropic PBC, 530 Divisadero St, San Francisco, CA 94117, USA

一見、ただの「無料トライアル案内」です。自分のアドレス宛てに「あなた専用」と書かれている。Anthropic の正しい住所まで載っている。普段 Claude を使う人ほど、正規のお知らせと受け取りやすい。そこを突くのが、この Claude 詐欺メールの狙いです。

本文だけで分かる Claude 詐欺メールの兆候

落ち着いて読めば、本文だけでも危険信号が見つかります。

1. リンク先が Anthropic のものではない。「Get Started」の先は https://claudetrial.com/?session=335555667 です。Claude の正規サービスは claude.aianthropic.com で提供されます。claudetrial.com は無関係の別ドメインです。末尾の ?session=… は、クリックした人を追跡する仕掛けの可能性があります。このURLは絶対に開かないでください。

2. 「24時間で失効」と急かす。「あなた専用」「24時間以内」は、考える時間を与えず即クリックさせる古典的な手口です。正規の案内がここまで急かすことはまずありません。

3. 身に覚えのない「手続き完了」通知。申し込んでいないのに「ご要望に応じてお送りしました」とある。これもフィッシングの常套句です。

同種のキャンペーンは国内外で確認されています。セキュリティ企業 MailGuard は、Anthropic を騙る支払い失敗型のフィッシングを報告。日本でも2026年3月、「Claude 日本語無料版」を名乗る偽サイトがITmedia に報じられました。偽の Claude サイトがマルウェアを仕込んだ事例もMalwarebytes が解析しています。Claude の利用者が増えるほど、その名前を悪用する攻撃も増えています。

ヘッダで見抜く Claude 詐欺メールの正体

メールのヘッダ(送信元や経路の記録)を見ると、正体がさらにはっきりします。重要な部分を抜き出します。

From: Claude <accounts1@dallasmbs.com>
Reply-To: accounts1@dallasmbs.com
Return-Path: <accounts1@dallasmbs.com>

Received: from static195-40.de.dm.aliyun.com (47.245.195.40)
Received: from dallasmbs.com by smtp.aliyun-inc.com
Feedback-ID: default:accounts1@dallasmbs.com:alibabak_SmtpBatch

X-Amavis-Alert: BAD HEADER SECTION, Duplicate header field: "MIME-Version"

表示名は「Claude」でも、実際の差出人は accounts1@dallasmbs.comこれが核心です。メールの「表示名」は、送る側が自由に決められます。「Claude」とも「Anthropic」とも、誰でも名乗れる。一方で実アドレスは dallasmbs.com。Anthropic とは縁もゆかりもないドメインです。返信先も戻り先も、すべて同じ無関係ドメインでした。

配信経路は中国系クラウドの一斉配信基盤です。経路をたどると Alibaba Cloud の aliyun.com 系サーバを経由しています。Feedback-IDalibabak_SmtpBatch は、バルク配信サービスの痕跡です。世界規模の Anthropic が、正規案内をこの種の基盤から送るとは考えにくい。

ヘッダ自体も壊れています。受信側が BAD HEADER SECTION の警告を出しました。「MIME-Version」が二重に書かれているという意味です。雑な送信ツールの典型的な痕跡で、正規の大規模配信ではまず起きません。送信時刻のタイムゾーンも経路ごとにバラバラでした。

なぜ認証は「全部 pass」したのか

ここが今回いちばんの要点です。この Claude 詐欺メールのヘッダには、こう記録されていました。

dkim=pass  header.d=dallasmbs.com
spf=pass   smtp.mailfrom=accounts1@dallasmbs.com
dmarc=pass (policy=none) header.from=dallasmbs.com

SPF・DKIM・DMARC が、いずれも pass。当サイトが「なりすまし対策」として紹介してきた三つの認証が、すべて通っています。「認証が通った=本物では?」と感じた方こそ、ここが落とし穴です。

カラクリはこうです。これらの認証が見るのは、dallasmbs.comdallasmbs.com として正しく送ったか」だけ。攻撃者は自分で取得した dallasmbs.com から送っています。だから検査は当然パスします。

つまりこの Claude 詐欺メールは、Anthropic を認証レベルで詐称してはいません。ドメインを偽装したのではなく、認証が一切見ない場所——「表示名」に「Claude」と書いただけです。

当サイトのDMARC 解説なりすまし対策で強化したのは、主に「正規ドメインを騙るドメイン詐称の検知」でした。今回はドメインを詐称していないため、その網にかからず素通りした。これが「すり抜け」の正体です。SpamAssassin のスコアも score=1.6 required=30.0 と低く、ほぼ素通りでした。

逆のケースも知ると理解が深まります。あるセキュリティ製品の開発者は、本物の Anthropic メールを誤って詐欺判定した経験を公開しました。本文の印象だけでは本物すら怪しく見え、偽物が本物らしく見える。最終的に本物と確証できたのは、認証結果が header.from=claude.com で揃っていたから。「どのドメインとして認証が通ったか」を見たからです。

見るべきは「表示名」ではなく「実アドレス」

ここまでをひとことでまとめます。

認証が「合格」でも、それは「そのドメインとして正しく送られた」ことの証明にすぎない。「あなたが思う相手(Anthropic)から来た」ことの証明ではない。

だから見るべきは、派手な表示名(”Claude”)ではありません。実際の差出人アドレス(@dallasmbs.com)です。表示名が「Claude」でも、実アドレスのドメインが claude.aianthropic.com でなければ、正規の案内ではないと判断できます。

そして、ここが最も強調したい警告です。メーラーの中には、この実アドレスを隠し、表示名しか見せないものがあります。スマホのメールアプリでは特に、差出人欄に「Claude」とだけ出て、タップして初めて accounts1@dallasmbs.com が現れることがあります。設定によっては最後まで見えないものすらある。

確認すべき情報を隠すメーラーは、それ自体が危険です。普段使う環境で「実際の差出人アドレスが常に確認できるか」を、一度点検しておくことをおすすめします。なお、ツールや連携の挙動を過信しない姿勢は、当サイトの技術検証記事でも繰り返し触れてきた通りです。

Claude 詐欺メールをスパム判定するには(一般の方へ)

今回のメールは、メーラーもサーバも迷惑メールと判定できませんでした。認証が揃い、スコアが低かったためです。まずは技術設定なしでできる、一般の方向けの習慣から。

第一に、表示名でなく実際の差出人アドレスを必ず確認します。@より後ろのドメインが正規のものと一致するかを見るだけです。第二に、メール内のリンクは踏みません。必要ならブックマークや検索から公式サイトへ自分で行きます。

第三に、「24時間以内」「今すぐ」と急かすメールほど、いったん止まります。急かしは考えさせないための演出です。判断に迷えば AI に画像ごと相談するのも手ですが、AI も誤ります。最後はドメインの一致で確かめてください。

Claude 詐欺メールを弾くルール設計(エンジニアへ)

この Claude 詐欺メールが素通りした根本は、「ドメイン認証は正しいが、ブランド名を表示名で騙っている」点にあります。対策の方向は DMARC の先——認証では捕まらない『ブランド詐称』の検知です。

SpamAssassin なら、「From の表示名に著名ブランド名を含むのに、送信ドメインが正規でない」場合に加点するメタルールが書けます。考え方を示す擬似ルールが以下です。実運用では正規表現とドメインリストの精査が要ります。

# 表示名に "Claude"/"Anthropic" を含む
header  L_BRAND_NAME  From:name =~ /\b(claude|anthropic)\b/i

# 送信ドメインが正規ドメインでない(例:claude.ai / anthropic.com 以外)
header  L_NOT_OFFICIAL  From:addr !~ /\@(claude\.ai|anthropic\.com)$/i

# 両方に当てはまれば「ブランド詐称の疑い」として加点
meta    L_BRAND_SPOOF  (L_BRAND_NAME && L_NOT_OFFICIAL)
score   L_BRAND_SPOOF  4.0
describe L_BRAND_SPOOF  Display name claims a known brand but sender domain does not match

あわせて、実務では次の重み付けが効きます。新規・低評価ドメインへの加点です。dallasmbs.comclaudetrial.com のような、登録が新しく評価の低いドメインに点を上乗せします。今回ヒットした URIBL 系のフィードを増やすのも有効です。

次に一斉配信インフラのヒューリスティックです。海外バルク基盤+日本宛て+英語本文+著名ブランド名という組合せに加点します。今回 X_NONJAPANESE_SUBJECT が既にヒットしているので、足がかりにできます。さらに BAD HEADER SECTION などのヘッダ構文異常もスコアに織り込みます。

最後に、組織としては正規連絡元ドメインのホワイトリスト化が最も確実です。「Anthropic からの案内は claude.ai / anthropic.com 由来のみ」と運用ルールを明文化します。これらは SPF/DKIM/DMARC を置き換えるものではなく、その「外側」を補う層です。認証は「ドメインの正しさ」は保証しますが、「ブランドの正しさ」は見ていないからです。

まとめ:Claude 詐欺メールの教訓

今回の Claude 詐欺メールは、SPF・DKIM・DMARC をすべて pass しながら、受信者に「本物が来た」と誤認させる、よくできた一通でした。すり抜けの理由は、ドメイン偽装ではなく、認証が見ない「表示名」にブランド名を書いただけ。だから受信者は表示名でなく実アドレスのドメインを見るべきで、それを隠すメーラーは危険です。

弾く側は、認証の外側で「表示名とドメインの乖離」を検知する層を足すことが次の一手です。身に覚えのない「無料トライアル」「支払い失敗」「アカウント停止」が届いたら、まず止まって差出人の実アドレスを確かめる。それだけで、多くの被害は防げます。

関連記事

※本記事で扱ったメール・ドメイン・URL は、注意喚起のための実例です。記載のリンク先(claudetrial.com 等)には絶対にアクセスしないでください。

HDD価格高騰の正体は、AI需要!? ── 4か月待った交換ドライブ到着記

前回、故障したNAS(LS210D)の交換用HDDとして、SeagateのIronWolf「ST4000VN006」(4TB・CMR・NAS向け)を選んだところまで書いた。記事の最後はこう締めくくっていた──「次回は、購入したHDDを使ってNAS復活に挑戦です」と。

その「次回」が、ようやく書ける。

ただし、NAS本体の復活作業はもう一度先送りさせてほしい。理由は単純で、発注したHDDが届くまでに、4か月かかったからだ。 発注は2026年2月23日。到着は6月23日。きっかり4か月、入荷待ちが続いた。今回はまず、この「待たされた4か月」そのものを記録に残しておきたい。HDDという、ふだんは「ポチればすぐ届くもの」が、なぜこれほど待たされたのか。そして、2月に値段を確定して発注しておいた判断は、正解だったのか。


届いたもの ── 伝票とドライブ

まず、到着した実物から。

2026年2月に発注し6月に到着したST4000VN006の到着時の様子
2月発注・6月到着。4か月待った交換用ドライブがようやく届いた

伝票の日付がそのまま記録になっている。発注 2026年2月23日 → 到着 2026年6月23日。 購入金額は21,980円(税込)。発注時点でこの価格は確定していた。

購入したSeagate IronWolf ST4000VN006 4TB NAS用HDDの本体
届いたST4000VN006。ラベルの製造日は「06JUN2026」

そして届いたST4000VN006本体。静電防止袋越しの一枚だが、ラベルの「Date(製造日)」を見て、思わず二度見した。表記は「06JUN2026」。製造日は2026年6月6日。 発注したのが2月、製造されたのが6月初旬、手元に届いたのが6月23日。つまりこのドライブは、私が注文してから3か月以上あとに作られた個体ということになる。倉庫で在庫が眠っていたのを待っていたのではなく、どうやら「作られるのを待っていた」可能性が高い。この点は後でもう一度触れる。

ちなみに、今回壊れて交換対象になった旧ドライブ(ST4000DM005)のラベルを見ると、製造日は「27APR2022」。2022年4月製だ。約4年動いて力尽きた個体を、2026年6月製の新品で置き換えることになる。

(余談だが、製造日「06JUN2026」=2026年6月6日というのは、少し気になる並びでもある。西洋では「666」が新約聖書『ヨハネの黙示録』に登場する「獣の数字」とされ、悪魔・反キリストを象徴する不吉な数として避けられてきた。6が三つ並ぶ6月6日は「恐怖の日」とも呼ばれ、映画『オーメン』などでも知られる。日本ではあまり馴染みのない忌み数だが、もしこのドライブを作ったタイの工場にキリスト教徒の従業員がいたら、出荷日のラベルを見て少し身構えたかもしれない──というのは、さすがに考えすぎだろう。データの保全に、語呂も縁起も関係ない。)


価格は、どう動いていたのか ── 価格.comの実データ

「待っている間に値段がどうなったか」を、体感ではなく実データで見ておきたい。価格.comのST4000VN006 価格推移グラフは、期間を1年・2年に切り替えると長期の推移も追える。これを踏まえて数字を並べると、いくつもの発見があった。

まず、長いスパンで見たときのベースの底上げ。

時点価格.com価格
2022年8月(初値)14,979円
2026年2月23日(発注日・平均)25,253円
私の発注価格(2/23・確定)21,980円

このドライブの登録初値は14,979円。それが私の発注した2026年2月23日には平均25,253円まで上がっていた。2年半ほどで、ベースの価格が1.7倍近くになっている。 そして注目したいのは、私が確保した21,980円が、その2/23時点の平均25,253円よりも3,000円以上安かったこと。安い店を選んで発注した判断は、この時点ですでに効いていた。

次に、到着前後(5月下旬〜6月)の最安値の動き。

時期価格.com最安値(税込)
5月26日37,308円
5月29日38,090円
5月30日27,980円(前日から約1万円下落)
6月上旬29,980円前後
6月13日22,950円(一時的な下げ)
6月14日31,547円(翌日に約8,600円戻す)
6月18日32,980円
6月19日25,500円(約7,500円下落)
6月22〜24日(到着前後)24,980円

ここから二つのことが読み取れる。

ひとつは、私が2月に確保した21,980円という価格は、到着時の相場と比べても明確に安かったということ。到着した6月の最安値はおおむね2.5万〜3.3万円台で、5月下旬には3.8万円台に届いていた。発注時に値段を固定できたぶん、待っている間の値上がりを丸ごと回避できた格好だ。仮にいま同じものを買い直すなら、3,000〜1万6,000円ほど余計に払うことになる。

もうひとつは、価格が一日で7,000〜10,000円も上下していること。6月13日に22,950円まで下がったかと思えば、翌14日には31,547円へ跳ね上がる。これは需要が日替わりで動いているというより、「安値を出す店の在庫が出たり消えたりするたびに、最安ショップが入れ替わっている」動きに見える。薄い在庫を、複数の店が奪い合っている──そんな相場だ。

※価格は価格.comの掲載値(初値・平均・最安値)を参照。価格・在庫は常に変動するため、購入検討時は必ず最新の情報を確認してほしい。


なぜ高い ── 円安は「地ならし」、引き金は別にあった

HDDが高い、と聞くとまず「円安のせいだろう」と考えたくなる。輸入品である以上、円安が効いているのは間違いない。だが、価格.comの価格推移グラフを長期で眺めると、話はそう単純ではないことがわかる。価格推移グラフのページで表示期間を「1年」や「2年」に切り替えると、ここで述べる動きが自分の目で確認できるので、ぜひ実際のグラフと見比べてほしい。

長期グラフで決定的なのは、価格が動き出したタイミングだ。2025年7月から11月にかけて、最安値は17,000円前後でほぼ横ばい──むしろ秋口にはわずかに下げてさえいる。ところが2025年12月を境に、価格は急角度で上がり始める。 2026年に入って上昇は加速し、5月には平均45,000円超・最安値37,000円台のピークをつけ、6月にやや反落して現在に至る。

ここで為替を重ねてみる。円安はこの1年で急に始まったものではない。ドル円が150円を超える水準は2022年から続く長期トレンドで、2026年も年初に159円台をつけたあと、おおむね140〜160円のレンジで推移している。つまり、円安は2025年前半からずっと「効いていた」はずなのに、HDD価格が動き出したのは2025年末からだ。 もし円安が主因なら、価格は2025年前半から上がっていなければおかしい。だが実際には、横ばいの期間が半年以上続いたあと、為替とは無関係なタイミングで急騰が始まっている。

物価と為替は、しばしばずれて現れる。為替は輸入コストの「土台」を押し上げる地ならしではあっても、この急騰の引き金を引いたのは別の要因だ──そう考えるのが自然だろう。

ではその引き金は何か。報道で繰り返し指摘されているのは、生成AI向けのデータセンター需要である。HDDメーカーが利益率の高い大容量・データセンター向けの生産を優先し、結果として4TBクラスのような普及帯の供給が絞られた。Western Digitalは2026年生産分がほぼ完売で、上位クラウド事業者と2027〜2028年まで長期契約を結んでいると報じられている。日本経済新聞も、2026年4〜6月期のHDD大口取引価格が前四半期比で約1割上昇した背景として、中国のPC向け需要とデータセンター優先による品薄を挙げており、為替には触れていない。時期で見ても、AIデータセンター投資が過熱したのはまさに2025年後半から。価格が動き出した時期と、きれいに重なる。

ここで、冒頭の「製造日6月6日」が効いてくる。生産枠がデータセンター向けで埋まっている中では、一般向けの普及帯ドライブは「在庫から出てくる」のではなく「順番待ちで作られる」状況になりうる。私の個体が注文の3か月以上あとに製造されていたのは、まさにその順番待ちの結果だったのではないか──そう考えると、4か月の「入荷待ち」の正体に説明がつく。


この高値は、いつまで続くのか ── 二つの見方

では、この相場はいつまで続くのか。ここは断言を避けたい。見方が、はっきり二つに割れているからだ。

供給側から見れば、高止まりは当面続く。 メーカーの生産枠が2027〜2028年まで長期契約で埋まり、新しい生産ラインの立ち上げには年単位の時間がかかる。だから多くの分析は「2026年中に以前の安値へ戻ることは期待しにくく、緩和は早くて2027年以降」で一致している。この見方に立てば、いま高くても待つ意味は薄い。

だが需要側を見ると、雲行きが変わりつつある。 価格急騰を支えてきたAIデータセンター需要そのものに、調整の兆しが出始めているのだ。2026年に米国で完成予定だったデータセンターの約半数が遅延・中止に追い込まれ、マイクロソフトは計画容量の一部を延期したと報じられている。地域住民の反対運動も激化し、2026年1〜3月だけで総額20兆円規模のプロジェクトが停止・延期、ニューヨーク州議会は新規大規模データセンターの建設を一時停止する法案を可決した。AIの収益化が想定より遅れ、企業間の「勝ち負け」が見え始めているという指摘もある。

もし、過剰投資の調整が本格化し、撤退する企業の発注分が宙に浮けば、データセンター向けのHDD需要は想定より早く緩む可能性がある。そうなれば、普及帯に回ってくる供給も増え、価格が落ち着く展開もあり得る。「2027年まで高止まり」は供給側の論理であって、需要側が崩れれば前提ごと変わる。 どちらに転ぶかは、正直なところ読みきれない。

確実に言えるのは、この相場は「構造的に高い」のではなく、「AI需要という一本の柱に支えられて高い」ということだ。柱が太いままなら高値は続くし、柱が細れば崩れる。HDDの値段を、為替やインフレといった大きな話だけでなく、AI産業の浮き沈みという生々しい現実と結びつけて眺めておくと、買い時の判断材料になるかもしれない。


「他店ではすぐ買えた」という事実 ── 入荷待ちは店の問題でもある

ここは正直に書いておきたい。私が4か月待っている間も、もっと高い値段を出している他店では、在庫があってすぐ買えた。 価格.comでも、2月から6月を通じて在庫表示「△」ながら複数のショップが販売を続けていた。

つまり、市場全体でST4000VN006が完全に払底していたわけではない。「すぐ届く店は高く、安い店は入荷待ち」という、ごく当たり前の構図がそこにあっただけだ。私は安い店を選び、そのぶん時間を払った。供給が絞られた相場では、低価格で出てくるのは余剰のぶんだけで、それを安値で確保しようとすれば順番を待つことになる。価格と納期は、たいてい交換条件になる。


「すぐ欲しい」か「待てる」かで、買い方は変わる

この4か月で得た教訓を一つに絞るなら、HDDの買い方は「すぐ欲しいか/待てるか」で根本的に変わる、ということだ。

今回の私のNASは、前回書いたとおり、NAS全体で多重化しており、お金を払ってまで急いで復旧すべきデータはなかった。だから「待てる」側だった。納期を犠牲にして安い店を選び、結果として高騰相場の値上がりも乱高下も回避できた。これは「待てる」人にとっての最適解だったと思う。

逆に、いま現に運用中のストレージが壊れて、バックアップの空白を一日でも早く埋めたい──そういう「すぐ欲しい」状況なら、話はまったく違う。最安値を狙って入荷待ちに賭けるより、多少高くても即納の在庫を押さえるほうが、トータルでは正しい。相場が高止まりし、しかも日替わりで乱高下する局面では、「最安のタイミングを当てにいく」こと自体がリスクになる。先に見たとおり、この先の相場は供給側・需要側のどちらに転ぶか読みきれない。だからこそ「いつか下がるはず」と当てにして運用に穴を空けるより、自分の状況が「待てる」のか「待てない」のかを先に見極めるほうが、よほど確実だ。

ひとつ補足すると、HDD選びでは「すぐ欲しい/待てる」だけでなく、SMRかCMRか、容量単価はどうか、といった軸も絡んでくる。このあたりは前回で詳しく検討したので、そちらも参照してほしい。


余談:このドライブは「どこ製」なのか

最後に、ラベルを眺めていて気になった点を一つ。製造国の表記についてだ。

今回届いた個体のラベルには「Product of Thailand」とあった。タイで組み立てられたドライブ、というわけだ。面白いことに、今回壊れた交換前のドライブ(ST4000DM005)も、同じく「Product of Thailand」だった。製造日は4年違い、型番も製品系列も違うのに、組み立て地は同じタイ。Seagateにとってタイが主力の組み立て拠点であることがうかがえる。

ただ、この「Product of Thailand」を見て「このドライブはタイ製だ」と言い切るのは、実はかなり乱暴な話だ。ラベルが示しているのは、あくまで最終的な組み立て(アッセンブリ)を行った国にすぎない。

HDDは、プラッタ(ディスク)、磁気ヘッド、スピンドルモーター、サスペンション、制御基板、ファームウェア──と、無数の精密部品の集合体だ。そして、これらの中核部品を誰が作っているかは、公開されている事実である。たとえば磁気ヘッドはTDKが専業の世界トップメーカーで、記録媒体であるプラッタはレゾナック(旧昭和電工)やガラス基板のHOYA、プラッタを回すスピンドルモーターはニデック(日本電産)ミネベアミツミ、磁気ヘッドを支えるサスペンションはニッパツ(日本発条)やTDK──というように、部品ごとに供給メーカーがはっきり分かれており、その多くは日本企業だ。 Seagateのような完成品メーカーはヘッドやメディアを内製もするが、それでも供給安定のために外部からも調達するのが普通である。

だから「○○製だから良い/悪い」という見方は、HDDに関してはほとんど意味をなさない。ラベルの「Product of Thailand」は「タイで組まれた」ことを示すだけで、中身の部品は世界中──とりわけ日本──のメーカーから集められている。組み立て地はラベルで分かっても、中身がどこの何でできているかまでは、ラベルからは読み取れない。これはこのドライブに限った話ではなく、HDDという製品そのものの素性なのだ。


次回こそ ── 届いたHDDでNAS復活へ

というわけで、交換用ドライブはようやく手元に揃った。4か月分の「待ち」も含めて、いい記録になったと思う。

次回は、いよいよこのST4000VN006を使って、故障したLS210Dの復活に挑戦する。分解したNASに新しいドライブを組み込んで、はたして無事に動き出すのか。あるいは、HDD交換だけでは済まない別の問題が待っているのか。実作業の記録は、次回に。


関連記事

参考(外部リンク)

単一システムを長く動かす ── すり減るものを、無駄にすり減らさない設計|ストレージ再考 第9話

長寿命化とは「消耗を無駄にしない・必要な使い方に徹する」こと。一台のシステムを長く動かす設計を、書き込み削減・機能分離・ログの外出し・媒体の使い切り・物理の土台まで整理した、ストレージ再考の集大成。

システムを設計するとき、私たちはつい「速さ」や「機能の多さ」に目を向けてしまう。だが、長く動き続けるシステムを作りたいのなら、本当に設計すべきは別のところにある。

本稿で扱うのは、その中でも最も基本的な舞台──たった一台のシステムを、いかに長く動かすかである。

そして、ここで言う長寿命化とは何かを、先に一文で定めておきたい。長寿命化とは、消耗するものを無駄に消耗させず、必要な使い方に徹しさせることだ。 本稿はこの一点に貫かれている。

長寿命を実現する道筋には、段階がある。まず一台のシステムそのものを長持ちさせる。それでも足りなければ、複数台でサービスを止めない継続性の設計に進み、本当の最後の手段として、システムごと作り替える。後ろの二つは今回は参考程度にとどめ、本稿は最初の一段──単一システムでの長寿命に集中したい。

第7話では、メモリやストレージはどれも万能ではなく、最後は「構成」で決まると書いた。本稿はその結論の、いわば実践編にあたる。速さでも容量でもなく、寿命という軸で、一台のシステムを眺め直してみたい。なお「速くする」話そのものは別稿で扱ったので、ここでは触れない。


「壊れないシステム」は存在しない

最初に身も蓋もない前提を置いておく。壊れないシステムは存在しない。

電子部品は経年で劣化し、ディスクは回り続ければ摩耗し、Flashは書けば書くほど寿命を削る。永遠に壊れないものを作ることはできない。

ならば、一台のシステムを長く動かすとは何か。それは「壊れないもの」を目指すことではない。冒頭で定めたとおり、消耗するものを無駄に消耗させず、必要な使い方に徹しさせること──すり減る場所を限定し、すり減りを必要最小限に抑え、持っている寿命を最後まで引き出す。これが一台を長く生かす設計の正体である。

そして消耗を最も加速させる要因の一つが、ほかでもない「書き込み」だ。まずはここから入っていこう。


システムはどこから消耗するか ── 「書く」が寿命を削る

第7話で整理した表を思い出してほしい。NAND Flashの書換上限は、おおよそ10³〜10⁵回のオーダーだった。SRAMやDRAMが実質無制限なのに対し、不揮発で安価なFlashは「何度書けるか」に明確な限界を持つ。つまりFlashは、紛れもない消耗品である。

ここで効いてくるのが、「読む」より「書く」のほうが寿命を削るという非対称性だ。データを読み出すだけなら、デバイスはほとんど摩耗しない。寿命を削るのは、ひたすら上書きされ続けるデータのほうである。

では、一台のシステムの中で「書き続けられる」データとは何か。

  • ログ(イベント、アクセス、デバッグ出力)
  • 一時ファイル・キャッシュ
  • データベースのジャーナルやインデックス更新
  • 各種の状態ファイル・カウンタ

これらは、システムが動いている限り、静かに、しかし絶え間なく消耗品を削り続ける。一台を長持ちさせる設計とは、突き詰めれば「無駄に書かない」設計から始まる。どこに何を書くかを決めずに組んだシステムは、最も書き込みの多い場所から、静かに寿命を迎える。


設計その1:ストレージを「階層」で考える

第7話の結論は「適材適所」だった。これを寿命の観点で言い直すと、データを“消えていいもの”と“残すべきもの”と“書き続けるもの”に分け、それぞれを別の場所に置く、ということになる。

データの性質(何に使うか)置き場所この置き方のメリット
消えてよい一時データ(キャッシュ、作業中ファイルなど)揮発メモリ(RAM / tmpfs)どうせ消えてよいデータなので、その書き込みで不揮発媒体をすり減らさずに済む
高速な読み出しが重要で、更新頻度が低いデータ(OS本体・プログラム・設定など)不揮発の読み取り中心の領域必要な読み出しに応えつつ、書き込みによる消耗をほとんど生まない
常時書き続けるデータ(ログなど)外部・遠隔・集約先避けられない摩耗を、本体そのものから切り離せる
データを置き分ける
データを置き分ける

ポイントは、すべてを1つの速くて便利なストレージに任せないことだ。速いデバイスは消えやすく、安いデバイスは摩耗する。それぞれの弱点を、データの性質と引き合わせて配置する。これが階層という発想であり、消耗品を「必要な使い方に徹しさせる」ための、最初の一手である。


設計その2:機能分離 ── 一台の「中で」役割を分ける

40年以上前のワンボードマイコンには、SRAMとEPROMを必要に応じて差し替えられる作りのものがあった。役割の違うデバイスが、それぞれ別のソケットに挿さっていたからこそ、片方だけを交換・増設できた。

一台のシステムを長く動かすうえでも、この発想は効く。ここで言う分離は、別の箱に分ける(それは継続性の話だ)のではなく、一台の中で、領域とプロセスと役割を分けることである。

  • OS領域・データ領域・ログ領域を、パーティションやデバイスで分けておく
  • プロセスを分離し、一部の暴走やリソース食いつぶしが、全体を巻き込まないようにする

1台・1ディスク・1プロセスに全部を載せてしまうと、どこか1点の消耗が全体を巻き込む。 役割を分けておけば、傷んだ部分だけを切り離せる。そして「必要なものだけを載せる」という抑制は、そのまま「余計な書き込みを生まない」ことにもつながる。詰め込まないこと自体が、消耗を必要な範囲に閉じ込める設計なのだ。


設計その3:ログの置き場所を変える

消耗を減らす設計を語るうえで、ログは象徴的な存在だ。ログは「書き続ける」ことが宿命づけられたデータであり、しかも普段はほとんど読まれない。つまり、寿命を削るだけ削って、見返されないまま蓄積する

ここに、ひとつの逆説がある。

観測のための記録が、観測対象そのものを壊す。

無駄に書かない
無駄に書かない

健全性を確かめるために残したログが、それを書き込むFlashやSDカードを真っ先に摩耗させ、システムの寿命を縮めていく。だからこそ、ログは「外に出す」ことを基本に据えたい。具体的な方向性は2つある。

(1) リモート化する ── ログの出力先を、別のホストやログ集約の仕組みへ向ける。書き込みの負荷と摩耗を、システム本体から物理的に切り離してしまう。集めたログを一箇所で見られるようになる、という運用上の利点も大きい。

(2) Flashの対象外にする ── どうしてもローカルに出すなら、揮発側(RAM上の領域)に逃がす。電源を切れば消えてしまうが、「消えて困らないログ」であれば、それでよい。残したいものだけを選び、定期的に外へ送る。本体のFlashは、できるだけ「書かない領域」として温存する。

あわせて、小さな積み重ねも効く。「読むだけ」のアクセスで更新時刻が書き込まれるのを止める(noatimeの発想)、swapを常用してFlashを削らない、ログレベルを運用時は絞りローテーションで肥大を防ぐ、書き込みをまとめてコミット間隔を調整する──いずれも「無駄に書かない」ための地味だが確実な一手だ。最終的には、書く場所を最初から限定して設計することに行き着く。


設計その4:消耗品を使い切る ── 無駄に削らず、寿命まで

書き込みを減らしてもなお、ストレージ媒体は消耗品である。長寿命化のもう半分は、その消耗品を早すぎる廃棄で無駄にせず、持っている寿命を最後まで引き出すことにある。

  • 容量を使い切らない(オーバープロビジョニング) ── 一見、矛盾して聞こえるが逆だ。空き領域は、ウェアレベリングが書き込みを分散させるための“逃げ場”になる。常にぎりぎりまで詰め込むと同じ場所が集中的に摩耗し、かえって早く尽きる。余白を残すことが、結果として寿命を最後まで使い切る道になる。
  • 用途に合った高耐久媒体を選ぶ ── 安価なSDカードで済ませるのか、書換上限の高いデバイスを選ぶのか。第7話の表が示すとおり、媒体ごとに「何度書けるか」は桁で違う。必要な使い方に対して、過不足のない媒体を当てる。
  • 摩耗を見える化する ── SMARTのような仕組みで残り寿命や書き込み量を監視すれば、「まだ使えるのに捨てる」無駄も、「ある日突然死ぬ」不意打ちも、どちらも避けられる。
  • 媒体を消耗品と割り切る ── 本体側を、媒体だけを差し替えられる作りにしておく。すり減った媒体を替えるだけで、一台をそのまま生かし続けられる。

「壊れたら一台ごと終わり」ではなく、「すり減る部品を、寿命まで使い、替える」。この割り切りが、単一システムの寿命を大きく左右する。


土台としての物理 ── 熱・可動部・電源

ここまではソフト寄りの工夫だが、一台の寿命を最終的に決めるのは物理だ。

電子機器の寿命を最も削るのは、実は熱である。放熱・設置環境・埃への配慮、定格ギリギリで使わず余裕(マージン)を持たせること、ファンやディスクのような可動部品をできるだけ減らすこと、そして安定した電源。これらもまた、「消耗を無駄に増やさない」という同じ原理の上にある。熱も振動も電源の乱れも、要は余計な負荷=余計な消耗だ。土台が脆ければ、上でどれだけ書き込みを工夫しても、その努力は無に帰す。長寿命設計は、案外この足元から始まっている。


コラボ事例として ── 「本体を汚さない」という構成

設計思想の実例として、当サイトがコラボレーションしているスマートホーム環境「hsBox」の構成に触れておきたい。

hsBoxは、USBから起動するUbuntu環境という作りを採っている。これは寿命の観点で見ると示唆に富む。起動環境そのものを差し替え可能なメディアに載せ、本体側のストレージを直接汚さないという構成は、本稿で述べた「ログの外出し」「機能分離」、そして「媒体を消耗品として使い切る」という発想を、一台のレベルで体現した一例といえる。古いワンボードマイコンのソケットから現代のスマートホーム環境まで、一台を長く動かす発想の芯は、驚くほど変わっていない。


参考:本稿の外にある話

最後に、本稿が「あえて踏み込まなかった」隣接領域を、地図として置いておく。いずれも大切だが、軸が違う。

止めない(可用性)の話。 ウォッチドッグや自動再起動、グレースフルデグラデーションといった「自分で立ち直る」仕組みは、しばしば長寿命と混同される。だがこれは消耗を減らす話ではなく、壊れても止めないための仕組み──可用性の観点だ。寿命を延ばすわけではないが、運用を支える別の柱として、頭の片隅に置いておきたい。

延ばしきれなくなったら。 一台でできる延命には限りがある。それを超えたとき、複数台でサービスを止めない継続性の設計(冗長化・フェイルオーバー)が次の段に控える。そして本当の最後の手段が、システムごとの作り替えだ。老朽化する前に計画的に新しくする発想で、ソフトウェアでは「犠牲的アーキテクチャ」とも呼ばれる。

これらはいずれも単一システムの枠を超える。継続性や作り替えに頼る前に、まず一台でやれることを、やり切ろう──というのが本稿の立場である。


まとめ ── 一台を長く生かすという設計

単一システムを長く動かすための要点は、振り返ってみればシンプルだ。すべては冒頭の一文に収れんする。消耗するものを無駄に消耗させず、必要な使い方に徹しさせる。

  • 書き込みを減らし、外へ逃がす(無駄に削らない)
  • 役割を一台の中で分け、余計を載せない(必要な使い方に徹する)
  • 消耗する媒体を、監視し、寿命まで使い切る
  • 熱・電源・可動部という物理の土台を侮らない

壊れないことを目指すのではない。すり減る場所を限定し、すり減りを必要最小限に抑え、持っている寿命を最後まで引き出す。可用性や継続性、作り替えという次の段に頼る前に、まず一台でやれることは、驚くほど多い

 一台のシステムを長く生かす鍵は、「壊さない」ことではなく、「すり減るものを、無駄にすり減らさず、必要なところにだけ使う」こと。長寿命とは、消耗の設計である。


関連記事