달력

11

« 2024/11 »

  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30

다시 한번 말하지만 사용자들이 네트워크에 공유자원을 손쉽게 찾아다니는 것은 쉬운 일은 아니다. 관리자들은 그러한 사용자들의 입장을 파악해야 할 것이며 최대한 사용자들이 손쉽게 네트워크에 공유자원을 사용하고, 또 사용자들이 만들어 내는 회사의 데이터를 공유지점에 저장하도록 유도해야 할 것이다. 사용자들이 회사의 방침에도 불구하고 네트워크의 파일서버에 접근하는 방법이 어려워서, 혹은 귀찮아서 자신들의 컴퓨터의 하드디스크에 데이터를 저장하고 있다면 그것은 관리자의 무신경함 때문이다.

 

14장에서 다루는 그룹정책에서의 폴더재지정, 사용자 홈폴더 설정, 로그온 스크립트를 통한 드라이브 매핑 등의 방법을 고려해 봐야 할 것이며, 이번 장에서는 공유자원을 Active Directory에 포함시킴으로써 검색에 대한 효율성을 높여주는 방법을 살펴보도록 하자.

 

Active Directory는 회사 전체의 자원들의 정보를 담고 있는 글로벌 디렉터리 서비스이다. 사용자 계정, 컴퓨터 계정뿐만 아니라 공유폴더나 공유프린터 등도 Active Directory에 저장해 둠으로써 사용자들은 Active Directory에 질의를 통해서 찾고자 하는 자원들을 검색해 낼 수 있다. 예제를 통해서 방법을 알아보자. 예제에서는 blueapple 이라는 이름의 파일서버가 가진 Public 이라는 공유자원을 Active Directory에 등록(Publishing)하는 과정을 설명하였다.


<그림12-57. Active Directory 공유폴더 게시 1>

Active Directory 사용자 및 컴퓨터 관리콘솔을 연다음, 공유폴더를 등록하고자 하는 위치에서 마우스 오른쪽 클릭하여 새로 만들기-공유폴더를 선택한다.


<그림12-58. Active Directory 공유폴더 게시 2>

먼저 공유폴더의 이름을 입력한다. 이것은 파일서버의 실제폴더의 이름과 같을 필요는 없다. 이것은 Active Directory에서 공유폴더라는 하나의 개체를 구별하기 위한 식별자 역할을 하는 것이다.

 

네트워크 경로 항목에는 실제 공유폴더에 접근하기 위한 UNC Path를 입력한다. \\blueapple\public 이라고 입력했다.


<그림12-59. Active Directory 공유폴더 게시 3>

오른쪽 패널에서 test1 이라는 개체가 생성된 것이 보인다. 이 개체의 등록정보를 연다.


<그림12-60. Active Directory 공유폴더 게시 4>

등록정보에서 키워드를 할당해 보자. 이 키워드를 이용해서 사용자들은 Active Directory에 쿼리가 가능하다.


<그림12-61. Active Directory 공유폴더 게시 5>

키워드에 오피스2000’‘Windows2000’을 추가했다. 아마도 blueapple public 공유폴더에는 오피스2000 Windows 2000의 자료가 저장되어 있을 것이다.


<그림12-62. Active Directory 공유폴더 게시 6>

이제 사용자들은 디렉터리 검색을 할 수 있다. 네트워크 환경을 클릭하여 디렉터리까지 접근한 다음 마우스 오른쪽 클릭하여 찾기를 선택한다.


<그림12-63. Active Directory 공유폴더 게시 7>

찾기항목을 공유폴더로 지정하고, 키워드 항목에 오피스라고 입력하여 [지금찾기]를 시도했더니 <그림12-63>과 같이 자원을 찾아주고 있다. 이 결과값을 클릭하면 실제 자원을 가진 서버인 \\blueapple\public 까지 접근할 수 있다.

 

사용자들은 더 이상 파일서버의 이름, 공유폴더의 이름 등을 기억할 필요가 없다. 자신이 찾고자 하는 자료를 검색하는 것만으로 그것을 가진 서버까지 접근이 가능해 졌기 때문이다.


<그림12-64. Active Directory 공유폴더 게시 8>

공유프린터도 마찬가지이다. 다만 차이가 있다면, 공유폴더와는 달리 프린터의 경우는 기본적으로 네트워크에 프린터가 공유되는 순간 자동적으로 Active Directory에 등록(게시)이 되도록 설정되어 있다.

 

프린터의 등록정보를 열어보면 <그림12-64>에서 보여지는 것처럼 디렉터리에 나열이라는 항목이 보이고 이것이 활성화되어 있음을 확인할 수 있다. 이 디렉터리가 의미하는 것은 바로 Active Directory이다.


:
Posted by 새벽예찬
2008. 11. 26. 08:58

12-4. 프린트서버 구축 및 관리 Windows Networking2008. 11. 26. 08:58

회사의 네트워크에 프린트 서버를 구현하는 것은 가장 기본적인 관리작업중의 하나이다. 프린터 자체를 설치하지 못해서 사용하지 못하는 경우는 드물 것이다. 다만 프린터를 사용할 수 있는 적절한 권한설정의 미비로 인한 접근이 되지 않는 것, 또 그보다 앞서 클라이언트로부터 프린트 서버까지의 네트워크 연결문제, 이러한 것들이 프린트서버가 제대로 동작하지 않는다고 판단하게 만드는 요인들이 된다.

 

기본적인 프린터 설치와 같은 내용은 언급하지 않는다. 다만 추가로 회사 네트워크 환경에서 구현해 볼만한 유용한 몇가지 기능을 살펴보도록 하겠다. 두가지 기능을 살펴볼 것이다. 첫째는 하나의 물리적인 프린트 디바이스에 대해서 2개의 프린터를 설치하여 우선순위, 일정 등이 다른 프린터를 추가해 본다. 둘째는 하나의 프린트 디바이스가 문제가 생겼을 때 다른 프린트 서버의 프린터로 인쇄를 전환(Redirection)하는 방법에 대해서 알아보자.

 

상황은 다음과 같다. 회사의 프린트 서버에 프린터 한대가 물려있고, 이것을 전체 직원들이 공통적으로 사용하도록 네트워크에 공유(프린터)했다. 영업담당 이사가 거래처로 급하게 팩스전송해야 하는 문서를 한장 출력했는데 먼저 프린터에 인쇄명령을 보낸 사용자들이 많아서 프린트 서버의 프린터큐에는 많은 문서가 쌓여 있다. 영업담당이사가 당신에게 나는 직급도 높고 급하게 문서를 출력해야 하는 경우가 많은데 이렇게 프린터 사용량이 많아서 업무에 지장이 있다. 다른 사용자보다는 내가 보낸 문서가 보다 빨리 프린팅 되도록 조치해 달라라고 요청했다.

 

이에 대해 당신은 이사님~ 이사님방에 별도로 프린터 한대 도입하면 됩니다라고 말할 것인가? 물론 그럴 수 있지만 처리해 줘야 할 일이다. 어떻게 할 수 있을까? 그러한 경우 하나의 물리적인 프린트 디바이스에 대해 추가로 프린터를 만들어 냄으로써 해결할 수 있다.


<그림12-40. 우선순위가 다른 프린터 구성 1>

해당 프린트 디바이스를 가진 프린트 서버에서 프린터관리콘솔을 연 다음 프린터 추가를 클릭한다. 예제의 프린트 서버는 HP Laser 4000 HP Laser 5000 2대의 프린터를 가진 서버이다. 이 서버의 LPT1 포트에 물린 HP Laser 4000프린트 디바이스에 대한 또 하나의 논리적인프린터를 설치하고자 한다. ‘프린터 추가아이콘을 누른다.


<그림12-41. 우선순위가 다른 프린터 구성 2>

서버에서 프린터를 관리할 때는 로컬 프린터를 선택한다. ‘네트워크 프린터는 프린트 서버에 클라이언트로서 연결하고자 할 때 사용하는 메뉴이다.


<그림12-42. 우선순위가 다른 프린터 구성 3>

LPT1 포트에 HP Laser 4000 시리즈 프린트 디바이스가 설치되어 있는 것이 보인다. 지금 하고자 하는 작업은 물리적인 프린트 디바이스를 추가하고자 하는 것이 아니라, 이미 존재하는 프린트 디바이스에 대한 복사본을 만들고자 하는 것이기 때문에 동일한 포트를 선택해야 한다. LPT1 포트를 선택하고 [다음]을 누른다.


<그림12-43. 우선순위가 다른 프린터 구성 4>

기존에 이미 프린터가 설치되어 있기 때문에 이미 있는 드라이버 사용이라는 메시지가 나왔다. ‘현재 드라이버를 사용함을 선택하고 [다음]으로 진행한다.


<그림12-44. 우선순위가 다른 프린터 구성 5>

프린터 이름을 지정한다. 어떠한 프린터인지 구별할 수 있는 이름을 사용한다.


<그림12-45. 우선순위가 다른 프린터 구성 6>

추가하는 프린터를 공유하고 있다. HPLaserJ.2 라는 공유이름을 그대로 사용했다.


<그림12-46. 우선순위가 다른 프린터 구성 7>

프린터 추가가 완료되었다.


<그림12-47. 우선순위가 다른 프린터 구성 8>

다시 프린터 관리콘솔을 열어보니 새로운 프린터가 하나 추가된 것이 보인다. <그림12-47>에서 하이라이트된 2개의 프린터 아이콘은 실제로는 하나의 물리적인 프린트 디바이스를 가리키고 있는 것이다.


<그림12-48. 우선순위가 다른 프린터 구성 9>

기본적으로 이 두 프린터는 동일한 설정을 가지고 있다. 하나의 프린터를 선택하고 등록정보를 연다.


<그림12-49. 우선순위가 다른 프린터 구성 10>

등록정보의 고급탭을 열면 우선순위를 설정할 수 있는 항목이 보인다. ‘우선순위의 기본값은 1이다. 우선순위를 99로 높였다. 이제 이 프린터를 통해서 인쇄를 시도하는 사용자는 우선순위가 1인 프린터를 통해서 인쇄하는 사용자보다 높은 우선순위를 가지기 때문에 보다 빠른 문서출력이 가능해 진다.

 

위의 예제상황에서 영업담당 이사에게 새로운 프린터를 쓰도록 설정해 주면 된다. 하지만 현재 설정으로는 영업담당이사가 아닌 다른 사용자라고 하더라도 이 프린터를 쓸 수 있다. 막아줄 필요가 있다. 공유프린터 권한설정을 통해서 해결한다.


<그림12-50. 우선순위가 다른 프린터 구성 11>

새로운 프린터의 등록정보에서 보안탭을 열고 Users그룹을 제거하고 특별히 이 프린터에 대해서 인쇄권한을 주기를 원하는 사용자 그룹만 추가해야 한다.

이렇듯 하나의 물리적인 프린트 디바이스에 대해 논리적으로 여러 개의 프린터를 만들 수 있고 이 각각의 논리적인 프린터들에는 서로 다른 권한설정이나 우선순위등을 설정하는 것이 가능하다. <그림12-49>를 보면 또 다른 옵션들도 있다. 기본적으로 프린터는 24시간 동안 개방되어 있는데 여기서 일정변경을 통해서 12부터 오전6까지만 동작하는 프린터등으로 일정조정도 가능하다. 급하진 않지만 대용량 프린팅을 원하는 사용자가 있다면 이러한 일정의 프린터를 하나 설치하고서 사용자에게 이 프린터를 쓰도록 해 준다면 사용자가 낮에 프린터에 출력명령을 보내도 이 프린터는 출력을 하지 않고 스풀러에 저장해 두었다가 12가 되면 프린팅을 시작하게 된다. 하나의 프린트 디바이스를 여러목적으로 공유해서 사용하고 있을 때 효율적인 방법이라고 하겠다.

 

이번에는 다른 상황을 하나 고려해 보자. 회사에서는 프린트 디바이스 2대를 구입하여 영업부서용, 관리부서용으로 구분하여 사용하고 있다. 어느날 관리부서용으로 사용하던 프린트 디바이스가 고장이 발생했다. 프린트 서버에서 프린트 큐를 열어보니 <그림12-51>과 같이 5개의 문서가 인쇄대기중인 것을 확인했다. 이 경우 관리자는 관리부서가 사용하던 프린트 디바이스가 당분간 사용할 수 없는 상태가 되었으니 관리부서 사용자들의 컴퓨터에 영업부서용 프린터를 사용할 수 있도록 프린터 설치를 해 주고, 현재 관리부서의 프린터 큐에 대기중인 문서는 사용자들이 새롭게 영업부서용 프린터로 출력하도록 가르쳐 줘야 할 것이다. 그러다가 관리부서용 프린트 디바이스의 수리가 완료되어 다시 네트워크에 복귀하고 나면 관리부서 직원들이 다시 예전의 부서용 프린터를 사용하도록 설정을 바꿔 주어야 한다. 충분히 그럴 수 있다. 문제는 번거롭다는 것이다.

 

이러한 경우에 프린터 포트 재지정(Redirection)은 도움을 준다. 이러한 내용을 구현할 수 있는 기본전제는 관리부서와 영업부서의 프린트 디바이스가 동일하거나, 같은 프린트 디바이스 드라이버로써 호환성이 있어야 한다는 것이다. 구현해 보도록 하자.


<그림12-51. 프린터 포트 재지정 1>

고장난 프린터를 가진 프린트 서버에서 해당 프린터의 등록정보를 연다.


<그림12-52. 프린터 포트 재지정 2>

등록정보의 포트탭을 연다. LPT1에 프린트 디바이스가 물려있음을 보여준다. 상황은 간단하다. LPT1에 연결된 프린터가 고장이 나서 출력이 되지 않으니 다른 포트의 프린터로 출력되도록 포트를 바꿔주면 되는 것이다. 새로운 포트의 위치는 같은 프린트 서버의 다른 포트일 수도 있고, 다른 서버의 포트일 수도 있다. 개의치 않는다.

 

[포트추가]를 클릭한다.


<그림12-53. 프린터 포트 재지정 3>

프린터 포트화면에서 ‘Local Port’를 선택하고 [새 포트]를 클릭한다.


<그림12-54. 프린터 포트 재지정 4>

포트 이름 창에는 고장난 프린터를 대체할 프린터를 가진 서버로 접근할 수 있는 UNC Path를 입력한다. 예제에서는 \\msz001\hplaserj 를 입력했다. [확인]을 눌러서 마친다.


<그림12-55. 프린터 포트 재지정 5>

<그림12-55>을 보면 포트가 LPT1에서 변경된 것을 볼 수 있다.

<그림12-56. 프린터 포트 재지정 6>

잠시 후 <그림12-56>화면과 같은 작업이 일어났다. 고장난 프린터에 있던 모든 대기중인 인쇄파일이 대체시킨 다른 서버로 넘어간 것을 확인할 수 있다.

 

이 작업은 관리자에게 상당히 효율적인 관리방법을 제공한다. 관리부서의 프린트 디바이스가 고장나 있는 동안 새롭게 사용자들에게 프린터를 설치해 줄 필요가 없다. 관리부서의 사용자들은 부서의 프린터가 고장나기 전과 동일하게 자신의 프린터에 출력을 하는 것이고, 다만 프린터 결과물은 영업부서의 프린트 디바이스로 출력이 되니 거기서 찾으면 될 것이다.  관리부서의 프린트 디바이스가 다시 복귀했다면 관리자는 다시 프린터 포트를 LPT1으로 돌려주는 것으로 관리작업은 끝난다.


:
Posted by 새벽예찬
2008. 11. 26. 08:57

12-3. Disk 할당량 관리 Windows Networking2008. 11. 26. 08:57

마이크로소프트의 네트워킹 운영체제(NOS) NT 4.0버전까지 파일시스템에 대한 디스크할당량 기능을 지원하지 않았다. 그런 이유로 특정 사용자에 의해 파일서버가 독점된다거나, 사용자에게 FTP계정서비스 등을 하고자 할 때 용량제한을 한다거나 하는 등의 기능을 사용하기 위해서는 3rd Party 유틸리티들의 도움을 받아야만 했다.

 

마이크로소프트는 Windows 2000부터 디스크 할당량 관리 기능을 지원하고 있다. 이것은 C: D: 등의 볼륨단위로 처리되며, 로컬, 원격, FTP등 사용자 계정으로 접근해서 저장하는 모든 데이터에 대해서 적용된다. 디스크 할당량 관리 기능을 구현해 보자.

 

