본문 바로가기

IT/리눅스

리눅스와 시스템관리자의 역할

 

 

제 1장. 리눅스와 시스템관리자의 역할

 

 

 

 

1. 시스템관리자

 

 1990년대 초부터 PC 통신이 급속도의 발달과 함께 PC통신의 본격적인 보급과 인터넷의 확산이라는 환경변화가 일어났다. 90년대 초에는 PC 통신의 확산과 함께 XENIX, SCO UNIX, 일반 PC에서도 돌아가도록 되어있는 사설 BBS 라는 것이 굉장히 유행했다. 그에 따라 인터넷 서비스를 위한 서버시스템의 발전과 보급이 폭발적으로 이루어지면서 이를 운영하고 관리하는 시스템관리자의 역할이 부각되고 커지게 되면서 하나의 직업으로 자리를 잡게 되었다.

 

 물론 90년대 이전에도 IBM, SUN Solaris, Compaq의 unix시스템등이 많이 있었고 이들을 운영관리하는 많은 시스템관리자들이 있었다. 그러나 아직까지도 시스템관리자가 실제 어떤 일을 하고 어떻게 업무를 수행하고 있는가를 현실적으로 정확하게 알고 있는 사람이 그다지 많지 않다. 즉, 시스템관리자가 어떠한 상황에서 어떻게 일하고있는가에 대한 정확한 개념을 알고 있는 사람이 많지 않다는 것이다. 우리 나라 현실에서 시스템관리라는 업무가 어떤 직업인가를 보다 현실적으로 이해한다면, 그리고 시스템관리자가 어떤 시간대에 어떤 일을 주로 하는가에 대한 실상을 경험해본다면 아마도 시스템관리에 대한 막연한 환상을 갖게 되지는 않을 것이라 생각한다.

 

 시스템관리자에게는 업무시간이라는 개념이 다소 희박하다. 담당하고 있는 시스템에 언제 어떤 일이 발생할지 아무도 모르기 때문이다. 하드웨어적인 장애로 인하여 시스템이 다운될 수도 있고 악의적인 해킹으로 인하여 시스템장애가 발생할 수도 있는데 그 시간을 예측하기가 매우 힘들다는 것이다. 잘자고 있는 새벽시간에 응급전화를 받고 회사로 나가야 하는 경우가 수도 없이 발생하게 된다는 것을 시스템관리자로 일해본 사람이라면 알 것이다. 얼굴없는 적 (Cracker, Hacker 라고도 함)들과 보이지 않는 힘겨운 싸움을 해야하고 데이터복구 문제로 고객들과 다투어야 할 때도 종종있다. 거의 모든 직업에는 스트레스와 긴장이 없을 수 없겠지만 서버관리자라는 직업에도 긴장과 스트레스가 함께하는 직업이라고 할 수 있다.

 

 물론, 이런 일들은 대부분 전문적인 시스템관리자로만 일을 할 경우에 해당되는 말들이다. 국내 중소규모의 벤쳐업체들에서는 종종 시스템관리업무를 프로그래머나 웹마스터 또는 심지어 웹디자이너가 덤으로 맡게되는 경우가 있다. 즉, 소규모 si 업체, 소규모 웹에이전시 업체, 중소기업의 자체 웹사이트 개발관리등의 경우에는 시스템관리 전담인력이라기 보다는 시스템관리 업무를 추가적으로 해야하는 업무일 경우가 종종 있다는 것이다. 전문 시스템관리자는 전산실을 갖추고 있는 경우나 어느 정도의 규모를 갖추고 있는 인터넷업체에 해당되는 말일 것이다. 이러한 국내의 현실에서 시스템관리를 업으로 하기에는 너무 힘들다라고 느낄 수 있다.

 

 


 

 

 

2. 시스템관리자가 갖추어야 할 것들

 

 시스템관리자는 끊임없는 공부와 연구를 해야하는 직업이다. 계속해서 버전업되는 소프트웨어의 업그레이드 작업도 힘겹지만 끊임없이 발표되는 해킹관련 정보들을 담당하고 있는 시스템에 알맞게 적용하여 보안패치 해야하는 일이 그렇게 쉬운 것만은 결코 아니다. 뿐만 아니라 계속 발표되는 인터넷 신기술들을 시스템에서 사용하도록 하기위하여 패치와 버전업 작업들을 끊임없이 해야하며 서버시스템 관련된 연구와 튜닝 능력 또한 시스템 관리자가 갖추어야할 업무 내용이기도 하다. 무엇보다도 시스템 최적화를 통하여 시스템 성능을 최대로 높이기 위하여 항상 연구하는 자세가 필요하다.

 

 

 그리고 중요한 것은 시스템관리자는 C와 SHELL 프로그램, 그리고 RERL프로그램 정도는 알고 있어야 능력있는 시스템관리자로 인정 받을 수 있으며 고액연봉자가 될 수도 있다.

 

 시스템관리자로 일을 하다 보면 반복적이고 주기적인 작업들이 많다. 이러한 작업을 매번 직접 한다면 시간과 효율성 측면에서 그다지 바람직하다고 할 수 없다. 이런 작업을 자동화하고 시스템을 최적화하기 위하여 쉘 프로그램과 씨 프로그램이 가능해야 한다. 또한 체계적인 세스템관련 리포팅(Reporting)을 하려면 PERL 프로그래밍을 이용하여 작업을 해야하는 경우가 많다. 따라서 전문적인 시스템관리자로 일하려면 이런 프로그래밍 언어들을 습득하여 활용할 수 있어야 한다. 물론 이런 언어들을 몰라도 얼마든지 시스템관리 업무를 수행할 수 있지만 ,필자가 예기하는 것은 시스템관리자로서 고액연봉을 받으면서 끝까지 일을 하려고 할 때에 해당되는 말이다.