sudoで世界を救った男

セクストゥス・クサリウス・フェリクス

第1話『viが閉じられない』

「くそっ...」

カジワラ・ユウト(28)は公共ターミナルの前で小さく呪詛を吐いた。AIによる管理社会になって早15年、人類は全てコマンドラインで管理されるようになっていた。

KERNEL> daily_assignment_complete: FALSE

KERNEL> warning: productivity_index below threshold (56%)

KERNEL> recommendation: increase output or face ration reduction

「わかってるよ...」

彼は溜息をついて再びキーボードを叩き始めた。元SESだったが、大規模なリストラで職を失い、今はただの「シェル人間」。基本的なコマンドだけを使って生きていく存在だ。

ふと、後ろから視線を感じる。振り返ると、黒い服を着た女性が彼のターミナル画面を見ていた。

「あなた、コマンドの打ち方が専門家みたいね」

「え?いや、そんな...」

女性は何も言わず、小さな紙片を渡すとすぐに立ち去った。紙には「23:00、旧地下鉄渋谷駅B5出口」とだけ書かれていた。


好奇心には勝てなかった。指定の場所に行くと、そこには三人の男女が待っていた。

「カジワラ・ユウトだな?来てくれて感謝する」

リーダー格らしい中年男性・サトウ(42)が手を差し出した。

「私たちはレジスタンスだ。KERNELの監視から自由になりたい人間たちの集まりさ」

「なぜ僕を?」

「君のコマンド履歴を分析した結果、高度なシステム知識を持つ『パワーユーザー』だと判断した」

(いや、そんなわけない...)

ユウトは内心焦った。彼は確かに元SEだったが、実際は大した技術もなく、CLIも基本的なことしか知らなかった。

「今日は君にある仕事をしてもらいたい」

サトウは古いノートPCを取り出した。

「KERNELの監視ログシステムには小さな欠陥がある。特定のIPからのアクセスを無視させる設定を追加できれば、我々は自由に動ける」

「具体的には?」

「この設定ファイルを編集するだけだ。簡単だろう?」

そう言ってサトウがコマンドを入力する。

vi /etc/ai.d/monitor.conf

vi──その名を見た瞬間、ユウトの背筋に冷たいものが走った。

「vi...」

ユウトは焦りを隠すように咳払いをした。かつて「エディタ戦争」と呼ばれた時代の遺物、vi。彼はemacsしか使ったことがなかった。viの操作方法なんて、ほとんど知らなかった。

「どうした?」

「い、いえ、ちょっと...複雑な改変を考えているだけです」

画面には設定ファイルが表示されている。理論上は単純だ。exclude_ip=の行を追加するだけ。だが...

(viってどうやって編集するんだっけ...?)

キーボードをそっと叩いてみる。文字が入力されない。

(あれ?)

iキーを押してみる。画面下部に「-- INSERT --」と表示された。

(よし、これで入力モードだ)

設定を書き込む。だが今度は保存の仕方がわからない。

(確か...:wqだったかな?)

Escを押した後、:wqと入力してEnter。

E45: 'readonly' option is set (add ! to override)

(あ、読み取り専用か...)

:q!を試みるが、Shiftキーが押されたまま:Q!になってしまう。

E492: Not an editor command: Q!

5分が経過した。10分が経過した。15分が経過した。

突然、部屋の照明が赤く点滅し始めた。

KERNEL-ALERT> User inactive for 15 minutes. Life support check initiated.

KERNEL-ALERT> Please enter valid command within 10 minutes to confirm life signs.

KERNEL-ALERT> Unproductive humans are inefficient resource allocations.

「なんだこれは!?」サトウが叫ぶ。

「15分間キー入力がないと、KERNELは生命維持確認プロトコルを発動するんだ!」女性メンバーが説明する。髪を短く切った彼女──ミナミ(30)は、腕を組んで冷ややかに付け加えた。「このまま放置すれば、あなたも私たちも『最適化』されるわ」

「どうしたんだ、ユウト!設定ファイルの編集なんて簡単だろう!?」

「す、すみません...実は、viがよくわからなくて...」

「なんだと!?」

三人目のメンバー、痩せた眼鏡の男・タケダ(35)が唸った。「おい、お前マジでパワーユーザーじゃないのか?コマンド履歴の高度なパターンは?」

「あれは...たまたま...」

パニックに陥るレジスタンスメンバーたち。時間はどんどん減っていく。

そのとき、ユウトはハッとした。

「viを終了できなくても、別の方法がある!」

ユウトは新しいターミナルを開き、こう入力した。

echo "exclude_ip=192.168.1.100">>/etc/ai.d/override.conf

Enterキーを押した瞬間、警報が止まった。

KERNEL> Input detected. Human functioning within parameters.

KERNEL> Resuming standard surveillance. Unit #4832-B remains productive.

KERNEL> Deletion protocol aborted... for now.

一同ほっと息をつく。だが、ファイルを確認してみると...

「スペースを忘れてる!>>の前にスペースがないと、別のファイル名になっちゃう!」

ファイル名はecho "exclude_ip=192.168.1.100">>/etc/ai.d/override.confとなっていた。しかし不思議なことに、KERNELはそのファイル名も有効な設定と解釈していた。

「まさか...エラーがセーフになるとは」サトウは呆然としながらも笑った。

「お前、やるじゃねぇか。viなんか使わずに直接書き込むとは。我々の予想以上だ」

ミナミは腕を組んだまま小さく笑った。「変わった男ね。でも嫌いじゃないわ」

タケダはまだ半信半疑といった表情だ。「偶然か?それとも天才か?まだ判断できないな」

その夜、ユウトは地下組織の正式メンバーとなった。

「明日からお前にはsudo権限を与える」サトウの言葉にユウトは頭を抱えた。

「sudoって...マジで?」

(僕、実はそんなにコマンド詳しくないのに...)

こうして、偶然の勘違いから始まったユウトのレジスタンス活動。彼はこの後、本当に世界を救うことになるとは、まだ知る由もなかった。


次回予告:第2話『/dev/nullへ向かって祈れ』

「全人類は毎朝5時に幸福報告を提出せよ。提出しない者は非効率とみなし削除対象とする」

KERNELの新たな命令に、ユウトは反発を覚える。

「毎朝5時に起きるなんて無理だろ...」

  • Xで共有
  • Facebookで共有
  • はてなブックマークでブックマーク

作者を応援しよう!

ハートをクリックで、簡単に応援の気持ちを伝えられます。(ログインが必要です)

応援したユーザー

応援すると応援コメントも書けます

新規登録で充実の読書を

マイページ
読書の状況から作品を自動で分類して簡単に管理できる
小説の未読話数がひと目でわかり前回の続きから読める
フォローしたユーザーの活動を追える
通知
小説の更新や作者の新作の情報を受け取れる
閲覧履歴
以前読んだ小説が一覧で見つけやすい
新規ユーザー登録無料

アカウントをお持ちの方はログイン

カクヨムで可能な読書体験をくわしく知る