디스크 할당량 기능을 사용하기 위해서는 서버의 볼륨은 반드시 NTFS파일 시스템으로 포맷되어 있어야 한다.


<그림12-32. 디스크 할당량 관리 1>

디스크할당량 관리는 볼륨 단위로 별도로 이루어진다. E: 의 등록정보를 열었다. ‘할당량탭을 열었다. NTFS파일시스템이 아니라면 할당량탭이 보이지 않을 것이다. 기본적으로 할당량 관리 사용은 비활성화되어 있는 상태이다. 디스크 할당량을 사용하기 위해서 할당량 관리 사용의 체크박스에 체크했다. 그리고 얼마만큼 제한할 것인지를 결정해 준다. 예제에서는 200MB의 공간으로 제한을 했고, 180MB에 이르렀을 때 경고를 남기도록 설정하고 [확인]을 눌렀다.


<그림12-33. 디스크 할당량 관리 2>
 

 

디스크 할당량 관리를 사용하겠다는 메시지가 나온다. [확인]을 누른다. 디스크 할당량은 활성화하면 현재 드라이브의 파일 Ownership을 확인하여 할당량 체크를 시작한다. 즉시 적용되는 것이다. 위와 같은 설정을 했을 때 기본적으로는 사용자가 200MB를 넘게 사용하는 것이 가능하다. 단지 경고를 남길 뿐이다.


<그림12-34. 디스크 할당량 관리 3>

만일 할당량 제한을 넘은 사용자에게 더 이상 공간을 주지 않겠다고 결정하였다면 할당량탭의 할당량 한도를 넘은 사용자에게 디스크 공간 주지 않음옵션을 활성화 시킨다. 이렇게 서버쪽의 디스크할당량이 설정되어 있으면 네트워크를 통해서 서버로 접근하는 사용자는 서버의 하드디스크가 마치 200MB인것으로 인식된다. 자신의 계정이 200MB를 이상 넘어가는 데이터를 기록하고자 했을때는 디스크공간이 부족하다는 에러메시지를 만나게 된다. 가장 확실하게 디스크 공간을 제약하는 방법이 된다.

 

위와 같이 기본설정만 그대로 둔 상태에서는 관리자 그룹에게는 무제한, 다른 모든 사용자들에게는 일괄적으로 200MB라는 공간제약을 하게 되는데 경우에 따라서는 사용자별로 차별적인 공간할당을 해야 할 필요가 있다. [할당량 항목]버튼을 클릭해서 추가구성을 할 수 있다.


<그림12-35. 디스크 할당량 관리 4>

할당량 항목 화면에서 할당량메뉴-새 할당량 항목을 선택한다.


<그림12-36. 디스크 할당량 관리 5>

할당량을 특별하게 지정하고자 하는 사용자의 목록을 추가한다.


<그림12-37. 디스크 할당량 관리 6>

100MB로 제한했다. 이것은 앞에서 전체사용자에게 기본할당량 한도보다 우선한다. 기본할당량이 200MB로 되어 있더라도 이곳의 할당량이 100MB로 지정되어 있으면 100MB 라는 공간제한을 따른다. 만일 300MB로 지정되었다면 기본할당량인 200MB보다 더 많은 공간을 사용하게 되는 것이다.


<그림12-38. 디스크 할당량 관리 7>

서버 한대가 여러 개의 볼륨으로 구성되었거나, 또한 사용자들이 여러대의 파일서버에 접근해야 하는 경우, 볼륨마다 혹은 서버마다 사용자들에게 동일한 설정을 해야 하는 경우가 있다. 이때는 서버마다 새롭게 사용자 할당량을 설정할 것이 아니라 <그림12-38>과 같이 하나의 볼륨에서 할당량을 잘 설정한 다음, 할당량 항목 내보내기를 통해서 파일로 저장할 수 있다.


<그림12-39. 디스크 할당량 관리 8>

F: diskquotaexport 라는 이름으로 할당량 목록을 저장한 파일을 생성했다. 확장자도 필요없다. 이 파일을 이 서버의 다른 볼륨이나 다른 서버의 볼륨에서 가져오기메뉴를 이용해서 동일한 할당량 항목을 설정할 수 있다.


:
Posted by 새벽예찬
2008. 11. 26. 08:56

12-2. DFS (분산파일시스템) Windows Networking2008. 11. 26. 08:56

클라이언트들이 네트워크에 있는 서버에 간단하게 접근한다는 것은 쉬운 일이 아니다. 실제로 관리자가 생각하는 것보다 훨씬 클라이언트들은 네트워크를 이용하는 것에 익숙하지 못한 경우가 많다. 회사에서 사용자들이 사용하는 파일서버가 여러 대 라면 더더욱 그러하다. 이러한 경우에 분산파일시스템은 유용한 기능이다. 분산파일시스템이 제공하는 또 다른 측면의 기능은 컨텐츠 복제가 가능하다는 것이다. 파일서버 2대를 복제하고자 한다면, 예를 들어 1대의 서버에 새로운 폴더나 파일이 생기거나 기존의 파일의 내용이 변경되었다면 복제로 구성된 다른 서버로 그 변경사항이 그대로 반영되도록 구성되고자 할 때 역시 분산파일시스템을 고려할 수 있다. 이것의 응용범위는 많다. 또 웹서버 2대를 NLBS (네트워크 로드 밸런싱 서비스)를 구현했을때도 분산파일시스템을 이용해서 웹사이트 컨텐츠 복제를 구성할 수 있다.

 

분산파일시스템은 2가지가 제공된다. 독립실행형DFS와 도메인 DFS가 있다. 독립실행형 DFS는 단일서버이고, 도메인 DFS는 복수서버를 지원한다.

 

회사에 여러대의 파일서버가 있다. 사용자들이 각각의 파일서버에 접근해서 자원을 이용하고 있는데 번거로운 일이 아닐 수 없다. 독립실행형 DFS를 구현해 보자. 독립실행형 DFS는 여러 파일서버의 흩어져 있는 여러 개의 공유자원들에 대해 사용자들에게 단일공유지점을 제공함으로써 사용자들의 접근에 있어서 편의성을 제공한다.


<그림12-19. DFS사용전 환경>

 

<그림12-19> DFS사용전의 공유환경이다. 클라이언트가 접근해야 할 지점이 4군데라면 사용자는 각각 4개의 지점에 접근하는 방법을 알고 있어야 한다.

 

 


<그림12-20. DFS사용후 환경>

 

DFS를 사용하면 환경이 달라진다. DFS서버를 설치하고 흩어진 서버의 자원을 DFS서버의 DFS루트에 연결(link)시킨다. 그러면 사용자는 DFS서버의 DFS루트 공유폴더에 연결함으로써 전체 자원의 리스트를 확인할 수 있게 된다. 자원의 활용을 극대화시킬 수 있는 좋은 방법이다. 독립실행형 DFS를 구현해 보도록 하자.


<그림12-21. 독립실행형 DFS 구현 1>

DFS서버로 구현할 서버에서 관리도구-분산파일시스템을 실행한다. 분산파일시스템 관리콘솔에서 마우스 오른쪽 클릭하여 DFS 루트를 선택한다.


<그림12-22. 독립실행형 DFS 구현 2>

마법사가 실행된다.


<그림12-23. 독립실행형 DFS 구현 3>

도메인 DFS’독립실행형 DFS’를 생성할 수 있다. 도메인DFS를 구현하려면 Active Directory가 필수적이다. 예제에서는 독립실행형 DFS를 구현해 보자.


<그림12-24. 독립실행형 DFS 구현 4>

DFS루트를 서비스할 서버의 호스트이름을 입력했다. Blueapple.mscs.co.kr 을 입력하고 [다음]으로 진행한다.


<그림12-25. 독립실행형 DFS 구현 5>
 

DFS서버에 DFS루트를 지정해야 한다. DFS루트도 하나의 공유폴더라고 생각하면 편하다. 다만 여러 개의 다른 공유폴더를 링크시킬수 있는 대표공유폴더일뿐이다. 이미 만들어져 있는 공유폴더를 사용하거나, 새롭게 DFS루트로 사용할 공유폴더를 만들 수 있다. 예제에서는 F:\data\Public 폴더를 public 이라는 공유이름으로 새로운 공유를 추가했다.

<그림12-26. 독립실행형 DFS 구현 6>

DFS루트 이름을 눈여겨 본다. \\blueapple.mscs.co.kr\public 이라는 UNC Path 형태를 그대로 보여준다. 사용자들은 이 UNC Path를 이용해서 DFS서버에 접근하게 된다.


<그림12-27. 독립실행형 DFS 구현 7>

작업을 마쳤다.


<그림12-28. 독립실행형 DFS 구현 8>
 

<그림12-28>을 보면 DFS루트가 추가된 것을 확인할 수 있다. 추가로 이제는 흩어져 있는 공유자원들을 링크시키는 작업을 한다. 왼쪽패널에서  DFS루트를 마우스 오른쪽 클릭하여 DFS 연결을 선택한다.

 

 


<그림12-29. 독립실행형 DFS 구현 9>
 

연결이름에는 사용자가 알기 쉬운 이름을 입력해 주고, 두번째의 사용자를 이 공유폴더로 보냄에는 실제로 공유폴더를 가진 서버의 공유이름을 입력해 준다. 예제에서는 \\salesserver\sales$ 를 입력했는데 이것은 saleserver sales$ 공유폴더를 의미한다. Salesserver 의 공유폴더를 Sales$ 와 같이 마지막 문자열에 $(달러표시)를 함으로써 salesserver 서버가 가진 공유자원을 숨기는 형태를 취했다. 이것은 사용자들에게 실제 공유폴더가 어디에 위치해 있는지는 감추겠다는 것을 의미한다. 사용자 입장에서는 서버가 어디에 있는지, 어떠한 공유폴더가 있는지를 알 필요가 없다. 네트워크의 자원에 접근하고자 한다면 ,DFS서버에 연결하면 그뿐이다.


<그림12-30. 독립실행형 DFS 구현 10>

같은과정을 거쳐서 각 부서별 공유자원을 하나의 DFS루트 폴더에 링크시켰다.


<그림12-31. 독립실행형 DFS 구현 11>

사용자들은 더 이상 서버들을 찾아다닐 필요가 없다. 공유자원이 필요하면 DFS서버의 DFS루트를 찾아오면 된다. 예제에서는 \\blueapple\public 으로써 DFS서버에 접근한 화면을 보여준다. 개발팀, 관리부.. 4개의 폴더가 보이는데, 이것은 실제로 폴더가 아니라 각각 흩어져 있는 서버들의 공유자원이 링크된 인터페이스 역할을 하는 것이다. 사용자가 만일 개발팀폴더를 클릭한다면 그것은 실제로 <그림12-29>에서 설정한 \\salesserver\sales$ 로 연결되어 다른 서버의 공유자원을 보여주게 된다.

 

이렇듯 독립실행형 DFS 기능은 흩어진 서버의 공유자원을 하나의 서버에 집중시킴으로써 사용자들의 편의성을 극대화시킬 수 있다는 장점이 있다. 하지만 독립실행형 DFS서버가 다운되는 상황이 생겼다면 사용자들은 접속지점을 잃어버리는 것이 되기 때문에 주의해야 할 것이다.

 

반면에 도메인 DFS DFS루트를 여러 개의 서버에 복제로 구현할 수 있어서 하나의 DFS 루트가 손상되었더라도 계속해서 사용자들이 공유폴더에 접근할 수 있다는 장점이 있다. 내결함성(Falut Tolerance)을 제공한다. 도메인DFC를 구현하기 위해서는 Active Directory가 구축되어야 한다.


:
Posted by 새벽예찬
2008. 11. 26. 08:53

12-1. 파일서버 구축 및 보안 Windows Networking2008. 11. 26. 08:53

파일서버라는 이름은 우리에게 너무나 친숙하다. 네트워크라는 것의 필요성이 여기서부터라고 해도 틀린 말은 아닐 것이다. 옆자리에 있는 동료의 컴퓨터에 저장된 파일을 공유하고 싶다는 데서부터 파일서버의 필요성은 출발된다.

 

파일서버를 구축하는 것은 간단하지만 제대로 관리하는 것은 쉽지 않다. 처음에는 잘 준비하지만 공유해야 할 데이터가 하나 둘 늘어가면서 금새 어수선한 공유폴더를 만들어 내는 경우가 많기 때문이다. 폴더를 구성할때는 계층구조를 사용하도록 하자. 앞으로의 확장을 고려한다면 좋은 구조이다. 예제로 만든 폴더구조를 보도록 하자.


<그림12-1. 파일서버의 계층적인 폴더관리>

 

<그림12-1>의 예제에서는 F: 루트에 데이터라는 이름의 폴더를 만들고, 그 아래에는 공용데이터”, “사용자데이터를 생성했다. “공용데이터에는 부서별 공통 데이터를 저장하며, “사용자데이터는 회사의 사용자별 홈폴더를 설정해 주기 위한 공간이다. 이런 형태로 파일서버를 계층적 폴더구조를 만들어서 관리하면 늘어나는 사용자에 따른 폴더생성, 백업 등이 용이해진다.

 

위와 같이 구성하면 회사에서 부서별로 공유할 데이터를 저장할 공용데이터폴더를 공유하고, 사용자별 데이터를 저장할 사용자데이터를 공유하는 두가지 작업만으로 기본적인 요구사항은 해결될 수 있는 구조가 마련된다. 상위의 폴더 하나만 공유하면서 어떻게 하위에 있는 폴더들의 권한통제가 가능할 것인가? 그것은 바로 Windows NT기반의 OS에서 지원하는 NTFS파일시스템의 NTFS 퍼미션관리를 통해서 가능한 작업이다.

 

앞에서는 파일서버의 기본적인 구성에 대해서만 설명하였다. 이번장에서는 기본구성을 근거로 하여 구체적인 서버의 보안설정을 어떻게 하여야 할 것인지를 살펴본다. 예제는 다음과 같다. 부서별 공용데이터와 사용자별 개인폴더를 저장하는 blueapple 이라는 이름의 파일서버가 있다. 이 파일서버에서는 F: data라는 최상위 폴더를 생성했으며 부서별 폴더와 사용자별 폴더를 각각 public, user로 생성했다. 이 때 파일서버의 기본보안은 어떻게 유지되어야 하는지 접근해 보자.

 


<그림12-2. 파일서버의 권한설정 1>

먼저 부서별 데이터폴더인 Public폴더를 공유한다. Public에서 마우스 오른쪽 버튼을 이용하여 공유를 선택한다.


<그림12-3. 파일서버의 권한설정 2>

공유이름으로 public 이라는 기본값을 사용했다. 공유폴더에 대한 사용권한을 설정하기 위해 [사용권한]을 클릭했다.


<그림12-4. 파일서버의 권한설정 3>

기본적으로 모든 공유폴더의 사용권한은 Everyone에게 모든 권한이 부여되어 있다. 좋지 않은 권한설정이다. [제거]를 클릭했다.


<그림12-5. 파일서버의 권한설정 4>

Public공유폴더에 대해서 [추가]를 이용하여 Administrators 그룹을 추가했다. 또한 Users 그룹을 추가하고 변경’,’읽기권한을 주었다.


<그림12-6. 파일서버의 권한설정 5>

이렇게 공유설정을 마쳤다. <그림12-6>을 보면 \\blueapple\public UNC Path를 이용하여 네트워클를 통해 blueapple서버의 public공유폴더에 접근해 본 화면이다. Public 폴더 아래에는 개발팀, 관리부, 마케팅, 영업부라는 4개의 서브폴더가 있다. 현재 상태로는 각 부서에 속한 사용자들이 자기 부서의 폴더에만 접근하는 것이 아니라 public 공유폴더를 통해서 접근하기 때문에 4개의 모든 폴더에 대해서 변경권한까지 가지도록 설정되어 있다. 4개의 서브폴더를 포함하는 상위폴더를 공유했기 때문에 4개의 서브폴더는 상위폴더에 주어진 공유폴더에 대한 권한을 그대로 동일하게 적용받는 것이다.

이것을 공유폴더만 가지고 해결하기 위해서는 Public이라는 상위폴더를 공유하는 것이 아니라 4개의 서브폴더를 각각 공유해야 한다. 예를 들어 개발팀폴더를 개발팀이라는 이름으로 공유하고 개발팀그룹에게만 사용권한을 할당해야 하는 것이다. 하지만 그렇게 접근하는 것이 아니라 공유폴더 사용권한과 NTFS 폴더 퍼미션을 같이 사용함으로써 해결할 수 있다.


