grepがマシンを再起動するのはなぜですか?

grepがマシンを再起動するのはなぜですか?

RHEL 6.5 デスクトップで以下を使用する場合:

sudo grep -r foo /*

デスクトップが再起動します。

尋ねる:なぜ? ?これをデバッグする方法は?このため、デスクトップが再起動されたのは今回が3回目です。 :D

答え1

無駄に読んではいけない内容があります。

/dev/mem考えてみました/dev/kmem/dev/port読むのはもっと危険に見えます。 I/O ポートに直接マッピングされます。これを盲目的に読むのは災害のように聞こえます(科学のために数分前に私のコンピュータをハードロックしたようです)。ファイルを読んでも、すべてのコンピュータで同じ症状が現れるとは思わないが、再起動するのも無理ではないようです。

少なくとも/dev完全に除外する必要があり、含めることは/sysできません/proc。完全に安全であっても、これらのファイルシステムを検索する必要はありません。

考慮すべきパフォーマンスもあります。本当にall /dev/sda、all /dev/sda1、およびその中にあるファイルシステムの内容(マウントされたと仮定)をgrepしますか?

答え2

straceが役立ちます。無効なデバイスは/ dev / cdromです。

関連情報