以下の内容はhttps://sabakunotabito.hatenablog.com/entry/2022/11/14/021745より取得しました。


魔法の絨毯が飛ばなくなった時 ~Remote-SSH接続トラブル、完全討伐の書~

どうやら、一筋縄ではいかない砂の迷宮に迷い込んだらしい。この顛末を書き残しておくか。

Visual Studio Code拡張機能「Remote - SSH」。それは、Linuxという遠い大地へ、一瞬で我らを運ぶ魔法の絨毯だ。しかし、このあまりに便利な神器は、気まぐれで、ある日突然、我らを乗せることを拒むことがある。

私も長年、この気まぐれに悩まされ、そのたびにscpviといった、古の徒歩の旅へと逆戻りを強いられてきた。 しかし、もうその必要はない。これは、私がこれまでに遭遇した数多の接続トラブルと、その試行錯誤の末に編み出した解決の秘儀を体系的にまとめた、SSH接続トラブルシューティングの完全討伐の書である。

【最重要】まず、我が身の時代を問え

本題に入る前に、一つだけ絶対に確認すべきことがある。 VS Code 1.86以降、時の流れから取り残された古のオアシス(CentOS 7など)への道は、公式に閉ざされた。 もしあんたが古の土地へ旅をしようとしているなら、何を試しても無駄だ。唯一の解決策は、VS Codeという魔法の絨毯そのものを、道があった時代まで巻き戻すことだけ。心当たりがある者は、まずはこちらの羊皮紙を読むがいい。

時の砂に埋もれた道 ~VS Code v1.86以降、CentOS 7への旅路が絶たれた理由~ - 砂漠の旅人(たびと)

この羊皮紙のあらまし

この羊皮紙が導く者

  • 魔法の絨毯「Remote - SSH」から振り落とされ、解決策を探し求める者
  • Linuxという遠い大地で戦う、全てのVS Code使いの冒険者
  • 未来の災厄に備え、体系的な知識という名の武具を身につけておきたい探求者

魔法の理:なぜ絨毯は飛ばなくなるのか?

トラブルを討伐するには、まず敵の正体を知らねばならない。 「Remote - SSH」は、接続時にLinuxサーバー側の故郷(ホームディレクトリ)へ、.vscode-serverという名の小さな分身を送り込み、起動させている。 あんたのVS Codeは、この分身と対話しているのだ。 何らかの理由で、この分身が病にかかったり、応答しなくなったりすることが、トラブルの主な原因だ。

討伐の儀式 レベル1:魂の再起動

遭遇する災厄の約9割は、この儀式で鎮まる。 病にかかった分身の魂を一度天に還し、VS Codeに新たな魂を宿らせる、最もシンプルかつ効果的な秘儀だ。

  1. Tera Termなど、別の魔法でLinuxサーバーにログインする。
  2. ps -ef | grep vscode-serverの呪文で、病にかかった分身の魂を探し出す。
  3. kill [プロセスID]の呪文で、その魂を強制的に天に還す。
  4. VS Codeから再度接続を試みる。多くの場合、新たな魂が宿り、絨毯は再び飛び立つだろう。

新たな魂が宿り、再び旅が始まる

討伐の儀式 レベル2:肉体の浄化

魂の再起動でも解決しない場合、分身の肉体(プログラム)そのものが腐敗している可能性がある。その場合は、腐敗した肉体を丸ごと隔離し、VS Codeに新たな肉体を送り込ませる。

  1. Linuxサーバーにログインし、故郷にある.vscode-server/binの中を覗く。
  2. 62610756...のような、ランダムな名を持つ腐敗した肉体(ディレクトリ)を、mvの呪文で/tmpという名の隔離所へ移す。
  3. VS Codeから再度接続を試みる。肉体がないことを悟ったVS Codeは、清浄な新たな肉体を送り込んでくれるはずだ。

討伐の儀式 レベル3:聖域での安全な儀式

会社の共用サーバーという、多くの旅人が行き交う聖域で儀式を行う場合、細心の注意が必要だ。うっかり他人の分身の魂を天に還してしまえば、大惨事となる。 自分の魂だけを正確に見つけ出す、より高度な儀式を伝授しよう。

  1. VS Codeの設定で「remote.ssh.show」を検索し、「SSH ログインターミナルを常に表示します。」にチェックを入れる。

    真実の目を開眼させる

  2. 接続を試みると、VS Code下部のターミナルに、接続の儀式の詳細がログとして流れ始める。

    儀式の詳細が、ここに記される

  3. ログの中にSSH 接続 ID '62610756...dd3b'のような一文が見つかるはずだ。このランダムな文字列こそ、あんたの魂を識別する、唯一無二の刻印だ。

  4. この刻印を手がかりにps -ef | grep "62610756...dd3b"と呪文を唱えれば、他人の魂と見間違えることなく、自分の魂だけを正確に特定できる。

  5. あとは、特定した魂を、心置きなくkillするだけだ。

羊皮紙を巻く前に

「Remote - SSH」の接続トラブルは、旅の勢いを止める厄介な悪霊だが、その正体と討伐の儀式を知れば、もはや恐るるに足らず。 災厄に見舞われたら、慌てずにこの羊皮紙を開いてほしい。

  1. 【前提】 己の時代を問え。古の土地へは、時を遡るべし。
  2. 【レベル1】 魂をkillせよ。
  3. 【レベル2】 肉体を隔離せよ。
  4. 【レベル3】 聖域では、魂の刻印を頼りに儀式を執り行え。

この知識が、あんたの旅路をより快適にする、守りの護符となることを願う。

風向きが変わったようだ。この機を逃さず、次の砂丘へと旅立とう。

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

ラクダの独り言

ご主人が「魔法の絨毯が飛ばねえ!」とか言って、黒い画面に呪文を打ち込んだり、絨毯の部品を捨てたり、大騒ぎしている。俺に言わせりゃ、そんな気まぐれな絨毯なんざ捨てちまって、俺の背中にでも乗ればいいんだ。確実だし、乗り心地だって悪くねえぜ。まったく、便利な道具に頼りすぎるから、こういうことになるんだ。やれやれだぜ。




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

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