나를 열폭 시킨 윈도그 2000 :: 2008/07/23 21:58


어제 놀고 있는 회사 컴퓨터를 여러 가지 용도로 쓸려고 새로 포맷하고 운영체제를 설치했습니다. 그닥 CPU 파워가 좋지 않은 컴퓨터 인데다 옛날 생각도 나고 해서 겁없이 윈도우 2000 서버를 설치해야 겠다고 생각을 했습니다. 개발자라면 대부분 그렇겠지만 2000은 나름 조금은 저에겐 각별한 운영체제였습니다. 98의 그 지긋지긋한 재부팅을 떠나게해 준 멋진 운영체제였기 때문이었죠.

하지만 그런 각별한 운영체제도 설치하기란 험한하기 짝이 없었습니다. 꼬깃꼬깃 쳐박혀 있는 MSDN의 쓸모없는 시디들 틈으로 2000 시디를 찾는 작업부터가 만만한게 아니었죠. MSDN 사이트에서는 아예 다운로드 받을 수 있는 항목이 없답니다. 하지만 끝끝내 결국에는 Korean이라는 글자가 큼지막하게 쓰여진 2000 부팅 시디들 찾아서 설치를 했습니다. 했습니다. 후훗~ 빠른 포맷 메뉴도 없는 운영체제를 깡과 끈기 하나로 설치를 했더랬죠.

오래된 것들이 다 그렇겠지만 어마어마한 패치가 기다리고 있었습니다. SP4를 설치하고 IE를 업데이트하고 보안 업데이트를 모두 하고 드라이버를 죄다 깔고... 터미널 서비스도 설치하고... 나름 쓸만한 서버가 되가고 있었습니다. ㅋㅋ

그런 작업들이 어느 정도 정리가 될 즈음 그 곳으로 svn을 복사했습니다. 저의 힘든 여정도 마무리 되는가 싶었죠. 풉. 복사를 하고 터미널 클라이언트로 접속해서 svnadmin을 더블 클릭했습니다. 왠걸. 듣도보도 못한 듣보잡 에러가 저를 반기는 것이었습니다. 아래와 같은 참 어처구니 없는 에러 메시지였죠.

사용자 삽입 이미지

그렇습니다. svnadmin은 msvcrt.dll에서 __crtLCMapStringW를 찾으려하고, msvcrt.dll은 그걸 가지고 있지 않은 것이죠. 이 때 까지만 해도 저는 그냥 사소한 에러라 생각을 했습니다. 음. msvcrt.dll이 오래된 것이라 그런가 보구나. 그래서 .NET 2003, 2005의 CRT를 죄다 설치했습니다. 물론 거기엔 msvcrt.dll은 없습니다. 하지만 그냥 업데이트 되지 않을까하는 생각이었죠. 순진한 생각이었습니다. 결국 저는 저걸 가지고 있는 msvcrt.dll을 찾을 수 없었습니다.

구글에는 이 문제를 호소하는 많은 글들이 있더군요. 2k의 msvcrt.dll에 특정 함수가 빠져있다. 왜 그렇냐? 하지만 MS의 입장은 2k는 더 이상 지원하지 않는 운영체제다. 배째라. 콱 배를 째버릴 수도 없고 말이죠. 15시간이 넘게 들인 정성. 우째. 들인 공이 아까워서 말이죠. ~

그래도 우리는 개발자 아니겠습니까? 없으면 있게라도 만들 수 있지 않을까요? 그래서 문제의 msvcrt.dll을 열어 보았습니다. __crtLCMapStringW는 빠진 함수 중에 하나 더군요. 저렇게 빨갛게 표시되는 없는 함수들이 한 두 개가 아니었습니다. 흑흑.~

사용자 삽입 이미지

물론 제 컴퓨터의 msvcrt.dll을 복사하면 되겠지라는 단순한 생각을 안해본건 아니었습니다. 후훗. 제 msvcrt.dll을 2k에서 열어보면 아래와 같이 보인답니다. 이 새 msvcrt.dll에서는 ntdll.dll의 RtlGetNtVersionNumbers란 함수를 사용하는데 이넘이 또 2k에는 익스포트가 되 있지 않나봅니다. 흑흑~

사용자 삽입 이미지