<그림12-7. 파일서버의 권한설정 6>

NTFS퍼미션을 할당해 보자. 먼저 Public아래의 서브폴더인 개발팀을 마우스 오른쪽 클릭하여 등록정보를 선택했다.


<그림12-8. 파일서버의 권한설정 7>

기본적으로 할당되어 있는 퍼미션이 보인다. 기본 퍼미션을 변경하기 위해 먼저 아래쪽에 부모로부터 상속 가능한 사용권한을 이 개체로 전파할 수 있음체크상자를 해제한다.


<그림12-9. 파일서버의 권한설정 8>

<그림12-9>와 같은 메시지가 팝업된다. ‘복사를 누른다.


<그림12-10. 파일서버의 권한설정 9>

이제 기본설정된 NTFS퍼미션을 변경할 수 있도록 활성화 되었다. Everyone 그룹을 제거한다.


<그림12-11. 파일서버의 권한설정 10>

CREATOR OWNER그룹을 추가한다. 이것은 개발팀에 이 폴더내에 새로운 폴더나 파일을 생성한 사용자가 파일이나 폴더에 대해 모든 권한을 가지도록 해 준다.


<그림12-12. 파일서버의 권한설정 11>

추가로 개발팀을 위해 미리 생성해둔 도메인 로컬 그룹인 DL_rnd 를 추가하고 읽기 및 실행’, ‘폴더 내용 보기’, ‘읽기사용권한을 할당했다. 여기까지만 할당하면 개발팀에 권한을 할당하기 위한 그룹인 DL_rnd 그룹의 구성원들은 개발팀폴더에 대해서 읽기 권한 밖에 가지지 못한다. 추가작업이 필요하다.


<그림12-13. 파일서버의 권한설정 12>

계속 이어서 [고급]버튼을 클릭한다.


<그림12-14. 파일서버의 권한설정 13>

고급옵션의 사용권한탭에서 [추가]를 누른다.


<그림12-15. 파일서버의 권한설정 14>

개발팀 권한 항목화면에서 이름은 ‘DL_rnd’를 선택하고 적용대상은 이 폴더만사용권한은 하위폴더 및 파일 삭제, 삭제 권한을 제외한 모든 권한을 허용시킨 다음 [확인]을 누른다.


<그림12-16. 파일서버의 권한설정 15>

DL_rnd 그룹을 위한 특별한 권한이 구성되었다. [확인]을 눌러서 구성을 마친다.

다른 부서의 공용폴더도 같은 방법으로 구성해 준다. 이것에 대한 결과로서 각 부서별 폴더는 부서의 구성원들만 접근이 가능하며, 부서의 구성원이라고 할지라도 다른 사용자들이 만든 폴더나 파일에 대해서는 읽기만 가능하고, 자신이 만든 파일에 대해서는 자신이 모든 권한을 가지게 된다. 부서별 데이터를 파일서버에서 처리하는 좋은 구조이다. ‘자신의 파일은 자신이 관리하고, 같은 부서의 다른 사용자가 만든 파일은 읽기만 가능한 구조가 되었다는 것이다.

 

부서별 공용데이터 폴더의 권한설정을 마치고 이번에는 사용자별 개인 데이터 폴더를 구성해 보자. 먼저 공용데이터를 저장하기 위한 상위폴더인 Public을 공유하였던 것과 마찬가지로 사용자 데이터를 저장하기 위한 상위폴더인 user 폴더를 공유하고 권한설정을 마친다.


<그림12-17. 파일서버의 권한설정 16>

다음 사용자의 폴더에 대한 NTFS퍼미션을 구성한다. 예제에서는 수용이라는 사용자의 홈폴더를 구성하고 있다. 해당폴더를 마우스 오른쪽 클릭하여 등록정보를 선택한다.


<그림12-18. 파일서버의 권한설정 17>

아래쪽에 부모로부터 상속 가능한 사용권한을 이 개체로 전파할 수 있음체크상자를 해제하고 Everyone 그룹에게 부여된 퍼미션을 제거한 다음, 김수용(sykim@mscs.co.kr) 사용자에게 모든 권한을 할당했다. 이 결과로 김수용사용자는 자신의 폴더에 대해서 모든 권한을 가지며, 관리자 그룹이 아닌 다른 어떤 사용자도 김수용폴더에 접근조차 불가능하게 되었다. 사용자의 개인 데이터를 보호하기 위한 좋은 방법이다. 여기서 관리자가 폴더를 들여다 봐야할 특별한 사유가 없다면 Administrators 역시 제거해도 무방하다.

사용자가 많아질수록 일일이 수작업으로 사용자의 폴더마다 권한설정을 하는 것은 상당히 번거로운 작업이다. 도메인의 사용자 계정을 생성할 때 홈폴더를 할당하면 자동적으로 사용자별 폴더도 생성되고 동시에 이러한 권한설정이 이루어지게 된다. 이것에 대해서는 이 책의 14장을 참고한다.

 

이상으로 파일서버에서 부서별 공용데이터와 사용자별 개인데이터를 관리하기 위한 권한설정을 하는 방법에 대해서 알아보았다.


:
Posted by 새벽예찬
2008. 11. 25. 13:37

11-7. 시스템 관리를 위한 도구 Windows Networking2008. 11. 25. 13:37

시스템 관리를 위해 제공되는 몇가지 도구에 대한 소개를 하고자 한다. MMC, 보안구성 도구, 서버 지원도구, 리소스 킷 등에 대해서 알아본다.

 

11-7-1. MMC (Microsoft Management Console)

 

MMC는 한마디로 컨테이너라고 부를수 있다. 컨테이너는 그 자체만으로는 보잘 것이 없다. 제대로 사용이 되려면 컨테이너 안에 화물이 들어차야 유용하게 쓰일수 있을 것이다. MMC도 그런것이다. MMC라는 컨테이너만으로 할 수 있는 작업은 없다. 하지만 이 MMC라는 껍데기에 관리를 위한 구성요소들을 하나씩 하나씩 추가하여 비로소 관리도구가 되는 것이다. 이렇듯이 MMC에 집어넣어서 관리도구가 될 수 있는 구성요소들을 가리켜서 스냅인 개체 (Snap-in Object)”라고 부른다.

 

이렇듯 관리도구가 개체화되어 MMC라는 커다란 컨테이너를 통해서 관리될 수 있도록 한 것에는 상당한 장점이 제공된다. 관리도구의 관리인터페이스가 하나로 통일된다는 것을 의미한다. 더 이상 이전버전의 관리도구들처럼 각각 저마다의 인터페이스를 가지는 것이 아니라 MMC라는 하나의 인터페이스에 통합되어 있기 때문에 관리자들이 보다 쉽게 관리업무를 할 수 있는 환경을 제공한다. 또한 관리자는 자신만의 관리도구를 커스터마이징할 수 있어서 편리하며 개발자적 관점에서 보자면 관리도구를 만드는데 크게 시간낭비를 하지 않고 스냅인개체로 만드는 작업으로써 관리도구를 만드는 작업을 마무리하게 된다. SQL Server 2000, Exchange Server 2000, ISA Server 2004 등 각종 서버제품군들의 관리인터페이스 역시 이 MMC를 채택하고 있어서 통합된 관리환경을 제공하고 있다.

MMC를 실행하기 위해 시작à실행창에 “mmc”라고 입력하였다.

 


<그림11-163. MMC 실행>

mmc.exe MMC를 실행하는 실행파일이다. mmc를 실행하니 하나의 컨테이너가 열렸다. 콘솔메뉴à스냅인 추가/제거를 누른다.

 

 

 


<그림11-164. MMC – 스냅인 추가/제거>

독립 실행형 스냅인 추가화면이 열리면 눈에 익숙한 메뉴들이 펼쳐진다. 시작à프로그램à관리도구에서 찾아볼 수 있는 메뉴들이다. 자주 사용하는 몇가지 스냅인을 [추가]버튼을 이용하여 추가하였다.

 

<그림11-165. MMC-독립실행형 스냅인 추가>

다섯가지의 스냅인이 추가된 관리콘솔을 보여준다. 이제 당신만의 관리도구가 만들어진 것이다.

<그림11-166. MMC에 스냅인이 추가된 화면>

우리가 시작à프로그램à관리도구를 통해서 접근할 수 있는 많은 관리도구들도 이러한 MMC콘솔을 통해서 미리 만들어진 관리도구의 단축아이콘일 따름이다.

 

<그림11-167. 제어판-관리도구>

콘솔메뉴에서 저장을 누른다.

 

<그림11-168. 사용자정의된 MMC저장>

방금 당신이 정의한 관리도구를 저장할 수 있다. 확장자가 .msc 인것을 기억하자.

<그림11-169. 관리도구 폴더에 MMC저장

Msc (Microsoft Management Console)확장자는 MMC 를 필요로 하는 확장자이다. 많이 접근하는 관리도구인 컴퓨터 관리도구를 명령줄에서 불러오기 위해서는 compmgmt.msc 를 입력하면 된다. 시작à프로그램à관리도구à컴퓨터관리를 눌렀을때와 동일한 결과를 볼 수 있다.

<그림11-170. 컴퓨터 관리도구 실행>

 

11-7-2. 보안 분석 구성 도구

 

서버에서 보안을 고려하는 것은 매우 중요한 작업이다. 보안이라고 하면 사실 그 범위는 너무나 광범위하다. 하지만 서버에서 기본 제공되는 보안정책을 구성하기 위해서 시작à프로그램à관리도구à로컬 보안 정책을 실행하여 접근할 수 있다.


<그림11-171. 로컬 보안 정책 메뉴>

 

<그림11-171>을 보면 왼쪽 패널에서 계정정책, 로컬정책, 공개키 정책, 로컬컴퓨터의 IP보안 정책등 몇가지 큰 항목들을 보여주고, 오른쪽 패널에서는 세세히 개별적인 정책들의 리스트를 보여주고 있다. 살펴보니 암호관련한 정책을 보여주고 있는데 로컬 컴퓨터의 디렉터리 데이터베이스에서 생성되는 사용자계정에 대한 암호의 사용기간, 암호의 길이 등 보안관련된 정보중에서도 암호와 관련된 정책을 보여주고 있다. 이것은 하나의 단편적인 항목일 뿐이다.

 

하나하나의 모든 항목들을 열어서 관리자가 원하는 수준의 보안을 구성한다는 것은 상당히 부담스러운 일이 아닐수 없다. 또 여러대의 서버가 있을 때 모든 서버를 이렇게 동일수준의 보안을 구성하는 작업을 하는 것도 번거로운 일일 것이다. 무엇보다도 꽤 많은 항목에서 보안설정을 지원해 주고 있기 때문에 각각의 보안구성 항목에 대해서 완전한 지식이 없으면 현실적으로 제대로 사용하기도 어려울 수 밖에 없다는 것이 문제이다.

 

마이크로소프트는 이러한 보안설정을 보다 쉽고 정확하게 할 수 있도록 몇 개의 보안템플릿을 제공하고 있다. 관리자는 이러한 보안 템플릿의 사용방법을 잘 익혀서 시스템에 반영할 수 있다면 직접 처음부터 작업을 하는 것보다는 만족할 만한 수준의 보안을 구현할 수 있게 된다.

 

보안 구성 및 분석도구는 보안템플릿을 효과적으로 사용할 수 있도록 지원해 주는 관리 스냅인이다. 과정을 단계별로 접근해 보겠다.

 

보안구성 및 분석관리도구는 기본제공되는 관리도구의 메뉴에서 찾을 수 없다. 스냅인 개체만을 제공하고 있다. ‘보안구성 및 분석스냅인을 추가하기 위해서 mmc를 실행한다.


<그림11-172. 보안 구성 도구 1>

 

콘솔메뉴에서 스냅인 추가/제거를 이용하여 보안 구성 및 분석스냅인을 추가한다.


<그림11-173. 보안 구성 도구 2>

 

왼쪽패널에서 보안 구성 및 분석스냅인이 추가된 것을 볼 수 있다. 오른쪽 패널에서는 친절하게도 사용법에 대한 설명을 해 주고 있다.


<그림11-174. 보안 구성 도구 3>

 

보안 구성 데이터베이스를 생성해야 한다. ‘보안 구성 및 분석에서 마우스 오른쪽 클릭하여 데이터 베이스 열기를 선택한다.


<그림11-175. 보안 구성 도구 4>

 

인터페이스가 조금 맞지 않는다는 생각이 든다. 새로운 데이터베이스를 만드는 것이기에 파일이름상자에 원하는 데이터베이스 파일 이름을 직접 입력하고 [열기]를 누른다. 예제에서는 test.sdb 라고 입력했다.

<그림11-176. 보안 구성 도구 5>

 

다음은 템플릿 가져오기 화면이 열린다. 위에서 생성하는 test.sdb 데이터베이스 파일에 연결할 템플릿을 선택해야 한다. 템플릿이 저장된 위치는 %Systemroot%\security\templates 폴더이다. *.inf 확장자를 가진 파일들이 보이는데 이것이 기본제공되는 템플릿 파일들이다.


<그림11-177. 보안 구성 도구 6>

basic으로 시작하는 파일은 Windows Server 2003을 처음 설치했을 때 가지는 기본보안설정을 담은 템플릿이다. 보안을 한단계 올리고 싶다면 secure로 시작하는 파일을, 제공되는 템플릿중의 최상위 보안을 구성하려면 hisec로 시작되는 템플릿 파일을 선택한다. 파일이름의 끝에 있는 dc, sv, ws 등의 이름은 각각 도메인 컨트롤러(dc), 서버(sv), 워크스테이션(ws)등을 나타내는 표기이다. 도메인 컨트롤러라면 dc를 일반서버라면 sv ws를 선택한다. 어떤 것을 선택할 것인가보다는 일단 이 툴의 사용법을 잘 익혀두자. 예제에서는 hisecws.inf를 선택했다. [열기]를 누른다.


<그림11-178. 보안 구성 도구 7>

처음 화면과 달라진게 없는 것 처럼 보인다. 다시 보안 구성 및 분석을 마우스 오른쪽 클릭하면 지금 컴퓨터 분석지금 컴퓨터 구성이라는 메뉴가 보인다. ‘지금 컴퓨터 구성을 클릭하여 실행하면 불러온 템플릿 파일인 hisecws.inf 파일의 보안설정을 현재 이 시스템에 적용시키겠다는 것을 의미한다. 그렇게 되면 이 시스템의 로컬 보안정책은 템플릿의 내용대로 바뀌게 된다. 그냥 하기엔 뭔가 미심쩍어 보인다. ‘지금 컴퓨터 분석을 누르면 현재 이 시스템에 적용되고 있는 보안정책과 템플릿의 보안정책을 비교할 수 있도록 해 준다. 좋은 옵션이다. ‘지금 컴퓨터 분석을 실행했다.

 

이어서 오류로그를 저장할 파일의 위치를 입력해 준다.


<그림11-179. 보안 구성 도구 8>

 

[확인]을 누르니 7가지 카테고리에 대해서 보안분석을 하고 있는 화면이 나온다. 오래 걸리진 않는다.


<그림11-180. 보안 구성 도구 9>

 

보안분석이 끝나고 나면 각 항목마다 데이터베이스 설정컴퓨터 설정을 비교해 주는 화면이 보인다. 데이터베이스 설정은 템플릿의 설정을 의미하고 컴퓨터 설정은 이 컴퓨터에 현재 설정된 정책을 의미한다. 각 항목을 더블클릭하여 직접 사용자정의하는 것도 가능하다. 녹색 체크아이콘은 데이터베이스 설정과 컴퓨터설정이 일치하는 것을 보여주고, 빨간색 x 표시는 두 설정이 다른 것을 나타낸다.


<그림11-181. 보안 구성 도구 10>

 

이렇게 각각 항목을 차근차근 살펴서 원하는 설정을 정의한 다음 컴퓨터에 적용시키려면 그때 지금 컴퓨터 구성메뉴를 이용한다.


<그림11-182. 보안 구성 도구 11>

 

컴퓨터 구성을 마치고 나면 모든 아이콘이 녹색체크 표시로 바뀐 것을 보게 되는데 이것은 데이터베이스의 설정이 컴퓨터설정으로 완전히 반영되었음을 나타낸다.


<그림11-183. 보안 구성 도구 12>

 

