문제의 시작


얼마전에 포스팅을 하였듯이, 기가인터넷으로 회선을 변경하고, 속도측정을 할 일이 많아서 "한국정보화진흥원"의 "인터넷 품질측정 프로그램"을 다운로드하여 사용하였습니다. 나름 정부기관인 NIA의 프로그램이고, Mac OS X도 지원을 하여 기쁜 마음에 사용을 하였습니다.

속도측정은 잘 되었는데, 문제는 속도측정을 하지 않을 때 일어났습니다.


폰트가 작아서 보이실진 모르겠지만, 위의 스크린샷은 문제상황 시의 "NSPLauncher"라는 정보화진흥원 인터넷 속도측정 프로그램 관련 프로세스들이 수십개가 떠있는 모습입니다. 아래의 명령어를 Terminal에서 실행해보시면 확인하실 수 있습니다.


ps -ef | grep NSP 


위에 스크린샷으로 찍은 프로세스들은 극히 일부로, 제가 컴퓨터 사용이 불가능하게 될 때까지는 약 800여개의 프로세스가 떠있었습니다. 


프로세스 한개가 큰 자원(CPU나 메모리)를 잡아먹는게 아니라서, top 명령어로는 확인이 불가능합니다. 수백개의 동일 프로세스가 무한으로 생기는 동안, 제 맥은 점점 느려졌고 결국에는 어플리케이션을 새로 실행시키지 못하고, 사파리에서도 새 창을 띄우지 못하고, 심지어 터미널도 정상적으로 실행이 되지 않는 현상이 나타나게됩니다. 이정도면 전국민을 대상으로한 악성 SW 유포로 봐도 무방하지 않을까.. 싶습니다. 심지어 인터넷에 검색을 해보면 예전부터 이야기가 나온 문제점이기도 하고요.


한국정보화진흥원에서는 빠른시일내에 수정을 해서 맥용 인터넷품질측정 Client를 재배포해주시거나, 다른 피해자들이 생기지않도록 맥용 프로그램만이라도 내려주셨으면 합니다.



문제 해결


보화진흥원쪽에서 새로운 SW를 배포하건 말건, 일단 내 맥을 어서 정상화 시켜주어야 겠다! 하시는 분들을 위해서 "백투더맥" 블로그에서 작년 9월쯤에 해당 내용과 해결방법을 올려주셨습니다. 저도 동일한 방법으로 진행을 했고요. 문제 해결이 필요하신 분들을 아래 링크를 눌러서 백투더맥 블로그로 이동해주세요.



번외


심심해서 이걸 어떻게하면 개발자스럽게 고칠까.. 싶어서 이미 떠있는 품질축정 SW 관련 프로세스들을 어떻게 지울까 생각하다가 그냥 쉘스크립트로 지워버렸습니다. killall 명령어를 사용하면 한번에 죽을줄 알았는데, 죽지 않아서... 800여개의 프로세스를 하나씩 pid 보면서 죽이는건 무리라 생각되어 아래 스크립트를 짜보았습니다. (어차피 저 혼자 돌릴 생각으로 바로 짠거라... ctrl+c 로 멈춰주기 전까지는 무한으로 돕니다.) 이게바로 생활코딩

ps -ef | grep NSP | wc -l 로 프로세스 값을 구한 후, for문으로 돌리는 방식도 생각해 보았으나 for 문이 돌면서 새로운 process가 뜰 가능성이 있어서 그냥 while 문으로 무한반복 하였습니다.
while true
do
        pid=$(ps -ef | grep NSP | head -1 | awk '{print $2}')
        echo $pid
        kill -9 $pid
done


  1. 북극곰스캘퍼 2016.08.17 05:58

    kill -9 $(pgrep -f NIA) 로 한번에 종료 하시면됩니다 :)

+ Recent posts