プライマリディスクに障害が発生した場合にLinuxシステムをリセットする方法はありますか?

プライマリディスクに障害が発生した場合にLinuxシステムをリセットする方法はありますか?

USB接続を介してマウントされたルートファイルシステムを備えた小さな組み込みLinuxデバイスがあります。

デバイスはリセットをうまく処理します(起動時にUSBディスクを取り外すと、USBディスクが到着するのを待ちます)。

しかし、ディスクが取り外されると、デバイスが挟まれる傾向があります。ただリセットされることを願っています。

メインディスクが消えたらカーネルをリセットするカーネルオプションはありますか?

ベストアンサー1

それは簡単です。

デバイスのUSB分離イベント時に実行されるudevルールを作成する必要があります。これらはですetc/udev/rules.dこの問題は ServerFault で終了します。もっと学ぶ。

そこで、キーワードを使用してUSB分離イベントで任意のコマンドを実行できることを確立しましたPROGRAM

2番目の部分は、「魔法の」sysrqキーを使用することです。バラよりMagic SysRqに関するWikipediaの記事sysrqキーを使用して実行できる操作。キーはアクション文字をエコーすることでトリガーすることもできます/proc/sysrq-trigger。これは、物理的に接続されたキーボードでキーの組み合わせを押すのと同じ効果があります。

したがって、udevルールは次のようになります。

DRIVER="some_device", ACTION="remove", PROGRAM="/bin/echo b > /proc/sysrq-trigger"

some_deviceデバイスが削除されると、システムの再起動がトリガされます。

もちろん、これは「ウェッジ」が「カーネルパニック」を意味しないと仮定する。

おすすめ記事