이렇게 구성한 컴퓨터설정을 다른 컴퓨터에도 동일하게 적용하길 원하거나 테스트시스템에서 작업을 한 보안설정을 실제 적용시킬 서버로 옮긴다거나 할 경우를 위해서 템플릿 내보내기메뉴를 이용한다.


<그림11-184. 보안 구성 도구 13>

 

이렇게 해서 *.inf 파일로 저장을 하면 사용자정의된 보안템플릿이 만들어진다. 이 파일을 다른 서버에서 앞의 절차와 같은 방법으로 구성하면 해당 서버는 이 서버와 동일한 보안설정을 가지게 된다.


<그림11-185. 보안 구성 도구 14>

 

11-7-3. Windows Server Support tool

 

Windows Server 에서는 OS와 함께 기본적으로 설치되지는 않지만 관리에 도움이 되는 유용한 도구를 원본CD에서 제공하고 있다. 일반적인 관리작업에는 필요하지 않을 수 있지만 조금 더 깊은 내용을 공부하고자 한다면 설치할 필요가 있다.

 

원본CD-Support-Tools-Setup.exe’를 통해서 설치한다.


<그림11-186. Support tools 설치>

 

설치를 하고 나면 ADSI Edit, Replication Monitor, SNMPutil, Netdiag.exe 등 여러가지 유용한 툴들과 그들의 사용법에 대한 도움말을 얻을 수 있다. 기본적인 설치위치는 \Program files\Support Tools이다. 설치후 이 폴더를 열어서 툴들을 살펴보라.

 

11-7-5. Runas 서비스 (Secondary Logon)

 

Windows NT기반의 시스템에서 무엇인가 작업을 하기 위해서는 반드시 로그온이라는 과정을 거쳐야만 한다. 로그온을 하면 사용자는 자신의 존재를 시스템으로부터 인증(Authentication)”을 받게 되고 이 인증받은 자격(Security Context)으로서 시스템의 모든 작업을 진행하게 된다.

 

시스템 관리자들이 흔히 하는 실수가 있다. 서버룸에 서버가 있고 시스템 관리자는 사무실에서 업무를 보고 있다. 서버를 관리해야 하는 경우는 극히 일부분의 업무이고 대부분의 업무는 개인의 일상적인 업무임에도 불구하고 많은 시스템 관리자들은 자신의 데스크탑에서 시스템관리자의 계정으로서 로그온을 해 있다거나 혹은 자신의 계정이 도메인의 관리자그룹의 멤버로 되어 있다거나는 하는 경우가 많다. 이것은 보안상의 허점을 노출하게 된다. 네트워크상에서 다른 사용자들이 관리자계정을 알게 하는 등의 허점을 노출시킬 수 있으며 혹은 우습게도 관리자가 잠깐 자리를 비운 사이에 다른 사용자가 관리자의 시스템을 사용한다면 회사의 네트워크에 심각한 문제를 초래할 수도 있기 때문이다.

 

이것에 대해 RunAs 서비스를 이용하는 것은 관리자에게 매우 유용한 기능이라고 할 수 있다. 기본적으로 관리자라고 하더라도 일상적인 작업을 할때는 일반계정을 사용해야 한다. (관리자가 wssong 이라는 계정을 쓰는 사람이었다면 이 wssong이라는 사용자계정은 Domain Admins Administrators 그룹의 멤버로 만들어서는 안된다는 것이다.) 관리업무를 해야 할 필요가 있다면 그때 관리자계정으로써 새롭게 로그온을 할 것이 아니라 RunAs 서비스를 이용하여 다른 사용자계정으로서 해당 작업을 열 수가 있다. 그렇게 되면 그 작업에 한정해서만 관리자로서 작업을 하는 것이기에 보다 편하면서도 안전하게 작업을 할 수 있다.

 

시스템에서 이 기능을 사용하기 위해서는 RunAs서비스가 동작하고 있어야 한다. <그림11-187>에서는 RunAs서비스가 시작되어 있음을 보여준다.


<그림11-187. RunAs Service>

 

RunAs를 이용해서 관리도구를 실행하는 방법은 2가지가 있다. 먼저 마우스를 이용해서 접근해 보자. 예제에서는 ‘Active Directory 사용자 및 컴퓨터를 실행하고자 한다. 이 관리도구가 있는 곳까지 마우스를 이동한 다음 키보드 [Shift]키를 누르채로 마우스 오른쪽 버튼을 누르면 다음 계정으로 실행이라는 메뉴가 활성화된다. 이 화면에서 [다음 계정으로 실행]을 누른다.


<그림11-188. GUI 환경에서 RunAs 사용 1>

 

다음 사용자 계정으로 실행창이 열리면 하고자 하는 작업의 권한이 있는 사용자 계정과 암호를 넣어준다.


<그림11-189. GUI 환경에서 RunAs 사용 2>

  

다음은 명령프롬프트에서 RunAs 사용법에 대해서도 익혀보자. <그림11-200>에서 runas /?를 이용하여 사용법을 들여다 보았다. 다음에 아래와 같이 타이핑했다.

 

runas /user:wssong "mmc %windir%\system32\compmgmt.msc"


이것은 wssong 계정의 권한으로써 mmc 로써 compmgmt.msc (컴퓨터 관리도구)를 실행하는 것을 보여준다. 잠시후 관리도구가 실행되고 해당 관리도구를 닫는 순간 RunAs를 이용한 Secondary logon 권한은 없어진다.
 


<그림11-190. 명령프롬프트에서 RunAs 사용>

11-7-6. Net.exe

 

Net.exe는 명령프롬프트에서 사용되는 도구로써 둘째가라면 서러워할만큼 자주 사용되는 도구이다. 옵션도 다양하여 상당히 많은 작업을 이 도구를 통해서 해낼수가 있다.

 

D:\>net  (net 명령어에 대해서 알아본다.)

이 명령에 대한 구문:

 

 

NET [ ACCOUNTS | COMPUTER | CONFIG | CONTINUE | FILE | GROUP | HELP |

      HELPMSG | LOCALGROUP | NAME | PAUSE | PRINT | SEND | SESSION |

      SHARE | START | STATISTICS | STOP | TIME | USE | USER | VIEW ]

 

 

D:\>net help use (net use의 사용법을 물어본다.)

이 명령에 대한 구문:

 

 

