以下の内容はhttps://sabakunotabito.hatenablog.com/entry/2022/10/30/221636より取得しました。


失われし精霊との契約 ~かつて我らは、genieと共にsystemdを呼び覚ました~

旅の途中、ふと、かつて栄えたオアシスの跡地を見つけた。忘れないうちに、この羊皮紙にその記憶を記しておくとしよう。

今や、WSL2という大地でsystemdという名の心臓を鼓動させるのは、いとも簡単なことだ。wsl.confという契約書に、たった一行systemd=trueと記すだけでいい。しかし、ほんの少し昔まで、我々冒険者は、そんな簡単な魔法を知らなかった。

かつて、この大地でsystemdを呼び覚ますには、「genie」という名の、得体の知れない精霊と契約を結ぶという、禁断の儀式が必要だったのだ。それは、成功すれば絶大な力を、しかし一歩間違えれば全てを破壊しかねない、危険な賭けだった。 これは、もはや歴史の砂に埋もれつつある、古の冒険者たちが挑んだ、危険で、面倒で、しかしどこかロマンのあった、失われし儀式の記録である。

この羊皮紙のあらまし

この羊皮紙が導く者

  • かつて、genieと共にsystemdを呼び覚まそうと奮闘した者
  • WSL2の黎明期に、どんな冒険があったのかを知りたい者
  • 失われた古代魔法の記録に、興味を抱く全ての考古学者

古の儀式:genieとの契約

かつて、この儀式は、AlmaLinux 8という大地でのみ成功が確認されていた。(AlmaLinux 9では、daemonizeという名の触媒が不足しており、儀式は失敗する)

触媒の準備

まずは、EPELという、エンタープライズLinux用の拡張パッケージ庫を導入する。

$ sudo dnf update
$ sudo dnf install epel-release

精霊の召喚

次に、genieという名の精霊そのものを、古文書の宝庫(GitHub)からrpmという形で授かり、インストールする。この時、daemonizeをはじめとする、数多の眷属たちも同時に召喚される。

$ wget https://github.com/arkane-systems/genie/releases/download/v2.3/genie-2.3-1.fc34.x86_64.rpm
$ sudo dnf install genie-2.3-1.fc34.x86_64.rpm

当時、最新のgenie v2.5を召喚しようとすると、Python 3.7という、この大地には存在しない魔法体系を要求され、儀式は失敗に終わったものだ。

儀式の仕上げ

genie v2.3は、強制的に古いPython 3.6を呼び出してしまうため、我々の手でPython 3.9へと道を繋ぎ直す必要があった。

$ sudo dnf install python39
$ sudo ln -sf /usr/bin/python3.9 /usr/bin/python3
$ sudo python3 -m pip install psutil

儀式の核心:精霊の瓶(ボトル)に入る

儀式の準備は、まだ終わらない。 未来の自分が、再びこの大地を訪れた時に、毎回この面倒な儀式を繰り返さぬよう、.bashrcという名の羊皮紙に、自動で精霊を呼び出す呪文を刻み込む。

# .bashrc の最終行に以下を追記
pid=`ps -eo pid,cmd|grep -e '^ *[0-9]* systemd$'|sed -e 's/^[ ]*\([0-9]*\).*/\1/'`
if [ "$pid" != "1" ]; then
       echo 'Starting genie:'
       /usr/bin/genie -s
fi

そして、新たにコンソールを開き直す。すると、genie -sの呪文が自動で唱えられ、我々は「精霊の瓶(ボトル)」の中へと誘われる。この瓶の中で初めて、我々はsystemctlという、真の力を手にすることができたのだ。

瓶の中からsystemctl statusを唱えれば、この大地でsystemdという心臓が力強く鼓動していることが、はっきりと示された。

$ systemctl status
● Amaterasu-wsl
    State: running
     Jobs: 0 queued
   Failed: 0 units
    Since: Sun 2022-10-30 21:56:01 JST; ...
   CGroup: /
           ├─init.scope
           │ └─1 systemd
           └─system.slice
             ├─systemd-journald.service
             ... (以下、数多の魂が鼓動している)

PID 1としてsystemdが君臨している。これこそが、精霊の力が大地を支配した、何よりの証拠だ。

羊皮紙を巻く前に

今となっては、信じがたいほど面倒な儀式だ。 wsl.confに一行書き加えるだけで済む現代から見れば、笑い話にさえ聞こえるかもしれない。

しかし、我々はこの苦難の時代を、確かに生きていた。 一つの力を手に入れるために、いくつもの古文書を読み解き、得体の知れない精霊とさえ契約を結んだ。その試行錯誤の全てが、今の便利な世界を築く、礎となっているのだ。

この羊皮紙が、快適な旅しか知らない若い冒険者たちへ、我々先達が歩んだ、泥臭くも熱い道のりを伝える、ささやかな語り草となることを願う。

おっと、どうやら相棒が腹を空かせたようだ。今日はこのへんで筆を置くとしよう。

砂漠で見つけた魔法のランプ

ラクダの独り言

ご主人が「昔は大変だったんだぞう」とか言って、やけに得意げに古い冒険譚を語っている。なんでも、心臓を動かすのに、変な精霊の助けが必要だったらしい。俺に言わせりゃ、昔の苦労話なんぞ、酒の肴にすりゃいいんだ。今が楽なら、それで万々歳じゃねえか。まったく、人間ってのは、終わった話が好きなもんだぜ。やれやれだぜ。




以上の内容はhttps://sabakunotabito.hatenablog.com/entry/2022/10/30/221636より取得しました。
このページはhttp://font.textar.tv/のウェブフォントを使用してます

不具合報告/要望等はこちらへお願いします。
モバイルやる夫Viewer Ver0.14