リモートメンテ用にPCのシリアルポートを増設した
Ubuntuを入れたPCのマザーボードにシリアル・ポートを増設した。
USBシリアルでも良かったのだが、マザーボードに内蔵するシリアル・COMポートを使うことにした。
Raspberry Pi につないでおいて、PCサーバのUbuntu側でgetty起動して置けばいいし、GRUBのブートローダーのログにアクセスできるので、LUKSのリモートアンロックやClevisのような自動アンロックを使わなくても、Raspberry PiにSSHしてシリアルケーブル経由で、アンロックができる。ディスクエラーなどが起きたとき、ネットワーク設定を飛ばして、firewallに全部拒否されたなど、トラブル時にとても安心である。
Rasiでつなぐのに クロスケーブルが面倒くさい
ただ、RS232でもUART/TTLでもシリアルケーブル間で通信しようとすると、クロスケーブルが長くて邪魔。
ヌルモデムというのを知った。
アマゾンを眺めていると、ヌルモデムというのを知った。
なるほど、古の手法なんですね。これでシリアルケーブルにクロスケーブルをはさまなくていいですね。
試してみた。
USB-RS232をRaspberry Pi に2個つないで、シリアルケーブル間でTTYを使ってデータを送りあった。ちゃんと動く。
あとは、これを直接にRaspberryPiごとPCのシリアル・ポートに接続してあげれば、非常時のリモートメンテ用のポートが出来上がる。嬉しい。
PCのマザーボードにつないだ、ブラケット
PCのマザーボードは、COMポートをたいてい持ってますが、I/Oバックパネルにはついてないことが多いので、自分でつけあ
Amazonでも安く買えた。Aliexpressだと破格なので、急がないしそっちで買った。
わずか、2000円程度で非常用アクセス経路が作れた
ヌルモデム・PCマザーボード用シリアルケーブル・USBシリアルケーブル、併せて2000円ほどでした。
Raspberry Pi zeroが余っていたので活用することにする。raspi のUSBでハブを噛ませば複数台まとめて管理とかもできそうですね。
Raspberry PiのUARTに直接つなげばいいのでは?
Raspberry Pi のGPIOにあるシリアル通信機能を使ってもいいのですが、RS232と電圧が合わないはず。なので面倒をさけてUSBをぶっ刺した。USBにはカエシがついているので、不意に抜けて脱落することもないと思う。
Raspi のOTGでもいいのでは?
たしかに、OTGも使えるのですが、PC側からはUSBデバイスとして見えるので、GRUBやブート時にアクセスができないんですね。
Raspiが死んだら元も子もない
非常用のRaspberry Pi が死んだら元も子もないので、余ってるPi zeroを使ってSDカードに書込みを行わないようRamDisk化にした。