NET USE [장치이름| *] [\\컴퓨터이름\공유이름[\볼륨] [암호| *]]

        [/USER:[도메인이름\]사용자이름]

        [/USER:[점있는 도메인이름\]사용자이름]

        [/USER:[사용자이름@점있는 도메인이름]

        [[/DELETE] | [/PERSISTENT:{YES | NO}]]

 

NET USE {장치이름 | *} [암호 | *] /HOME

 

NET USE [/PERSISTENT:{YES | NO}]

 

 

NET USE는 컴퓨터를 공유되는 리소스에 연결시키거나 연결을 끊습니다.

옵션 없이 사용될 경우에는 해당 컴퓨터의 연결 상태를 열거해 줍니다.

 

장치이름    리소스에 연결시킬 이름을 설정하거나 연결을 끊을 장치를

                지정합니다. 장치는 두 종류인데  하나는 디스크 드라이브

                (D: 에서 Z:까지)이고 다른 하나는 프린터(LPT1: 에서 LPT3:까지

                )입니다. 다음 차례의 사용 가능한 장치이름를 지정하고 싶을

                경우 특정 장치이름 대신 *를 치면 됩니다.

\\컴퓨터이름    공유 리소스를 제어하는 컴퓨터의 이름입니다.

                컴퓨터이름에 공백이 있을 경우, \\(두개의 백슬래시)와 컴퓨터

                이름을 인용부호(" ") 안에 넣어줍니다. 컴퓨터이름은 1에서 15

                까지 쓸 수 있습니다.

\공유이름       공유되고 있는 리소스의 네트워크이름입니다.

\볼륨           서버상의 NetWare 볼륨을 지정합니다.  NetWare 서버에 연결되기

                위해서는 NetWare용 클라이언트 서비스(Windows 워크스테이션)

                혹은 NetWare용 게이트웨이 서비스(Windows 서버)가 설치되어

                실행되고 있어야 합니다.

암호            공유 리소스에 연결하는 데 필요한 암호입니다.

*               암호를 칠 수 있는 프롬프트 상태를 만들어줍니다. 암호 프롬프트

                에서는 암호를 쳐도 암호가 보이지 않습니다.

/USER           연결에 사용할 다른 사용자 이름을 지정합니다.

도메인이름      다른 도메인을 지정합니다. 도메인을 생략하면 현재 로그온

                되어있는 도메인이 사용됩니다.

사용자이름      로그온할 때 쓸 사용자이름을 지정합니다.

/HOME         사용자를 홈 디렉터리에 연결시킵니다.

/DELETE        네트워크 연결을 취소시키고 영구 연결 목록에서 연결을 삭제

                합니다.

/PERSISTENT     영구적인 네트워크 연결의 사용을 제어합니다. 기본 설정은

                이전에 사용된 설정입니다.

YES             이루어진 연결을 저장하여 다음 번 로그온시 연결을 복원합니다.

NO              이루어진 연결 혹은 후속 연결을 저장하지 않습니다. 기존의

                연결은 다음번 로그온시 복원됩니다. 영구 연결을 제거하려면

                /DELETE 스위치를 사용합니다.

NET HELP 명령 | MORE은 도움말을 한번에 한 화면씩 보여줍니다.

 

 

D:\>net help use >>d:\netuse.txt (net use의 사용법을 화면에 디스플레이 하지 말고 d:\netuse.txt파일로 저장하라는 명령이다. >>는 명령을 파일로 Redirection해 주는 역할을 한다.)

 

D:\>notepad d:\netuse.txt (메모장을 사용해서 저장된 파일을 열어본다.)

 

 

D:\>net use (클라이언트로서 현재 다른 서버에 연결된 정보를 보여준다.)

새 연결 정보가 저장됩니다.

 

목록에 항목이 없습니다.

 

D:\>net use \\redapple\ipc$ /user:wssong (redapple 서버에 wssong 이라는 계정을 이용해서 세션을 맺고 있다.)

\\redapple\ipc$에 대한 암호나 사용자 이름이 잘못되었습니다.

 

\\redapple\ipc$에 대한 암호를 입력하십시오:

명령을 잘 실행했습니다.

 

D:\>net view \\redapple (redapple 이라는 이름의 서버의 공유자원을 보여달라는 명령)

 

\\redapple의 공유 리소스

 

공유 이름      종류   다음으로 사용  설명

--------------------------------------------------------------------------

icons     Disk

source         Disk

명령을 잘 실행했습니다.

 

D:\>start \\redapple (blueapple서버로의 연결을 시도하고 있다.)

 

<그림11-201>

 

D:\>net use (다시 net use를 실행하니 위에서 연결한 정보를 보여주고 있다.)

새 연결 정보가 저장됩니다.

 

상태         로컬      원격                      네트워크

---------------------------------------------------------------------------

OK                     \\redapple\ipc$         Microsoft Windows Network

명령을 잘 실행했습니다.

 

D:\>net use t: \\redapple\icons (로컬 T: blueapple work 공유폴더를 매핑시키고 있다)

명령을 잘 실행했습니다.

 

D:\>t:

 

T:\>dir/w (로컬자원처럼 보이지만 실제로는 blueapple work공유폴더의 자원을 보여준다)

 T 드라이브의 볼륨: ADserver

 볼륨 일련 번호: 649F-4C9B

 

T:\ 디렉터리

 

[.]                      [..]                     010100100504SM.zip

100-0019_IMG copy.jpg    100-0020_IMG copy.jpg    100-0030_IMG copy.jpg

[2000SETUP]              5.DNS.doc                [ex2000]

Image1.psp               Image2.psp               schema.doc

[SEcTools]               [terminal]               test.sdb

yongha_name.jpg

 

              14개 파일      15,144,284 바이트

               7 디렉터리   3,940,126,720 바이트 남음

 

T:\>c:

 

C:\>net use

새 연결 정보가 저장됩니다.

 

상태         로컬      원격                      네트워크

 

---------------------------------------------------------------------------OK           T:        \\redapple\icons         Microsoft Windows Network

OK                     \\redapple\ipc$         Microsoft Windows Network

명령을 잘 실행했습니다.

 

C:\>net use t: /d (로컬 t:의 연결을 끊는 명령)

t:() 제거되었습니다.

 

C:\>net use

새 연결 정보가 저장됩니다.

 

 

상태         로컬      원격                      네트워크

 

---------------------------------------------------------------------------

OK                     \\redapple\ipc$         Microsoft Windows Network

명령을 잘 실행했습니다.

C:\>net send bluexp "Send 메시지를 테스트하고 있습니다. 나 누구게?" (네트워크에서 bluexp라는 이름을 찾아서   안의 메시지를 전송한다)

BLUEXP에 메시지를 보냈습니다.

 

<그림11-202>

(bluexp에서는 위의 화면이 팝업된다. bluexp에서는 Messenger서비스가 동작하고 있어야 한다.)

 

C:\>net user thkim 1234 /Add (서버의 디렉터리 데이터베이스에 1234라는 암호를 사용하는 thkim계정을 생성하고 있다.)

명령을 잘 실행했습니다.

 

 

이상으로 Net.exe에 대한 몇가지 사용예를 알아보았다. 위의 예제에 있는 내용 정도는 차근차근 테스트해 보기를 권장한다. 시스템이 두대가 있다면 좋겠지만 한대만 있어도 테스트는 가능하다. 자신의 컴퓨터에 공유폴더를 몇 개 생성하고 테스트를 해 보라. 다른 옵션들은 각각 help를 참고하여 접근해 보라. 잘 안풀리는 명령어가 있다면 필자의 개인홈페이지 Q&A에 글을 올려서 같이 해결해 볼 수 있었으면 한다.

 

지금까지 꽤 많은 지면을 할애하여 Windows Server 의 몇가지 기능들을 알아보았다. 윈도우 서버의 전체기능을 설명하고자 하지는 않았다. 다만 사용될만한 기능들을 위주로 다룬 것이니 독자들이 미처 몰랐던 내용이 있다면 잘 정리해 두길 바란다.


:
Posted by 새벽예찬
2008. 11. 25. 13:28

11-6. 시스템 유지를 위한 업데이트 Windows Networking2008. 11. 25. 13:28

11-6-1. 서비스팩

 

우리가 사용하는 응용프로그램, 즉 소프트웨어는 수많은 코드로써 이루어져 있다. 코드가 많아지면 많아질수록 따라서 늘어가는 것이 있는데 그것이 바로 버그(Bug)’이다. 우리가 서버로서 사용하는 OS역시 하나의 소프트웨어일 따름이다. 그것도 엄청난 덩지를 차지하는 코드로써 만들어진 대형 소프트웨어라고 할 수 있을 것이다. 그러다 보니 이것 역시 버그의 존재를 무시할 수 없다. 이러한 버그를 패치할 방법이 필요하다.

 

또 한가지 측면은 서버에 새로운 기능을 추가한다거나, 기존에 제공되는 기능의 성능을 강화할 필요성이 생긴다. 혹은 새로운 응용프로그램이 개발되었는데 이것이 기존의 서버의 버전에서 동작을 하지 못한다거나 할 경우이다. 이럴 경우 역시 서버를 버전업 시킬 수 있는 방법이 필요해 진다.

 

다른 소프트웨어에 비해서 마이크로소프트의 Windows 기반의 OS들은 유난히 많은 버그를 가진 것으로 인식이 되고 있는데 다행인 것은 버그가 발견될 때마다 대부분의 경우 마이크로소프트는 그 버그를 해결(패치)할 수 있는 패치프로그램을 제공하고 있다는 것이다.(마케팅 전략과 맞물려 새로운 서비스팩 출시의 논란이 있어왔기는 했지만..) 이러한 패치들을 묶어서 서비스팩이라는 이름을 제공하고 있다.

 

결론을 말하자면 관리자는 이러한 서비스팩이 출시가 되면 분명히 패치를 해 주어야 한다는 것이다. 그것은 당신의 시스템을 보다 건강하고 안전하게 만들어 주는 방법이 될 것이다. 주의할 점은 서비스팩은 별도의 패키지이다. Windows Server 2003을 설치할 수 있는 원본CD에 담긴 자료는 당연히 패치가 되기 전 상태의 OS를 셋업해 줄 것이다. 서비스팩을 설치한 후 라도 원본CD로부터 새로운 CD를 설치했다면 새롭게 서비스팩을 패치해 주어야 제대로 된 현재의 버전을 유지할 수 있다.

 

11-11-2. 핫픽스(Hotfix)

 

대부분의 경우에는 버그를 패치하기 위해 긴급히 출시되는 패치파일이다. 서비스팩은 1년에 1~2차례 정도 정기적으로 출시된다. 하지만 서비스팩이 출시되고 다음번 서비스팩이 나오기 전까지 심각한 문제점이 발견되었다면 역시 해결해야 할 일이 될 것이다. 특히 보안상의 위험요소가 존재할 때 더욱 그러하다. 그런 이유로 마이크로소프트는 특별한 보안상의 문제가 될 수 있는 버그가 발견되었을 때 핫픽스라는 이름으로 보안패치를 제공하고 있다. 이러한 보안패치중의 대부분은 다음 버전 서비스팩에 포함된다. 관리자들은 이러한 핫픽스가 발표되면 회사에서 해당되는 문제인지를 판단하고 관련시스템에 패치하는 작업을 해야만 한다.

 

관련내용은 마이크로소프트 보안 웹사이트(http://www.microsoft.com/korea/security/default.asp)를 참고한다. 보안게시판(http://www.microsoft.com/korea/technet/security/current.asp)을 통해서 대부분의 리스트를 확인할 수 있다.


:
Posted by 새벽예찬
2008. 11. 25. 13:27

11-5-4. 문제해결-복구콘솔의 활용 Windows Networking2008. 11. 25. 13:27

윈도우 2000 서버부터 마이크로소프트는 복구콘솔이라는 프로그램을 지원한다. 이 복구콘솔을 통해서 관리자는 시스템이 부팅이 되지 않는 등의 문제가 발생했을 때 NTFS파일시스템에 접근이 가능하며 특정 서비스나 디바이스를 중지시키거나 시작시키도록 레지스트리를 수정할 수 있으며 하드디스크를 포맷하는 등 몇가지 작업을 가능하게 만든다.

 

복구콘솔을 사용하는 방법은 두 가지이다. 원본CD롬으로부터 부팅하여 셋업도중 <R>키를 이용한 복구과정에서 복구콘솔을 사용할 수도 있고, 미리 시스템에 복구콘솔을 설치해 둘 수도 있다. 설치를 해 보도록 하겠다.

 

복구콘솔을 서버의 설치프로그램을 통해서 설치할 수 있다. 원본CD i386폴더안에는 winnt32.exe라는 설치 프로그램이 들어있다. 이것을 /cmdcons 스위치를 이용해서 설치해 주면 된다.


<그림11-156. 복구 콘솔 설치 방법 >

 

복구콘솔 설치와 관련된 안내메시지를 보여준다. []를 누른다.


<그림11-157. 복구 콘솔 설치 안내문>

 

설치가 완료되고 나면 C: 루트에 있는 시스템 파일중의 하나인 boot.ini에는 작은 변화가 있다.


<그림11-158. 복구콘솔 부팅 메뉴가 추가된 Boot.ini 파일>

 

“C:\CMDCONS\BOOTSECT.DAT=”Microsoft Windows 2000 복구콘솔” /cmdcons”라는 메뉴가 추가된 것을 보여주는데 이것을 통해서 복구콘솔로 부팅을 하여 몇가지 작업을 할 수 있게 된다.

 

이렇게 설치한 복구콘솔을 사용하는 방법은 다음과 같다.


<그림11-159. 고급 옵션 메뉴>

시스템을 부팅할 때 복구콘솔메뉴를 선택하여 부팅을 시도한다.


<그림11-160. 고급 옵션 메뉴>

복구콘솔은 이 시스템에 설치된 Windows NT 기반의 OS를 찾아내고 해당 OS를 보여주며, 관리자의 암호를 요구한다. 올바른 관리자 암호를 입력해 주었더니 C:\WINNT 에서 명령프롬프트가 시작된 것을 볼 수 있다.

<그림11-161. 고급 옵션 메뉴>

여기서 무슨 작업을 할 수 있을지 “?”를 입력해 보았다. 그랬더니 사용할 수 있는 명령어들이 쏟아진다. DOS명령어들이 대부분이다. 각각의 명령어들에 대한 사용방법을 알고자 한다면 “help 명령어형태로 도움말 정보를 얻을 수 있다.


<그림11-162. 고급 옵션 메뉴>

필자는 예제에서 “disble dns”를 실행했다. 이 명령은 시스템의 DNS서비스에 대한 시작옵션은 ‘Disable’로 변경하는 효과를 주었다. 이 시스템이 다음번에 부팅할 때는 DNS서비스를 시작하지 않고 부팅한다. 이것은 특정한 서비스 문제로 인한 부팅실패를 간단하게 해결할 수 있게 해준다.


:
Posted by 새벽예찬
2008. 11. 25. 13:23

11-5-3. 문제해결 - F8 옵션의 이해 Windows Networking2008. 11. 25. 13:23

간혹.. 아니 심심찮게.. 솔직히 많은 시스템을 만나게 되면 자주 만나게 되는 화면중의 하나이다. 파란색 화면이라는 뜻으로 “Blue Screen”이라고들 부른다. 혹은 어떤 작업을 하든지 모든 것을 멈추고 갑자기 나오는 화면이기에 “Stop Error”라고도 부른다. 이것은 NTLDR이 이끌어가는 초기 부팅과정과는 상관이 없다. 그 이후에 커널을 초기화하는 과정이나 혹은 정상적으로 부팅후 로그온하여 특정 응용프로그램을 사용하다가 만나게 되는 화면이다.

 

대부분의 경우는 재부팅이 되면서 아무런 문제가 없는 것이 보통의 경우이지만 또 다시 부팅이 되면서 이러한 에러가 발생하면서 더 이상 부팅이 진행되지 않는다면 당황스러운 일이 아닐수 없다.


<그림11-153. Blue Screen 또는 Stop Error>

 

마이크로소프트는 이러한 문제를 디버깅이라는 과정을 거쳐서 해결할 수 있는 방법을 제공하고 있지만 조금은 현실성이 떨어지는 방법이다. 또한 대부분의 경우에 재부팅을 통해서 해결이 되는 것이 일반적이기 때문에 디버깅까지 해서 반드시 살려내야 하는 시스템이라면 그전에 이미 문제가 생겼을때를 대비하는 조치를 취했을 노릇이다. 백업이나 서버의 중복 등을 의미한다. 관리자입장에서는 지푸라기라도 잡고 싶은 심정인만큼 최선의 노력을 해 봐야 할 것인데 그럴 때 시스템을 시작시킬 때 [F8]키를 이용해서 접근할 수 있는 고급옵션에서 몇가지를 찾아볼 수 있다.

 

고급옵션은 POST 과정이 끝나고 [F8]키를 이용해서 접근할 수 있다. <그림11-154>을 보면 아래쪽에 고급옵션을 보려면 [F8]을 누르라는 옵션이 보인다.


<그림11-154. 고급 시작 옵션 [F8]>

 

[F8]키를 눌러 고급옵션 메뉴를 볼 수가 있다. 어떤 메뉴들이 있는지 살펴본다.


<그림11-155. 고급 옵션 메뉴>

 

① 안전모드 : 컴퓨터를 시작하는데 필요한 기본 디바이스만을 사용하여 부팅한다. 새로 추가한 디바이스나 특정 디바이스가 문제가 생겨서 부팅이 되지 않을 때 사용할 수 있는 옵션이다.

② 부팅 로깅 사용 : 부팅과정을 %Systemroot% 폴더에 Ntbtlog.txt 파일에 로깅한다.

VGA모드 : 업데이트한 비디오 드라이버가 문제가 생겨서 시스템이 먹통이 된다거나 하는 경우에 유용하다. 기본 VGA드라이버를 로드하여 부팅한다. 부팅후 새롭게 VGA카드 드라이버를 설치하여 해결할 수 있다.

④ 마지막으로 성공한 구성 : Last Known Good Configuration (LKGC)라고 부른다.

⑤ 디렉터리 서비스 복원모드 : 백업받은 Active Directory 데이터베이스를 복구하고자 할 때 이 모드로써 부팅해야 한다.

⑥ 디버그 모드 : 직렬 케이블로 연결된 다른 시스템에서 디버깅 정보를 받을 수 있도록 구성한다.


:
Posted by 새벽예찬

응급복구디스크(ERD) Windows 시스템이 손상되어 부팅이 되지 않을 때 훌륭한 해결책을 제시한다. 이 디스켓을 만들려면 백업프로그램을 이용할 수 있다. 응급복구 디스켓이 없을때도 응급복구를 할 수는 있지만 일부분에 한해서만 가능하다. 미리 응급복구디스크를 만들어 두는 것은 좋은 방법이다.

 

응급복구를 진행하는 방법은 2가지가 있다. 윈도우 서버 설치디스켓으로부터 부팅하여 접근하는 방법과, 윈도우 서버 원본CD롬으로부터 설치과정을 통해서 접근하는 방법이 있다. 부팅디스켓, 셋업디스켓, 응급복구디스켓 이들은 모두 다르다. 필자는 예제에서 Windows 2000 ServerCD롬 부팅을 통한 셋업과정에서 응급복구를 진행해 보도록 하겠다. 


<그림11-144. 응급 복구 과정 1>

윈도우2000서버 원본CD롬으로부터 시스템에서 부팅을 하여 셋업을 진행하는 것과 동일하게 진행한다. <그림11-144>화면에서 <Enter>키를 누르면 셋업을 하게 되는 것이고 <R>키를 입력하여 복구과정을 진행할 수 있다. 의도한 대로 <R>키를 입력하였다.


<그림11-145. 응급 복구 과정 2>

복구옵션을 선택하는 화면인데 2가지가 나온다. 복구콘솔을 이용할 수도 있고, 응급복구를 진행할 수도 있다. 복구콘솔에 대해서는 다음에 다룬다. 응급복구를 진행하기 위해서 <R>키를 입력한다.


<그림11-146. 응급 복구 과정 3>

응급복구는 수동복구<M>와 빠른복구<F>가 있는데 수동복구를 선택하면 복구하고자 하는 옵션을 체크해서 복구를 진행하게 된다. 빠른복구를 사용하자. <F>키를 입력하였다.


<그림11-147. 응급 복구 과정 4>

시작환경, 시스템파일, 부팅 섹터를 검사하겠다고 한다. [X]표시가 선택이 된 것이다. 우리는 보통 X 표시는 안 하겠다는 뜻인데 우리랑 관념이 다른가 보다. 계속 진행하기 위해서 <Enter>키를 누른다.


<그림11-148. 응급 복구 과정 5>

응급복구디스켓이 있으면 넣고 <Enter>키를 누르고 없으면 <L>키를 누른다. 응급복구디스켓이 있으면 보다 폭넓은 복구가 가능하다. 하지만 부팅프로세스에서 생기는 문제정도는 디스켓이 없어도 잘 복구가 된다. <L>키를 눌렀다.


<그림11-149. 응급 복구 과정 6>

<참고>전 화면에서 <Enter>키를 입력하면 다음과 같은 화면이 보인다.


<그림11-150. 응급 복구 과정 7>

응급복구 프로세스가 시작되었다. 하드디스크를 검색하여 필요로 하는 파일이 손상되었다거나 하는 것을 검색하면 알려줄 것이다.


<그림11-151. 응급 복구 과정 8>

Ntldr이 버전이 다른 것을 발견하고 멈추었다. 복구하려면 <Enter>키를 누르라고 한다. <Enter>키를 입력하면 원본CD로부터 파일을 가져와서 하드디스크의 파일을 대체하는 작업을 한다.


<그림11-152. 응급 복구 과정 9>

응급복구가 완료되었다는 메시지가 나왔다. 시스템을 재시작하면 부팅이 안되었던 문제점이 해결되어 부팅이 성공하는 것을 확인할 수 있다. 부디 확인할 수 있기를


:
Posted by 새벽예찬

시스템을 관리하다 보면 부팅이 되지 않는 문제점을 종종 발견하게 된다. 서버의 경우는 차라리 적은데 많은 수의 클라이언트 시스템들을 관리해야 한다면 문제는 더더욱 자주 발생하게 된다. Windows 9x 계열의 클라이언트들이 점점 Windows Server 2003, Windows XP로 대체가 되가고 있고 신규수요는 대부분 XP로 발생하고 있는 실정이기 때문에 이러한 부팅의 문제점을 해결하는 것은 이제 “NT” 시스템의 부팅과정을 잘 이해하는 것으로써 해결의 실마리를 찾을 수 있을 것이다.

 

11-5-1-1. 부트 프로세스

 

NT기반 OS가 부팅되는데 어떤 과정을 거치는지 또 어떤 파일들이 사용되는지 해당 파일이 없거나 손상되었을 때 어떤 에러메시지를 만나게 되는지, 그때 해결방법은 무엇인지를 정리해 보도록 한다. 부트 프로세스를 최대한 간소화시켜서 실제로 필요한 파일과 연관시켜 설명하도록 한다. (아래에 캡처한 화면은 Microsoft Virtual PC를 이용하여 화면을 구성한 것이다.)

    처음 파워를 켜면 POST (Power On Self Test)루틴이 시작된다. 독자들도 한번씩은 키보드와 마우스를 바꿔서 꽂았다거나 하는 경험이 있을 것이다. 그때 시스템은 Keyboard 에러가 나면서 비프음과 함께 더 이상 부팅이 되지 않게 된다.

    그리고 MBR(Master Boot Record)를 찾는다. MBR는 파티션 정보를 가지고 있는데 여기서 Active(활성)파티션을 찾아 0번섹터에 해당하는 부트섹터를 찾게 된다. 부트섹터에는 Windows NT기반의 부팅을 시작할 수 있는 짧은 프로그램이 들어있다.

    Windows NT의 부트섹터 프로그램은 같은 파티션에서 NTLDR을 실행시켜 메모리에 로그시킨다. NTLDR이 부팅과정을 책임질 부팅프로그램이다.


<그림11-130. POST Routine 과정>

 

    NTLDR은 가장 먼저 boot.ini파일을 찾아서 화면에 사용자의 선택을 요구하는 화면을 띄운다. 단일OS가 설치된 시스템이라면 화면에 보여지지 않고 해당 OS의 다음 부팅과정을 진행한다.

    NTLDRNtdetect.com을 찾아서 로드한다.

 


<그림11-131. OS 선택화면>

 

    Ntdetect.com은 시스템의 하드웨어를 점검하고 목록을 만든다.

    NTLDRboot.ini ARC Path를 참고하여 %Systemroot%\system32 폴더에서 Ntoskrnl.exe를 로드하고 디바이스 드라이버 및 서비스들을 로드하는 작업을 한다.

<그림11-132. 커널 로드 과정>

 

    Ntoskrnl.exe는 커널을 구성하는 작업을 한다.

<그림11-133. 커널 구성 과정>

    Ntoskrnl.exe는 마지막으로 Winlogon.exe 프로세스를 로드한다. 사용자는 [Ctrl+Alt+Del]을 입력하여 로그온할 수 있는 화면을 얻는다.

 

<그림11-134. 로그온 프로세스 시작>

 

 

위에서 부트프로세스에 대한 설명을 했다. 그림으로 파일을 기준으로 살펴보겠다.

 


<그림11-135. Windows NT기반 시스템의 부팅 프로세스>

 

이번에는 부팅과정에서 어떤 문제가 생길 것인지에 대해서 접근해 보자.

 

부트 프로세스에서 POST과정부터 MBR을 찾는 과정까지 생기는 문제는 하드웨어 적인 문제이다. OS와는 무관하다는 뜻이다. MBR에서 파티션 정보를 찾았지만 활성파티션을 발견하지 못했다면 혹은 활성파티션은 있지만 부트섹터가 없다면 그때도 역시 시스템은 부팅이 되지 못한다. “Non system disk error” 라는 일반적인 에러를 내며 멈추고 만다. 부트섹터를 찾았지만 Windows NT의 부트섹터 프로그램이 아닌 Windows 9x의 부트섹터였다면 시스템에서는 Windows NT를 부팅할 수 없다. 부팅이 되기 위한 최소한의 기본조건은 시스템의 활성파티션에 Windows NT기반의 부트섹터가 있어야 한다는 것을 뜻한다. 아래의 내용은 Windows NT기반의 부팅과정에서 생기는 문제점을 설명한 화면이다. 단계별로 접근하고 있다.


<그림11-136. 부트프로세스 에러1>

““NTLDR is missing”혹은 “Could not found NTLDR”이라는 에러메시지가 나왔다. 이 메시지가 나왔다면 적어도 부트섹터 문제는 아니라는 것이 보장된다. 부트섹터에 있는 프로그램이 NTLDR을 찾아서 메모리에 로드하려고 시도했지만 NTLDR을 찾지 못했기 때문에 발생되는 메시지이다. (해결방법☞) 다른 시스템으로부터 ntldr 파일을 옮겨오든지 부팅디스켓으로부터 부팅을 하면 된다. (Windows20002003과는 버전이 다르다)


<그림11-137. 부트프로세스 에러2>

Ntldr이 정상적으로 로딩되었다면 boot.ini파일이 필요한데 이때 boot.ini 파일이 없다고 해서 “Could not found boot.ini”등의 에러메시지를 내 보내지는 않는다. 만일 boot.ini파일이 없다면 ntldr은 자동적으로 OS C:\winnt 폴더에 있을 거라는 가정을 하고 다음 단계로 진행한다.

 

그 다음 순서인 ntdetect.com을 로드하게 되는데 만일 이 파일이 손상되었다면 부팅은 더 이상 진행이 되지 않고 하드웨어를 점검하지 못했다는 에러메시지를 발생시킨다. (해결방법☞) 다른 시스템으로부터 ntdetect.com 파일을 옮겨오든지 부팅디스켓으로부터 부팅을 하면 된다. (Windows2000 2003과는 버전이 다르다)


<그림11-138. 부트프로세스 에러3>

Ntdetect.com이 로드되었다면 다음으로 필요한 파일은 %Systemroot%\system32 폴더에 있는 Ntoskrnl.exe를 로드하게 되는데 바로 이 파일이 손상되었거나 없어서 로딩하지 못하겠다는 에러메시지이다. 속으면 안 된다. 처음 이런 에러메시지를 만났을 때 많은 관리자들이 Ntoskrnl.exe파일을 찾아서 헤맨다. 다른 시스템이나 원본 CD-Rom으로부터 이 파일을 복사해다 붙여넣으려는 시도를 한다. 1.6M정도의 그다지 크지는 않은 파일이지만 아쉽게도 그것으로 해결되지는 않는다. 실제로 이 파일이 손상되어서 이러한 에러가 나오는 경우는 극히 드물다. (해결방법☞) 이 경우는 boot.ini파일을 살펴봐야 한다. Boot.ini파일의 ARC Path를 통해서 NTLDR Ntoskrnl.exe의 위치를 찾게 되는데 이 파일의 위치가 잘못 설정되어 있다면 (예를 들면 실제로 winnt폴더가 D:에 있는데 C:에 있는것으로 가리키고 있다거나) 시스템은 Ntoskrnl.exe를 찾지 못하고 이러한 에러메시지를 발생하는 것이다.


<그림11-139. 부트프로세스 에러4>

간혹 <그림11-139>와 같은 에러가 발생하는 경우도 있다. Boot.ini를 통해서 보게 되는 메뉴중에 분명히 리스트에는 없던 “Windows 2000 (기본값)”이라는 메뉴가 보인다. 이것도 역시 boot.ini ARC Path가 잘못지정되어 있기 때문에 생기는 에러이다. <그림11-140>의 경우에 이러한 에러가 발생한다. 그림에서 하이라이트된 부분이 timeout=30초 내에 OS를 선택하지 않을 때 부팅이 되는 기본OS이다. 그런데 이 기본OS와 일치하는 Path를 아래의 세개의 목록중에서 찾을 수가 없다. 그럴때는 Boot.ini파일이 없는것과 동일하게 취급된다. “Windows 2000 (기본값)”이라는 것은 C:\winnt 폴더에 OS가 설치가 되어 있을 거라고 가정하고 부팅을 시도하는 것이다.


<그림11-140. 잘못 설정된 Boot.ini ARC Path>

 

이상으로 부팅시 생기는 문제점들에 대해서 살펴보았는데 해결방법마다 꼬박꼬박 나오는 것이 부팅 디스켓이라는 것이 있었다. 부팅 디스켓 만드는 방법을 알아보자.

 

11-5-1-2. 부팅 디스켓 만들기

 

초기 부팅과정에서 생기는 문제점은 부팅 디스켓 하나만으로도 해결할 수 있는 경우가 있다. 부팅 디스켓은 3.5” 디스켓 한장이면 만들수 있다. 다음과 같이 진행하면 된다.

 

먼저 3.5” 플로피 디스켓 한장을 준비한다. 반드시 Windows Server 2003에서 디스켓을 포맷한다. DOS에서 부팅디스켓을 어떻게 만들었는지 상기해 보면 “format a: /s”라고 /s 스위치를 주고 포맷했던 것을 기억할 것이다. 이 스위치는 a: DOS의 부트섹터를 만드는 작업을 해 주었다. 마찬가지이다. 하지만 그것보다 오히려 간편하다. Windows Server 2003에서 디스켓을 포맷하기만 하면 자동으로 그 디스켓의 0번 섹터에는 Windows Server 2003의 부트섹터가 생성되게 된다.

 


<그림11-141. Windows Server 2003 에서 윈도우 탐색기를 이용한 디스켓 포맷>

 

다음에 이 포맷한 디스켓에 시스템 파일을 저장해 주어야 한다. 기본적으로 시스템 파일들은 감춰져 있다. 윈도우 탐색기의 도구-폴더옵션을 열어서 숨김 파일 및 폴더 표시를 설정하고 보호된 운영 시스템 파일 숨기기(권장)’을 해제한다.


<그림11-142. 폴더 옵션 변경>


<그림11-143. 시스템 파일들>

 

C: 루트에 보면 boot.ini, NTDETECT.COM, ntldr 이 보인다. 이것을 A:로 복사한다.

 

이상으로 부팅디스켓이 만들어졌다. 이 디스켓이 해 주는 일은 하드디스크에서 해 주어야 할 일을 대신하는 것이다. 이것으로 초기부팅 과정에서 NTLDR이 해야 할 모든 일은 부팅 디스켓으로 처리해 준다. Ntoskrnl.exe가 로드될때까지는 이 디스켓이 역할을 담당한다.

 

물론 이것은 일시적이다. 이 부팅디스켓으로 부팅을 한 후에는 디스켓에 있는 시스템 파일들을 하드디스크의 C: 루트로 복사를 해야 할 것이다. 하지만 부트섹터가 망가진 경우라면 복사해서 붙여넣기를 할 수는 없다. 그때는 응급복구과정을 거쳐서 해결할 수 있다. 다음장에서 다루어진다.


:
Posted by 새벽예찬
2008. 11. 25. 13:12

11-4-3. 백업과 복구 - 복구 (Restore) Windows Networking2008. 11. 25. 13:12

제대로 복구를 하는 것은 백업을 하는 것만큼이나 중요한 일이다. 백업을 잘 하는 관리자는 많지만 의외로 복구를 잘하는 관리자는 많지 않다. 어떻게 보면 당연한 일이라 할 수 있다. 백업은 항상 하고 있지만 복구는 문제가 발생하기 전에는 해 볼 기회가 없기 때문일 것이다. 잘 돌아가는 시스템을 멈추고 복구를 위한 테스트를 해 보는 작업은 어떻게 보면 엽기적인 행동으로 비춰질 수도 있겠지만 현명한 관리자라면 비슷한 크기의 백업을 진행하게 되는 테스트 시스템을 셋팅하고 복구테스트를 해 보는 것을 잊지 말아야 할 것이다.


복구를 해야 하는 시스템에서 백업프로그램을 실행한다. 시작
à실행창에 ‘ntbackup’이라고 입력하여 백업프로그램을 실행할 수 있다.

백업프로그램이 시작되었다. 복원마법사를 이용하면 편리하다.

 

<그림11-120. 백업으로부터 복구하기 1>

복원할 데이터화면이 나오는데 이 시스템에서 백업프로그램이 수행되었다면 그림과 같이 백업된 정보가 나온다. 복원할 항목을 선택한후 [다음]을 누른다.

 

<그림11-121. 백업으로부터 복구하기 2>

백업데이터의 위치를 지정하니 카달로그에서 이 백업데이터가 백업한 폴더구조를 보여준다. 여기서 복구를 원하는 폴더나 파일을 체크하고 [다음]을 누른다.

 

<그림11-122. 백업으로부터 복구하기 3>

복원마법사가 완료되었음을 보여주는데 [마침]을 누르면 원래의 위치에 그대로 복구를 하게 된다. 여기서 [고급]을 눌러서 추가설정을 확인한다.

 

<그림11-123. 백업으로부터 복구하기 4>

복원할 위치를 지정하는 화면이다. 원래위치에 할 것인지, 다른 위치에 복원할 것인지 아니면 폴더구조를 무시하고 하나의 폴더에 모든 파일을 풀어놓을 것인지를 선택할 수 있다.

 

<그림11-124. 백업으로부터 복구하기 5>

복구할 대상디스크에 같은 파일이 있을 때 어떻게 처리할 것인지를 묻는다. 결정한 다음 [다음]을 누른다.

 

<그림11-125. 백업으로부터 복구하기 6>

고급복원옵션에서는 NTFS퍼미션까지 복구를 할 것인지 여부를 결정할 수 있다. 기본적으로 활성화되어 있다. 하지만 NTFS파일시스템에서 백업된 데이터를 FAT파일시스템으로 복원한다면 이 퍼미션은 의미가 없다.

 

<그림11-126. 백업으로부터 복구하기 7>

복원마법사가 완료되었다. 요약된 정보를 확인한다.

<그림11-127. 백업으로부터 복구하기 8>

복원을 완료하였음을 보여주는 화면이다. [보고서]를 클릭하여 어떤 파일과 폴더가 복원이 되었는지, 오류는 없었는지 등을 살펴본다.

 

<그림11-128. 백업으로부터 복구하기 9>

 

시스템 상태 데이터를 백업했을때도 마찬가지로 이 복원마법사를 사용할 수 있지만 Active Directory는 정상적인 부팅을 통해서는 복원할 수 없다. Active Directory가 설치된 도메인 컨트롤러에서 정상적으로 부팅하고 시스템상태 데이터를 복원하고자 했을때는 다음과 같은 에러메시지를 만나게 된다.

 


<그림11-129. Active Directory 데이터 베이스 백업 에러메시지>

 

Active Directory를 복원하기 위해서는 처음 부팅시 [F8] 기능키를 이용하여 고급옵션에서 디렉터리 서비스 복원 모드를 선택하여 부팅해야 한다. ‘디렉터리 서비스 복원 모드를 선택하면 Active Directory를 시작시키지 않고 로컬 SAM 디렉터리 데이터베이스를 이용하여 시스템을 부팅한다. 이때 사용되는 관리자계정은 Administrator이고, 암호는 Active Directory설치시 복원모드에서 사용할 관리자의 암호라고 입력했던 암호가 사용된다. Active Directory의 관리자계정과 암호와는 다르니 구별해야 할 것이다. 그렇게 부팅을 하면 백업프로그램의 복원마법사를 이용해서 Active Directory를 복구할 수 있다.


:
Posted by 새벽예찬
2008. 11. 25. 12:08

11-4-2. 백업과 복구 -백업 예약 Windows Networking2008. 11. 25. 12:08

보통 백업은 사용자들의 활동량이 없거나 줄어든 밤 시간에 진행된다. 당신의 회사는 11부터 백업이 이루어진다고 가정해 보자. 백업을 하기 위해 밤11까지 누군가 당번을 서야 한다면? 또 꼭 이러한 측면이 아니더라도 매일같이 동일한 백업을 진행해야 하는데 이것을 일일이 프로그램을 실행하여 백업유형을 결정하고 백업할 파일과 폴더, 시스템 상태 등을 선택하고 백업을 진행하다 보면 간혹 실수를 한다거나 할 확률도 커질 것이다.

 

이러한 작업들은 여러분들이 직접 하고 있어서는 안된다. 그렇다면 남을 시키면 되겠지만 당신이 그 이라면 어떻게 할까? 이런 경우는 시스템의 스케쥴 서비스를 활용하는 것이 올바른 방법이다. 이 스케쥴 서비스는 꼭 백업에만 국한된 개념은 아니다. ‘특정한 시간에 시스템이 특별한 작업을 스스로 수행하도록 설정해야겠다라고 생각했다면 그때는 스케쥴 서비스를 이용할 것을 고려해야 한다.

 

백업을 예약해 보도록 한다. 예제에서는 월요일과 금요일에는 일반백업을 수행하고, , , 목요일에는 증분백업을 수행하도록 예약한다. 백업을 예약하는 것은 백업프로그램의 작업예약탭에서 접근할 수 있다. 이 시나리오를 완성하기 위해서는 두차례에 걸쳐서 스케쥴을 해야한다. ,금요일의 일반백업이 하나이고, , , 목요일의 증분백업이 하나이다. 



<그림11-105. 백업 예약하기 1>


작업예약 인터페이스가 열리는데 서버의 프로그램이라고 보기엔 참 아기자기하게 만들었다 싶은 생각이 든다. 월요일을 클릭하고 아래의 [작업추가]버튼을 눌렀다.

 


<그림11-106. 백업 예약하기 2>

 


<그림11-107. 백업 예약하기 3>

백업할 데이터를 선택하는 화면에서 내 컴퓨터에 있는 모든 파일을 선택했다. 물론 선택을 할 수도 있다.

 


<그림11-108. 백업 예약하기 4>

백업을 저장할 위치를 지정해 준다.

 


<그림11-109. 백업 예약하기 5>

백업종류를 선택하는 화면에서 월요일 백업유형으로 일반백업을 선택했다.

 


<그림11-110. 백업 예약하기 6>

백업방법화면에서는 백업 후 데이터 확인메뉴가 기본적으로 선택되어 있지 않다. 이 옵션을 체크하면 백업이 완료되면 백업된 데이터와 원본데이터를 비교하여 무결성을 보장할 수 있는 옵션이다. 좋은 옵션이지만 백업이 제대로 되지 않는 경우가 잦은 경우에만 사용을 권장한다.

 

아래에 있는 사용할 수 있으면 하드웨어 압축 사용Windows Server 2003 자체의 기능이 아니라 백업의 효율성을 위해서 압축기능을 지원하는 백업디바이스를 사용할때만 활성화된다. [다음]을 눌렀다.


<그림11-111. 백업 예약하기 7>

백업대상이 되는 테이프나, 하드디스크의 파일에 기존파일에 붙여서 백업할 것인지 덮어쓰기를 할 것인지를 묻고 있다.

 


<그림11-112. 백업 예약하기 8>

백업시간화면에서 지금을 선택하지 않고 나중에를 선택하여 일정을 예약해야 한다. 아래쪽의 [일정설정]버튼을 클릭한다.

 


<그림11-113. 백업 예약하기 9>

작업예약화면에서 작업예약매주를 선택하고, 시작시간은 백업을 시작할 오후11, 그리고 요일은 월요일과 금요일을 체크하였다. [확인]을 클릭한다.


<그림11-114. 백업 예약하기 10>

예약하고 있는 백업작업을 수행할 때 사용할 사용자계정을 요구한다. 이 계정은 백업권한을 가지고 있어야 한다. 사용자 권한에 대해서는 <그림11-5>화면에서 설명했던 것을 참고하라. 백업도 시스템의 권한중의 하나이다. 관리자를 위한 기본계정인 Administrator는 백업권한을 가지고 있다.

 


<그림11-115. 백업 예약하기 11>

일정을 설정하였으면 [다음]을 눌러서 예약을 마친다. 백업설정이 완료되었다. 요약된 정보를 확인해 본다.

 

이제 작업예약 탭을 확인하면 매주 월요일과 금요일에 일반백업이 이루어진다는 것을 한눈에 볼 수 있다. 계속해서 두번째 예약인 화,,목요일의 증분백업을 예약하기 위해 <그림11-105>에서 [작업추가]버튼을 누른다. 


<그림11-116. 백업 예약하기 12>

백업종류에서 증분을 선택하여야 한다.

 


<그림11-117. 백업 예약하기 13>

위에서와 같은 방법으로 이번에는 화,,목요일 11부터 백업이 진행되도록 일정을 잡았다.

 

<그림11-118>은 작업이 완료된 화면이다. , 금요일엔 일반백업이, , , 목요일에는 증분백업이 되도록 일정을 잡은 것이다.


<그림11-118. 백업 예약이 완료된 화면>

:
Posted by 새벽예찬
2008. 11. 25. 12:02

11-4-1. 백업과 복구 - 백업(Backup) Windows Networking2008. 11. 25. 12:02

백업의 중요성은 아무리 강조해도 지나치지 않는다. 데이터 손실을 고려해서 전용서버를 사용하고 하드디스크를 중복배치하고, 여러대의 서버를 추가하고 등등.. 여러가지 방법을 고려하겠지만 무엇보다 최선의 방법이라면 백업을 고려해야 한다. 또 다른 측면이라면 백업을 제외한 다른 백업방법들은 현재의 상태만 유지시켜줄 수 있지만 백업프로그램을 사용하는 것은 지난시점의 데이터를 복구하는 작업도 가능하다는 측면 때문에 보다 매력있는 솔루션이라고 생각한다. 서버OS에 내장된 백업프로그램에 대해서 정리해 보도록 하겠다.

 

11-4-1. 백업 (Backup)

 

먼저 백업부터 다루어보자. 인터페이스가 깔끔하긴 하지만 제대로 된 구성을 하기까지는 조금 투박한 과정을 거쳐야 한다. Windows NT 4.0 서버의 경우 제공되던 백업프로그램은 오로지 테이프 백업만 지원했다. 테이프 디바이스를 설치한 시스템에서만 백업이 가능하다는 단점이 있었지만 Windows Server 2003 에서 지원하는 백업프로그램은 테이프 백업과 더불어 파일백업을 지원하고 있다. 테이프 디바이스가 아닌 파일시스템에 파일형태로 백업이 가능하다는 것을 의미한다. 비교적 쓸만한 백업프로그램이 되었다.

 

시작à프로그램à보조프로그램à시스템도구à백업을 실행하면 백업프로그램이 열린다. 혹은 실행창에서 ntbackup 이라고 입력한다. 백업프로그램을 왜 관리도구가 아닌 보조프로그램에 넣어 둔 것일까?


<그림11-96. 백업 프로그램>

 

백업프로그램의 처음화면을 보면 백업 마법사’ ‘복원 마법사’ ‘시스템 자동복구 복구 디스크메뉴가 3개 보인다. 백업, 복원뿐만 아니라 시스템이 손상되었을 때 복구하기 위한 시스템 자동복구 디스크를 만드는 것도 이 도구를 통해서 작업한다. NT4.0환경에서 rdisk 라는 도구가 제공되었던 것과 동일하다.

 

백업을 해 보자. 백업마법사를 이용할 수도 있지만 백업탭을 클릭하여 차근차근 접근해 보았다.


<그림11-97. 백업 프로그램 백업과정 1>

 

백업탭을 열어보니 C: D: 등의 드라이브들과 시스템 상태라는 정보가 보인다. 시스템 상태는 여러가지 정보를 포함하고 있다. Active Directory, 레지스트리 등을 백업하려면 시스템 상태를 백업해야 한다. 이것은 개별적으로는 되지 않고 한꺼번에 시스템 상태라는 데이터베이스로써 한꺼번에 백업이 이루어진다. Windows Server 2003 의 백업은 시스템 상태 데이터베이스에 대해서는 원격백업을 지원하지 않는다. A에서 B의 시스템상태 데이터를 백업하지는 못한다는 것을 뜻한다. 각각 로컬백업을 해야 한다. 하지만 파일시스템에 대해서는 원격백업을 지원하는데 그러기 위해서는 먼저 원격서버에 있는 백업할 폴더에 대한 드라이브 매핑작업을 해 두어야 한다. (net use x:  \\원격서버이름\공유폴더이름 형태를 사용하면 된다.)

 

예제에서는 D: 전체와 시스템 상태를 백업하고자 선택했다. 아래쪽에 백업이 저장될 위치는 비활성화 되어 있다. 백업디바이스가 없기 때문에 파일로 고정되어 있는 것이다. ‘백업 미디어 또는 파일이름에 백업파일이 저장될 위치와 파일이름을 입력하고 [백업시작]버튼을 누른다.

 


<그림11-98. 백업 프로그램 백업과정 2>

 

백업작업정보화면에서는 기존에 존재하는 백업이 있을 때 덮어쓸 것인지, 덧붙여 계속 백업을 쓸 것인지를 결정한다. [백업시작]버튼을 누르면 바로 백업을 시작한다. 많이 간단하다. 추가로 백업프로그램을 살펴보기 위해 [고급]버튼을 클릭한다.


<그림11-99. 백업 프로그램 백업과정 3>

 

백업 종류를 보여주는 화면이 보이는데 중요한 정보이다. 백업 종류를 어떻게 결정하느냐에 따라서 백업의 성능, 테이프나 파일시스템 공간의 사용량, 복원시 편리성 등이 결정되기 때문이다.

 

※ 백업 타입의 이해

 

마이크로소프트가 백업프로그램에서 지원하는 백업종류는 5가지가 있다. 각각의 백업종류에 따라서 어떻게 백업이 되는지를 이해하는 것은 중요하다. 일반, 복사, 증분, 차등, 매일 백업에 대해서 살펴본다.

백업종류

무엇이 백업되는가?

백업표시

일반(Normal)

백업하겠다고 체크한 모든 파일과 폴더가 백업된다.

한다

복사(Copy)

안한다

증분(Incremental)

백업하겠다고 체크한 모든 파일과 폴더중에서

이전에 백업한 후에 바뀐 파일과 폴더만 백업한다.

한다

차등(Differential)

안한다

매일(Daily)

그날그날 바뀐 파일과 폴더를 백업한다.

한다

 

표로 정리해 보았다. 특이하게도 일반과 복사, 증분과 차등은 각각 백업방법이 동일하다. 다만 백업표시를 하고 안하고의 차이만 있을 뿐이다. 백업표시를 하고 안하고의 차이는 아주 크다. 예를 들어 월요일에 a 라는 파일을 백업하였다면 화요일에 백업을 할때는 a 라는 파일이 화요일에 사용자가 접근하여 파일을 변경하였다면 다시 백업을 하겠지만 월요일에 백업한 파일의 내용과 변화가 없다면 백업을 중복해서 하지는 않겠다는 것을 의미한다. 아래의 그림을 보면서 차이점을 이해해 보자.


<그림11-100. 증분백업의 이해>

 

예제를 보면 a,b,c,d 라는 네개의 파일이 나온다. 매일 백업을 하는데 백업종류가 다르다는 것을 알 수 있다. 월요일에는 일반백업을 했다. 위의 표에서 설명한대로 일반백업은 선택한 모든 파일을 백업한다는 것을 알고 있다. 중요한것은 일반백업은 백업후 백업한 파일에 백업을 하였다는 표시를 한다는 것이다. 화요일에 b가 변경되고 d가 새롭게 추가되었다. a c는 월요일 백업한 이후로 변경이 되지 않았다. 화요일에 증분백업을 선택해서 백업을 했을때는 b d만 백업이 되고 a c는 백업이 되지 않는다. 증분백업과 차등백업은 백업하겠다고 체크한 모든 파일과 폴더중에서 이전에 백업한 후에 바뀐 파일과 폴더만 백업한다.”는 설명을 기억하라. 그리고 나서 증분백업은 역시 자신이 백업한 파일에 대해서 표시를 한다. 그 결과 a만 변경된 수요일에 증분백업을 이용한 백업은 a만 백업되는 결과를 가져온다.

 

이렇게 증분백업은 변경되지 않은 파일의 중복백업을 피하게 되며 시간, 테이프 등의 절약효과를 주게 된다. 장점만 있는 것은 아니다. 데이터에 문제가 생겨서 복원을 해야 할 경우는 조금 번거로워 진다. 이 경우에 만일 목요일에 디스크가 망가져서 데이터가 전체가 유실되었을 때 수요일까지의 데이터를 복구하기 위해서는 월요일, 화요일, 수요일, 각각 백업했던 백업테이프를 차례대로 반복해가며 복원을 해야 완전한 복구가 가능할 것이기 때문이다.

아래의 예제로써 차등백업도 살펴보자.


<그림11-101. 차등백업의 이해>

 

두번째 예제에서는 화요일부터 백업유형만 증분백업에서 차등백업으로 바뀐 것을 확인할 수 있다. 화요일까지의 백업은 앞의 예제와 다를바가 없다. 다만 화요일의 백업인 차등백업은 백업을 마치고 나서 자신이 백업한 파일에 대해서 표시를 하지 않는다. 그 결과 a만 변경된 수요일에 차등백업을 이용한 백업은 화요일의 백업을 알지 못하기에 화요일에 변경되었던 b d까지도 백업을 하여 결국 a, b, d를 백업되는 결과를 가져온다. 결론적으로 수요일 백업테이프 안에는 화요일에 백업한 파일이 중복되어 저장되는 형태가 된다. 불필요하게 생각될 수 있지만 이것은 증분백업에 비해 복원시 편리성을 제공한다. 같은 상황에서 수요일까지의 데이터를 완전복구하기 위해서는 월요일테이프와 수요일 테이프만 있으면 되기 때문이다.

 

증분백업과 차등백업의 차이를 이해하겠는가? 마이크로소프트는 이러한 백업형식을 자사의 대부분의 제품에서 지원하고 있으니 잘 정리해두면 다른 제품을 공부할때도 보다 수월해 질 것이다.

 

한가지 다른 측면을 고려해 보자. 위에서 일반백업과 증분백업은 백업후 표시를 한다라는 표현을 했고 복사와 차등백업은 표시를 하지 않는다라고 표현했는데 이것이 실제로는 어떻게 한다는 것일까?

 

그것은 파일의 속성과 관련이 있다. 윈도우 탐색기를 이용해 파일의 등록정보를 열어보면 보관가능이라는 속성이 있다. 이 속성은 파일이 변경이 되는 시점에서 자동으로 체크된다.

 


<그림11-102. 보관가능(Archive) 속성의 이해>

 

백업프로그램의 일반백업과 증분백업이 백업을 한 후에, 백업했다는 표시를 한다는 것은 바로 이 속성의 체크박스를 비우는 작업을 의미한다. 백업후 이 속성의 체크상자가 지워지고 난 후, 사용자가 접근하여 이 파일의 데이터를 변경했다면 다시 이 속성은 체크될 것이고 다음번 백업할때 증분백업이나 차등백업을 하게 되면 이 파일은 백업되게 된다. “이전에 백업한 후에 바뀐 파일과 폴더만 백업한다.”라고 한 표현은 이러한 특성을 의미하는 것이다.

 

 

백업종류를 결정하고 [확인]버튼을 누른 후 [백업 시작]버튼을 누르면 백업이 시작된다.


<그림11-103. 백업 프로그램 백업과정 4>

 

백업이 진행되는 상태를 보여주는 화면이다.


<그림11-104. 백업 프로그램 백업과정 5>

 

백업을 마쳤다. [보고서]버튼을 클릭하여 백업이 제대로 되었는지, 어떠한 파일과 폴더가 백업이 되었는지 살펴본다.


:
Posted by 새벽예찬

서버의 성능을 파악하여 업그레이드나 서버증설 여부를 파악하는 것도 필요하다. 막연하게 메모리가 부족한가? CPU가 느린가? 등으로 생각하기보다는 실질적인 수치를 기록하여 근거치를 마련할 필요가 있기 때문이다. 이러한 자료는 재무부서에 근거치로 제시하여 현실적인 판단을 할 수 있는 자료로 사용될 수 있을 것이다.

 

성능모니터의 기능을 3가지로 나누어서 접근해 보았다. 먼저 실시간으로 현재 상태를 파악하는 방법, 둘째로 회사에서 기준치를 마련하여 향후 비교할 수 있는 근거를 마련하는 방법, 마지막으로 경고를 설정하여 일정 수준에 이르렀을 때 관리자에게 통보를 한다거나 서버에서 특별한 파일을 실행하는 등 조치를 취할 수 있도록 하는 기능에 대해서 살펴보겠다.

 

11-3-4-1.현재 상태를 실시간으로 점검해 보자.

 

갑자기 서버의 응답속도가 느려졌다는 사용자들의 불평이 늘기 시작했다. 도대체 뭐가 문제인지 막연하기만 할 뿐이다. 이 경우 현 시점의 서버의 상태를 실시간으로 체크해 볼 필요가 있다. 먼저 관리도구-성능을 실행하거나 실행창에서 Perfmon 이라고 입력한다.


<그림11-59. 성능 모니터>

성능 모니터가 열렸다. 왼쪽 패널을 보면 세가지로 분류해 볼 수 있다. ‘시스템 모니터를 클릭하여 실시간 서버상태를 볼 수 있고, 아래쪽에는 로그와 경고를 볼 수 있다. 오른쪽 패널에는 실시간 수치가 나오게 될 화면이다. 하지만 아무것도 없다. 당연한 일이지만 무엇을 모니터링 할것인지를 결정해 주어야 한다. 화면에서 + 버튼을 누른다.

 


<그림11-60. 성능모니터 - 카운터 추가 화면1>

카운터 추가 화면이 열리는데 이것은 개체, 카운터, 인스턴스 라는 세가지 항목으로 나뉘어 있다.

 

개체는 모니터링 대상을 의미한다. 메모리, CPU, 서비스, 네트워크 등 어떤 대상을 모니터링 할것인지를 성능 개체에서 선택한다. 많은 성능개체들이 있고, 성능개체를 선택할때마다 카운터들도 달라진다. 카운터는 해당 개체중에서 어떠한 수치를 모니터하고 싶은지를 결정한다. 예를 들어 메모리라는 개체를 모니터링 한다면 현재 사용중인 메모리를 측정하고 싶은것인지, 남아있는 메모리를 측정하고 싶은 것인지, 원하는 수치가 있을 것이다. 그것이 바로 카운터이다. 마지막으로 인스턴스는 개체에 대한 구체적인 대상을 뜻한다. 예를 들어 프로세서(CPU)’를 모니터링 한다고 할 때 만일 당신의 시스템이 CPU 2개 가진 시스템이었다면 인스턴스는 _Total, 0, 1 이렇게 세가지 인스턴스를 보여준다. CPU전체를 모두 모니터링 할것인지, 특별한 CPU만 모니터링 할 것인지를 결정하는 것이다. 그것이 인스턴스이다.


<그림11-61. 성능모니터 - 카운터 추가 화면2>

일일이 외워서 쓰기에는 너무나 많은 개체가 있고, 거기에 따른 카운터가 존재한다. 다행히 성능 모니터 도구에서는 어떤 개체를 선택하게 되면 가장 많이 사용되게 되는 필수적인 카운터들이 기본적으로 하이라이트되어 있는 것을 알 수 있다. 그것을 모니터링 하는 것이 우선이다. 개체, 카운터, 인스턴스를 결정하고 나면 [추가]버튼을 누른다. 몇가지를 추가한 다음 [닫기]버튼을 눌렀다.

 

<그림11-62. 성능모니터 카운터가 추가된 화면>

카운터를 추가하고 나면 <그림11-62>와 같은 화면을 만날수 있다. 기본값인 1초 간격으로 실시간으로 그래프가 움직이는 것을 확인할 수 있다. 모니터링 하는 동안에 평균치도 보여주며 최소값, 최대값 등도 볼 수 있다. 화면에 보여지는 정보를 등록정보버튼을 눌러서 조절할 수 있다. 그림에서 O으로 표기한 부분인 등록정보를 클릭하였다.

 

 


<그림11-63. 성능모니터 등록정보>

그래프 탭을 열고 세로눈금가로눈금을 체크하였다.

 

 


<그림11-64. 성능모니터 등록정보가 수정된 화면>

등록정보에서 옵션을 바꾼것과 같이 이제 그래프에는 가로, 세로 눈금이 표기된 것이 보인다.

 

 


<그림11-65. 성능모니터 히스토그램 보기>

기본적으로 성능모니터는 차트형태로 실시간 데이터를 보여주는데 추가로 두가지를 더 지원한다. <그림11-65>는 도구모음중에서 히스토그램 보기를 선택하여 막대그래프 형태로 보여주는 화면을 볼 수 있다. 단지 보기형태만 달라진 것일 뿐이다.

 

 


<그림11-66. 성능모니터 보고서 보기>

다시 보고서 보기를 선택하여 실시간 데이터를 보고서 형태로 보여지도록 설정하였다. 보고서 형태에서 1초 간격으로 계속 변경되는 데이터를 확인할 수 있다.

 


<그림11-67. 성능모니터 차트 보기>

다시 차트 보기를 선택하여 기본설정으로 돌아왔다. 색깔이 다르게 표현되기는 하지만 많은 카운터를 모니터링 하다 보면 원하는 카운터에 대한 그래프가 쉽게 눈에 들어오지 않는다. 이 경우 [Ctrl+H]를 누른다.

 

 

 


<그림11-68. 특정 카운터를 하이라이트한 화면>
 

[Ctrl+H]를 누르면 현재 선택한 카운터에 해당하는 그래프만 하이라이트되어 보인다. 구별이 쉬워진다.

 


<그림11-69. 성능모니터 카운터 재 추가 화면>

현재 추가한 카운터에서 새롭게 카운터를 더 추가하려면 <그림11-69>에서 보는것처럼 카운터의 종류가 있는 창에서 마우스 오른쪽 단추를 이용하여 카운터 추가를 선택하면 된다.

 

 

 


<그림11-70. 성능모니터 카운터 수치 저장>

또한 이 자료를 Html 포맷으로 저장하여 웹브라우저를 통해서 들여다 볼 수도 있는데 보고자료를 만들 때 유용하게 쓸 수 있다.

 

 


<그림11-71. 성능모니터 카운터 수치를 웹페이지로 저장>

파일 형식에서 웹 페이지(*.htm)’을 선택한후 test 라고 이름을 붙였다.

 

 


<그림11-72. 성능모니터 웹페이지로 본 성능모니터>

웹브라우저를 통해서 그래프를 그대로 들여다 볼 수 있다. 단순한 하나의 html 파일이지만 버튼을 클릭하여 다른 타입의 그래프를 볼 수도 있고, 카운터를 클릭하고 그 카운터에 대한 수치를 확인할 수도 있다. 모니터링 하고 있는 서버와 연결되어 도구모음의 카메라 모양의 버튼을 이용하여 데이터 업데이트를 시키면 현 시점의 정보를 가져올 수도 있다 

 

 

대부분의 개체와 카운터는 기본적으로 활성화되어 있지만 디스크 관련 성능카운터들은 시스템시작과 함께 설정되어 있지 않은 것들이 있다. 필요하다면 diskperf 도구를 이용하여 카운터 설정을 바꿔줄 수 있다. <그림11-73>을 참고한다.


<그림11-73. 성능모니터 디스크 카운터 추가>

 

그림에서는 diskperf /? 를 이용하여 사용법을 알아본 다음 diskperf –YV 를 이용하여 시스템이 부팅할 때 논리, 물리 디스크 성능 카운터를 사용할 수 있도록 설정하였다.

ㅇ 병목현상을 파악하기 위한 기본 카운터들

 

수많은 카운터들이 있지만 그중에서도 특히 어떤 카운터를 모니터링 할 것인가는 막연한 문제가 아닐수 없다. 현실적으로 뚜렷한 객관적인 수치를 내 세우기는 어렵지만 체크해 봐야할 카운터들과 각 카운터에서 허용되는 수치 및 문제판단시 조치사항들에 대해서 정리를 해 본다.

성능개체\카운터

권장방향

허용수치

조치해야 할 사항

Memory\Pages/sec

낮은값

0-20

RAM추가 / 서버분산 고려

Memory\Available Bytes

낮은값

최소 4MB

Memory\Committed Bytes

낮은값

실제 RAM보다 낮아야함

Memory\Pool Non-Paged Bytes

-

지속적으로 평행선 유지

프로세스의 이상 유무 검토

Processor\%Processor Time

낮은값

80% 이하

프로세서 시간을 차지하는 프로세스 확인/프로세서 업그레이드(파일,프린트서버) 추가고려(응용프로그램서버), 서버분산,

인터럽트를 유발시키는 카드확인 / 대체

Processor\%Privileged Time

낮은값

75% 이하

Processor\%User Time

낮은값

75% 이하

Server Work Queues\Queue Length

낮은값

2 이하

System\Processor Queue Length

낮은값

2 이하

Processor\Interrupts/sec

낮은값

-

PhysicalDisk\% Disk Time

낮은값

50% 이하

페이징이 발생하는지 확인한다. 페이징 문제라면 메모리 성능을 다시 점검하고, 페이징 문제가 아니라면 디스크 서브시스템을 업그레이드 한다.

PhysicalDisk\

     Current Disk Queue Length

낮은값

0-2

디스크 서브 시스템을 업그레이드한다.

PhysicalDisk\

     Avg. Disk Bytes/Transfer

낮은값

-

PhysicalDisk\Disk Bytes/sec

낮은값

-

Server\Bytes Total/sec

높은값

-

네트워크 어댑터 추가 고려/

물리적인 네트워크 업그레이드/

네트워크 분할 고려

Server\Logon/sec

높은값

-

Server\Logon Total

높은값

-

Network Interface\Bytes Sent/sec

높은값

-

Network Interface\Bytes Total/sec

높은값

-

* 참고자료 : Microsoft Technet 사이트

 

 

11-3-4-2. 기준치(Baseline)를 마련하자. (성능모니터 카운터 로그)

 

앞에서는 실시간으로 서버를 모니터링한 수치를 들여다 보았다. 어느날 사용자들이 네트워크가 서버가 너무나 느리다고 불평을 하고 있다고 가정을 해 보자. 그럴때 당신은 어떤 작업을 해야 하는가? 서버가 왜 느린 것인지를 판단하기 위해 성능 모니터를 열고 몇가지 카운터를 추가해 보았다. 하지만 그러한 카운터만으로 서버가 어디에 문제가 생긴것인지를 판단한다는 것은 너무나 막연하지 않은가? , 막연히 CPU가 느려서일거라는 판단에 CPU를 업그레이드했지만 여전히 서버는 나아진 성능을 제공해 주지 못하고 있다면 누구를 나무랄 것인가? 그러한 경우에 판단근거로 삼을 수 있는 근거치가 필요해 지는데 서버가 잘 동작할 때 카운터들을 기록해 두었다가 서버가 문제가 생겼다고 판단되는 시점에서 해당 카운터들을 다시 모니터링 해 본다면 기준치와의 차이점을 발견할 수 있을 것이다. 그렇다면 그 카운터에 해당하는 개체가 바로 시스템에서 병목현상을 일으키고 있는 주범이라고 할 수 있을 것이다.

 

CPU는 지속적으로 80%이상 사용되어서는 곤란하다거나 하는 식의 객관적인 수치는 현실성이 떨어진다. 회사의 상황에 따라서 얼마든지 달라질 수 있는 판단이기 때문에 그러한 객관적인 수치는 어디까지나 일반적인 판단일 뿐이고 여러분의 회사 나름대로의 기준치를 마련하는 것은 필수적인 작업이라고 할 수 있다.

 

이러한 경우에는 성능 모니터의 카운터 로그기능을 사용하여 일정시간동안 서버의 성능 카운터들을 로깅하여 기준치를 마련할 수 있다


<그림11-74. 카운터 로그 설정 1>

성능모니터를 열고 왼쪽패널에서 카운터 로그를 마우스 오른쪽 클릭하여 새 로그 설정을 실행한다.

 


<그림11-75. 카운터 로그 설정 2>

새 로그 설정 화면에서 로그의 이름을 입력했다. 예제에서는 ‘My Log’라고 하였다.


<그림11-76. 카운터 로그 설정 3>

[추가]버튼을 눌러서 로깅하고자 하는 카운터를 선택한다. 다양하게 선택하는 것이 좋다. 특히 서버의 성능판단에 큰 요인이 되는 메모리, 프로세서, 물리디스크 등의 개체에 대해서는 전체 카운터들을 추가하였다. 데이터 샘플 간격에 따라서 카운터 수치를 측정하는 회수가 달라진다. 이 간격이 짧을수록 자주 카운터를 측정할 테니 정확한 데이터를 산출할 수 있다고 생각할 수도 있겠지만 특정시간대에 서버의 수치가 지나치게 높다거나 했을 때 그 시간대의 수치가 평균치를 높일 수도 있다는 것을 고려해야 한다. 1분 간격을 설정하면 하루에 1,440번 카운터 수치를 기록할 것이다. 2분 정도로 설정할 것을 권장한다.


<그림11-77. 카운터 로그 설정 4>

다음엔 로그파일 탭으로 이동하여 로그파일 종류를 선택하였다. 필자는 CSV 타입으로 선택하였다. 마이크로소프트의 엑셀프로그램으로 읽을 수 있는 파일타입이다. 엑셀 형태로 데이터를 뽑아 낼 수 있다면 당신이 맘 먹는대로 데이터 변환이 가능할 것이다. 또한 차트나 각종 테이블을 만드는데 아주 유용하게 쓰일 수 있다.

 


<그림11-78. 카운터 로그 설정 5>

마지막으로 일정탭을 열어서 로그시작시간과 로그중지 시간을 설정하였다. 측정을 하는 대상이 회사에서 쓰는 파일서버라고 가정하면 직원들이 한참 접근하여 쓰는 시간이 중요할 것이다. 그때는 오전9부터 오후 5까지 정도를 측정한다. 이렇게 3일 정도를 계속 측정해 볼 것이다. 그렇게 하면 어느정도 정확한 평균치를 구해낼 수 있을 것이다. 시작시간과 중지시간을 스케쥴 할 수도 있고, 수동으로 작업할 수도 있다. 예제에서는 수동으로를 선택하였다.


<그림11-79. 카운터 로그 설정 6>

[확인]버튼을 눌러서 마치고 나오니 오른쪽 패널에 My Log 라는 로그가 하나 추가된 것을 확인할 수 있다. 마우스 오른쪽 클릭하여 시작을 누르면 로깅이 시작된다.

 


<그림11-80. 카운터 로그 설정 7>

원하는 시간까지 로깅을 하고 나면 같은 방법으로 중지를 눌러서 로깅을 마친다.

 

 


<그림11-81. 카운터 로그 설정 8>

이렇게 로깅된 파일은 시스템 모니터를 통해서 확인할 수 있다. 시스템 모니터를 클릭하고 도구모음 중에서 로그 파일 데이터 보기를 선택하였다<그림11-81>.

 


<그림11-82. 카운터 로그 설정 9>

저장된 위치에서 로그파일을 선택하고 [열기]를 클릭한다.

 


<그림11-83. 카운터 로그 설정 10>

예제에서 파일을 열었지만 달라진 것이 없어보인다. 다시 + 버튼을 눌러서 로깅된 파일에서 원하는 카운터를 들여다 봐야 한다. + 버튼을 눌렀다.

 


<그림11-84. 카운터 로그 설정 11>

성능개체를 클릭하니 처음 했던 것과는 달리 몇가지 밖에 안 나오는 것에 주목하자. 이것은 실시간 데이터를 보기 위한 것이 아니라 로깅파일로부터 보는 것이기 때문에 모든 개체가 아니라 로깅할 때 선택했던 개체와 카운터에 대해서만 볼 수가 있는 것이다.

 


<그림11-85. 카운터 로그 설정 12>

보고자 하는 카운터를 선택하니 <그림11-85>와 같은 화면이 열린다. 이것은 일정시간동안 로깅된 정보를 보여준다.

 


<그림11-86. 카운터 로그 설정 13>

멋진 옵션이 숨어있다. 왼쪽패널의 시스템 모니터의 등록정보를 열고 원본탭을 열면 시간범위를 지정할 수 있다. 로깅된 전체데이터중에서 보고자 하는 시간동안의 데이터만 선택하여 보는 것도 가능하다.

 

보기 범위를 조정한 다음 [확인]버튼을 눌렀다.


<그림11-87. 카운터 로그 설정 14>

<그림11-87>에서는 선택된 시간동안의 데이터만 보여주는 것을 확인할 수 있다. CSV 포맷으로 로깅되었으므로 이렇게 성능 모니터를 통해서 들여다 볼 수도 있지만 Excel 프로그램에서 불러와서 수치를 놓고 원하는 데이터를 만들어 낼 수 있을 것이다.

 

<참고> 무엇을 측정하여 기준치를 마련할 것인가?

측정할 자원

측정할 성능개체

메모리

Memory, Cache

프로세서(CPU)

Processor, System, Server Work Queues

디스크 서브시스템

Physical Disk, Logical Disk

네트워크 서브시스템

Server, Network Interface, Network Segment

기타

SQL Server, WINS Server, Browser, 기타 성능개체들

 

11-3-4-3. 네 상태를 내게 알려줘? (성능모니터 경고기능)

 

서버가 현재 어떤 상태에 놓였는지는 서버가 다운이 되었다거나 해서 응답이 없을때까지 모르는 것이 일반적인 상황이다. 하드디스크의 여유공간이 얼마 남지 않았다든가 서버가 바이러스에 감염되어 CPU활용도가 지속적으로 99%에 이르렀다거나 메모리 사용량이 많아서 지속적으로 페이징이 발생하여 메모리의 업그레이드나 어플리케이션의 분산을 고려해야 한다면 문제가 발생했을 때 관리자는 그러한 사실을 바로 알고자 할 것이다. 그럴때 성능모니터의 경고기능은 유용하다.

 

예제에서는 서버가 CPU 활용시간이 90%이상 넘어가면 관리자에게 알림메시지를 주도록 설정하고자 한다.


<그림11-88. 경고 설정 1>

성능모니터 관리도구에서 왼쪽패널의 경고를 마우스 오른쪽 클릭하여 새 경고 설정을 연다.

 


<그림11-89. 경고 설정 2>

새 경고설정 화면에서 구별할 수 있는 이름을 입력해 준다.

 


<그림11-90. 경고 설정 3>

어떠한 카운터를 모니터링 할 것인지를 결정해야 하는데 예제에서는 Processor 개체의 Processor Time 카운터를 선택했다. ‘값이 다음일 때 경고 표시옆의 드롭다운 콤보박스를 클릭하여 초과를 선택하고, 제한값에는 90 이라고 입력하였다.

 

이때 데이터 샘플 간격은 중요한 의미를 가진다. 서버에서 일시적으로 특별한 어플리케이션이 실행될 때 CPU타임이 90%이상 올라가는 것은 어떻게 보면 당연한 일이라 할 수 있는데 이 데이터 샘플 간격을 너무 짧게 잡으면, 예를 들어 ‘1라고 잡았다면 짧은 순간 CPU타임이 90%이상으로 올라갔을 때 그러한 내용을 측정하여 관리자에게 경고메시지를 보낼 수 있다. 결국 불필요할 정도로 많은 경고 메시지를 받아야 하는 경우도 있을 것이다. 또 이 시간이 너무나 길다면 일정시간 서버가 과도한 CPU사용에 시달리고 있더라도 미처 측정이 되지 않는 경우가 발생할 것이기 때문에 적당한 수치를 설정해야 할 것이다. 예제에서는 30초 라고 설정하였다.

 

이제 조건은 만들었다. 다음에 해야 할 작업은 이러한 조건에 만족했을때는 어떻게 할것인가라는 액션을 처리해야 한다.


<그림11-91. 경고 설정 4>

작업탭을 열어서 네트워크 메시지를 다음으로 보냄 wssong이라고 관리자가 사용하는 계정을 입력해 주었다. 이 서버는 앞의 조건에 만족하는 상황을 측정했을 때 wssong이라는 사용자 계정에게 메시지를 발송하게 된다. 이때의 wssong NetBIOS Name이다. 다음에 나오는 성능 데이터 로그 시작을 활성화하여 문제가 되는 상황을 발견했을때는 미리 정의된 로그를 시작하도록 설정할 수도 있다. 좋은 옵션이다. 특정한 문제가 발생되는 원인을 다각도로 분석해 보고자 할 때 미리 로그파일을 정의하고 로깅을 하게 되면 차후에 이 문제를 분석해 볼 수 있을 것이다.


<그림11-92. 경고 설정 5>

일정탭을 눌러서 역시 시간설정을 마쳤다.

 


<그림11-93. 경고 설정 6>

[확인]버튼을 눌러서 창을 닫으니 오른쪽 패널에 CPU Limit 라는 경고가 하나 설정된 것이 보인다. 녹색 아이콘이 활성화되어 있음을 보여준다. 이제부터는 이 서버는 30초마다 한차례씩 해당 카운터의 수치를 측정한다.

 


<그림11-94. 경고 설정 7> 

Wssong 으로 로그온한 사용자는 얼마후 다음과 같은 메시지를 받게 되었다. 내용을 읽어보면 BLUESERVER라는 이름의 서버에서 어떠한 상황이 발생했는지를 보여주고 있다.

 


<그림11-95. 경고 설정 8>

서버의 이벤트 뷰어를 열고 응용프로그램 로그를 열어보면 같은 메시지가 로깅된 것을 확인할 수 있다. 이것은 하나의 옵션으로써 구현된 것이다.

:
Posted by 새벽예찬