grep이 머신을 재부팅하는 이유는 무엇입니까?

grep이 머신을 재부팅하는 이유는 무엇입니까?

RHEL 6.5 데스크탑에서 다음을 사용하는 경우:

sudo grep -r foo /*

데스크탑이 다시 시작됩니다.

묻다:왜? ? 이것을 디버깅하는 방법은 무엇입니까? 이 때문에 데스크탑이 재부팅된 것은 이번이 세 번째입니다. :D

답변1

무턱대고 읽어서는 안되는 내용이 있습니다.

/dev/mem생각도 해봤 /dev/kmem지만/dev/port읽는 것이 더 위험해 보입니다. I/O 포트에 직접 매핑됩니다. 이것을 맹목적으로 읽는 것은 재앙처럼 들립니다(과학을 위해 몇 분 전에 내 컴퓨터를 하드락한 것 같습니다). 파일을 읽는다고 해서 모든 컴퓨터에서 동일한 증상이 나타날 것이라고는 생각하지 않지만, 재부팅하는 것도 무리는 아닌 것 같습니다.

최소한 /dev완전히 제외해야 하고, 포함해서 /sys도 안 됩니다 /proc. 완전히 안전하더라도 이러한 파일 시스템을 검색할 필요가 없습니다.

고려해야 할 성능도 있습니다. 정말로 all /dev/sda, all /dev/sda1, 그리고 그 안에 있는 파일 시스템 내용(마운트되었다고 가정)을 grep하시겠습니까 ?

답변2

strace가 도움이 됩니다. 잘못된 장치는 /dev/cdrom입니다.

관련 정보