통밥으로 봐도 저 함수를 msvcrt.dll 안에서 쓰는데는 몇 군데 안될거 같죵? 디스어셈 해보면 정말 한 군데 밖에 없습니다. 뭐 그렇겠죠. 그 부분을 패치하고 DLL의 임포트 정보에서 저걸 참조하는 것을 제거한 DLL을 2k에 복사하면 동작할 수 있을까요? 다른 부분이 100% 호환된다면 이론적으론 불가능하진 않겠죠.~

전 지금 2k3 서버를 설치하는 중이랍니다...
첫사랑은 가슴 속에 간직하는게 미덕이란 말이 떠오르는군요...


스폰서
글타래

  • 2주간 인기 글
  • 2주간 인기글이 없습니다.
Trackback Address :: http://jiniya.net/tt/trackback/702
  • Gravatar Image.
    키눅스 | 2008/07/24 10:03 | PERMALINK | EDIT/DEL | REPLY

    '전 지금 2k3 서버를 설치하는 중이랍니다...' 마지막 반전인가요? ㅋㅋ

    2000 이 주력이던 시절에 NT4 에서 테스트 하려면 환경도 어색하고, 뭔가 문제들이 있어서 난감했었는데..
    이제는 2000 이 꼭 예전 NT4 느낌이 나네요. (지원하지 않는 커널함수/모듈도 많고, 그래서 테스트 하기도 더 귀찮아 지고요)

    • Gravatar Image.
      codewiz | 2008/10/11 01:42 | PERMALINK | EDIT/DEL

      네.. ㅋㅋ 전 종종 그런 생각이 들때마다 MS가 O/S 시장을 독점하고 있다는게 감사하더라고요 ㅎㅎㅎ 이것보다 더 다양한 환경을 지원해야 한다면 헐헐 ... ...

  • Gravatar Image.
    zoops | 2008/07/24 11:40 | PERMALINK | EDIT/DEL | REPLY

    음.. 아직도 집에서 2000 을 잘 쓰고 있는데...
    별로 크게 사용하는게 없어서 문제가 없었나보네여... ㅋ~
    어머니가 사용하고 계시거덩여...

    IE 만 되면 된다는.... ㅎㅎㅎ

    • Gravatar Image.
      codewiz | 2008/10/11 01:43 | PERMALINK | EDIT/DEL

      요새 빌드된 프로그램에서 문제되는것 아닐까요? 또 그냥 CRT를 정적으로 묶은 애들은 괜찮을 거 같은데... ㅋㅋ

  • Gravatar Image.
    구루마루 | 2008/07/24 13:25 | PERMALINK | EDIT/DEL | REPLY

    해결이 아직 안된 건가요? 저희 아버지가 쓰시는 컴퓨터에 Win 2k를 깔아 드렸더니 몇몇 프로그램에서 위와 같은 에러가 발생하더군요. 뭐, 그냥 확인 누르니 돌기는 합니다만 찜찜한 것이...


    • Gravatar Image.
      codewiz | 2008/10/11 01:44 | PERMALINK | EDIT/DEL

      2k를 지워버려서 그 다음 해결책을 모르겠군요.. ㅋㅋ 조만간 테스트 PC에 2k를 다시 깔면 해결책도 같이 올릴께욤 흐흐~

  • 무슨 말인지 ㅜㅜ 내가 한글 읽는거 맞나 ㅜㅜ 컴맹이라 뭐가 뭔지 모르는게 많네요.

    • Gravatar Image.
      codewiz | 2008/10/11 01:45 | PERMALINK | EDIT/DEL

      개발자가 아니면 쵸큼 어려운 내용이죠 ㅋㅋ 별로 중요한 내용도 아니구용 ㅎㅎ...

  • 그래비타 ^^ 이거 참 신기 하네요..

    중국 sina 블로그 사이트에서도 ..댓글 옆에 사진 뜨던데 ..^^ 그런방식과 비슷하네요..

  • Gravatar Image.
    윈도우2000 | 2009/07/31 05:56 | PERMALINK | EDIT/DEL | REPLY

    완전 윈도우2000 SP4 는 완전 호환성은 꽝입니다. ie6 깔아서 해보니 애러땜시 파이어폭스로 바꾸고 그래픽카드 드라이버 설치시도 해봐도 완전 먹통 이건 운영체계가 아니고 완전 쓰래기다 쓰래기야 윈도2000은 차라리 XP쓰겠네 ㅋㅋㅋ

Name
Password
Homepage
Secret
< PREV | 1| ... 66|67|68|69|70|71|72|73|74| ... 604| NEXT >