Linux Samba 의 운영과 Proftp 서버 에러의 시작까지...
▒ 끄적임에 앞서..
본 문서자료는 본인 최광민에 의해 작성된 것이며 자유롭게 재배포가 가능하나 상업적 용도로 사용할수 없습니다. 또한 재배포시 원작성자(본인)의 이름과 자료의 출처를 반드시 명시하여야 하며 절대 원 작성자(본인)와의 별도 협의 없이 본 문서를 바탕으로 한 수정 및 가공을 통한 재배포 행위는 용납하지 않음을 밝힙니다. 위사항들의 위반으로 인해 발생되는 모든 법적 책임은 배포자에게 있음을 알려 드립니다.
2005. 01. 13. - Linuxer광민 -
수정요청 및 문의메일 : help@rootchoi.info
▶ Samba Server의 운영에서 Proftpd 서버의 에러의 시작까지...
필자가 다니는 회사에는 최근 고성능(?) 대량 스캔 복합기가 들어왔다.
요놈이 뭐가 좋냐...
다른건 일반 회사에서 쓰는 복합기와 별다른 차이가 없다만은...
대량의 문서를 매우 빠른시간에 대량스캔하여 PDF 파일이나 JPG등의 이미지 파일로 변환하여 주는 기계인 것이다.
이는 곳 무엇을 의미하느냐...
기업에서 발생하는 모든 문서의 전자문서화가 가능하다는 뜻...
대기업등은 이미 전자문서 환경 체계가 기틀이 잘 잡혀있지만 대부분의 중소기업들은 그렇지 못한것이 현실이다.
필자가 다니는 회사는 규모는 작은 중소기업이지만 IMS(정보화 경영체제) 인증을 공식 인증 받은 정보화 업무시스템이 잘갖추어진 회사이다.
뭐 그러한 연유로 필자도 필자의 회사에서 근무를 하고 있는것이지만 아무튼 매우 좋은 현상인것만은 확실하다.
아무튼 필자의 회사는 짧은 시간동안 기업의 업무 처리프로세스 및 문서환경을 전자화 하기위해 비교적 많은 시간과 투자를 감행하여 현재에 이르러는 거의 모든 업무와 관련된 기안과 보고서등의 품의/상신등을 그룹웨어라는 전자결제 환경을 이용하여 처리하고 있으며 재무/회계관련 업무또한 웹기반 회계/물류/관리 프로그램으로 관리, 각종 회사의 영업과 관련한 영업현황등의 대장 자료 또한 웹기반 프로그램을 이용하여 작성 및 데이터 관리중이다.
한마디로 거의 대부분의 업무와 처리등이 온라인 재택근무가 가능한 환경이며 종이없는 문서환경이 이루어진 것이다.
암튼 좋은거다 ㅡㅡ;;;
.. 말을 하다보니 삼천포로 샌것같다.. ㅡㅡ;;;
아무튼 회사에 이러한 전자문서환경에 도움을 줄수 있는 대량 스캔복합기가 새로이 들어왔다.
그런데...
이 스캔복합기의 문제점이...
독립적인 저장공간이 없다는것...
즉 네트워크 파일시스템을 이용하여 해당 네트워크에 물려있는 윈도우PC나 기타 공유가 가능한 네트워크 파일시스템을 지정하여 그곳에 스캔데이터를 저장하는것이다.
이러한 문제때문에 필자의 회사에서는 이 기계의 이용을 위해 각 업무자들의 PC에 스캔데이터 전용폴더를 만들고 공유권한을 걸어서 사용하게 되었다.
하지만 왠걸...
역시나 우리의 위도우XP는 우리를 실망시키지 않았다.. ㅋ
이놈에 스캔 복합기가 각각의 직원들의 해당 PC에 공유폴더에 계속 접근을 시도하여 물고있는 바람에 스캔업무를 보는대는 지장이 없었을지는 몰라도 각각의 PC들이 느려지는 현상이 생긴것이다.
눈에띄게 느려지는 현상까지는 아니였지만 필자같은 시스템 관리자들이 느끼기에는 신경이 쓰일정도였다...
물론 윈도우의 탓만은 아니겠지만 필자는 이러한 상황의 해결책으로 리눅스 Samba 서버를 대안으로 내세웠다. ㅋㅋ
삼바서버란 일반적으로 리눅스용 파일시스템을 인식하지 못하는 윈도우가 리눅스 서버에 물려있는 디스크와 프린터를 공유하여 쓸수 있도록 만들어진 일종의 공유서버이다.
윈도우가 신경쓰지 않고 못하는 부분은 리눅스는 해내고 있는것이다.
뭐 기본적으로도 리눅스는 윈도우 파티션을 인식하고 내부의 파일또한 읽어드린다.
이놈에 M$ 윈도우 만 유독 리눅스 파일시스템을 인식하지 않는다. ㅡ_ㅡ
뭐 암튼 필자의 회사에는 각종 주업무와 관련되는 DB서버, 웹서버, FTP서버, Mail서버등 말고도 로컬네트워크에서의 활용을 위한 리눅스 서버또한 구축되어있다.
뭐 말이 서버지 펜티엄III 700Mlz 에 메모리 256M 하드 30G 밖에 않되는 구형 PC에 리눅스OS를 설치하여 서버로서 활용하는것이다.
로컬네트워크에서 사용하는 것이기에 크게 사양도 필요하지 않고 어짜피 회사에서 놀고있는 구형 PC가 있길래 TCO 절감과 ROI의 극대화라는 측면에서 필자에 의해 서버화되어 다시 태어난 막강 리눅스 서버이다.. ㅋㅋㅋㅋ
필자는 이 서버에 Samba 서버를 구축하기로 하고 바로 실행에 들어갔다.
구축결과는 대 만족이였다! >>ㅑ~~~~~~~~~~~~~~~
이제 직원들의 각각의 개인PC에 공유폴더(윈도우 공유폴더는 M$에서 인정한 매우 취약한 헛점을 가지고 있는 서비스로 권장하지 않는다.)를 만들어 스캔 복합기를 이용할 필요없이 그냥 네트워크에 인식되어 있는 삼바 스캔데이터 저장용 서버에 들어와서 데이터를 생성관리하면 되는것이다.
또한 역시 리눅스OS 답게 절대 다른 서비스들에게 영향을 끼치지 않고 아직까지 무리없이 잘돌아가고 있다. ㅡ_ㅡv
...
아무튼 오늘 다루고자 하는 Proftpd 서버의 에러와 관련한것이 바로 이 삼바서버의 구축에서 시작된 것이다. 그래서 이렇게 줄줄이 늘어논것이다.
자 이제 본론으로 들어가보자!
▶ Starting ProFTPd : [FAILED] 헐.. 뭐여 ㅡㅡ?
필자는 삼바서버를 구축후 윈도우 네트워크 내에서 알아보기 쉽도록(일반인들은 즉 회사내 다른 직원들은... 삼바서버의 존재를 모른다 ㅡㅡ;;; OS는 무조건 윈도우만 있는줄 안다... ㅡㅡ;;) 삼바서버가 구축되어있는 시스템의 호스트 네임을 바꿔주었다.
일반적으로 hostname 이란 명령으로 시스템의 호스트 네임을 바꿔주기도 하지만 이는 일시적인 변경이기에 시스템 재부팅 후에도 적용시키기 위해 필자는 해당 파일을 직접 수정하여 주었다.
[root@ns2 /]# vi /etc/sysconfig/network
NETWORKING=yes
HOSTNAME=Scan.younginsoc.com
GATEWAY=211.188.120.193
GATEWAYDEV=eth0
[root@ns2 /]# sync
[root@ns2 /]# reboot -t now
...
[root@Scan /]# hostname
Scan.younginsoc.com
[root@Scan /]#
root : 음음 변경이 되었군~ 윤미야~ (회사 여직원 - 참고로 이쁘다 ㅡㅡa) 이제 네트워크 들어가 봐봐 스캔서버라고 뜰꺼야~ ㅋㅋ
이후 몇일뒤 ...
필자는 아침에 출근하여 여전히 잘돌아가고 이상이 없는 서버들을 확인후 흐믓한 미소와 함께 하루를 시작하였다.
"개울가에~ 올챙이 한마리~♪ 꼬물 꼬물~ 헤엄치다~ ♬(필자의 핸드폰 벨소리)"
root : 여보세욤 ㅡㅡ?
필자의 측근(참고로 여자 -0-a) : 응 광민아~ 부탁하나만 하장~
root : 응 뭔데? 뽀뽀? @_@
필자의 측근 : ㅡㅡ+ 죽을래?
root : 으.. 응.. 아니 ㅡㅡ;;
필자의 측근 : 응 다름이 아니라 나 이번에 프로젝트 하나 진행해서 계정이 필요한데 좀 만들어 줄수 있어?
root : 음... 뽀뽀해주면.. ㅡㅡa
필자의 측근 : 야 너 나와 너 어댜! ㅡㅡ+++++++++++++
root : ㅡㅡ;;; 알떠 만들어 주면 되잖아 ㅡㅡ 쳇
이리하여 필자는 측근의 부탁으로 계정발급을 위해 서버를 돌아보던중...
회사업무용 서버는 보안상의 이유로 외부접근을 특정 대역만 접근이 가능하도록 설정을 해놓은 관계로 전자에서 언급하였던 삼바서버를 설치한 슈퍼서버(? ㅡㅡ;;;)에 계정을 만들어주고 외부 접근을 허용토록 하였다.
그리고 파일의 업/다운로드를 서비스하기 위해 Proftpd 서버를 간단하게 설치하였다.
역시 슈퍼컴퓨터인(ㅡㅡ;;;;) 관계로 엄청나게 잘돌아 갈듯 했다.. ㅡㅡ;
root : 음... 이제 한번 가동해 볼까낭 ㅡㅡa
[root@Scan /]# service proftpd start
Starting ProFTPd : - getaddrinfo 'Scan.younginsoc.com' error: Name or service not known
- warning: unable to determine IP address of 'Scan.younginsoc.com'
- error: no valid servers configured
- Fatal: error processing configuration file '/etc/proftpd/proftpd.conf'
[FAILED]
root : 헐... 뭐야.. ㅡㅡ
필자는 당황스러웠다 ㅡㅡ;
root : 뭐지? 뭐야 왜않되는거야.. ㅡㅡ 그리고 뭐라고 또 주절주절되는거야 ㅡㅡ+
이유는 잘몰라도 필자의 짧은 영어실력으로는 그저.. 에러... 네임 서비스가 어쩌고... IP가 연결이 어쩌느니...
이정도 밖에는 눈에 들어오지 않았다.
필자는 한참을 헤메이다 혹시 proftpd.conf 파일의 설정에 오류가 있을수 있다는 생각에 찾아보았지만 역시 멀쩡하였다 ㅡㅡ;;;
root : 흠... 이유가 뭘까..
필자는 짧은 영어 실력을 종합하여 해당 에러를 분석하여 보았다.. ㅡㅡa
Starting ProFTPd : - getaddrinfo ' Scan.younginsoc.com ' error : Name or service not known
ProFTPd 시작 : getaddrinfo 'Scan.younginsoc.com' 에러 : 알려지지 않은 이름 또는 서비스
- warning : unable to determine IP address of ' Scan.younginsoc.com '
- 경고 : 'Scan.younginsoc.com'의 IP 주소를 연결/결정할 수 없습니다
- error : no valid servers configured
- 에러 : 해당 서버들은 구성되지 않습니다.
- Fatal : error processing configuration file ' /etc/proftpd/proftpd.conf '
- 치명적 : 에러 구성 파일 '/etc/proftpd/proftpd.conf' 을 처리하는 것
[ FAILED ]
[실패]
root : 흠.. Scan.younginsoc.com 가 알려지지 않은 이름이라... 이런 미친... 로컬시스템이 다른것도 아니고 호스트 네임을 모른다고 ㅡㅡ?
root : 그렇기 때문에 해당 IP를 구성할수 없고... 그래서 서버를 가동할수 없다 ㅡㅡ?
필자는 긴장을 풀고 곰곰히 생각해 보았다...
root : 흠흠... 로컬 시스템 인데로 호스트 네임을 찾을수 없다라... 호스트 네임은 적용되있는데...
root : 헛 잠깐! 호스트 네임을 찾을수 없다?
필자는 문제의 원인을 직감적으로 집어낼수 있었다..
/etc/host.conf 파일은 로컬시스템에서 IP와 도메인 네임을 찾는 작업을 위해 네임서버와 호스트파일을 검색하기 전에 해당 파일과 서비스의 우선순위를 정하는것이다.
보통 기본값은 보통 order hosts,bind 이다.
즉 /etc/hosts 파일을 기준으로 우선검색한후 해당 정보가 없을경우 바인드 즉 네임서버를 이용하는것이다.
/etc/hosts 파일에는 설정에 따라 다르지만 보통 첫 라인에 로컬시스템을 나타내는 127.0.0.1 에 대한 매칭 값이 입력되어 있다.
# Do not remove the following line, or various programs
# that require network functionality will fail.
127.0.0.1 호스트 네임 localhost.localdomain localhost
필자는 이파일의 이상유무를 체크해보기로 하였다.
[root@Scan /]# vi /etc/hosts
# Do not remove the following line, or various programs
# that require network functionality will fail.
127.0.0.1 Ns2.younginsoc.com Ns2 localhost.localdomain localhost
root : 역시...
삼바서버를 윈도우 네트워크에서 알아보기 쉽게 하기위해 /etc/sysconfig/network 파일의 호스트 명은 바꾸어 주었지만 로컬 시스템을 지칭하는 127.0.0.1 에 대한 매칭을 해주는 /etc/hosts 파일에는 해당정보를 바꿔주지 않은것이 화근이였다.
필자는 해당 부분을 수정해준뒤 다시 Proftpd 서버를 가동 시켜보았다.
# Do not remove the following line, or various programs
# that require network functionality will fail.
127.0.0.1 Scan.younginsoc.com Scan localhost.localdomain localhost
[root@Scan /]# service proftpd restart
Shutting down ProFTPd : [ OK ]
Starting ProFTPd : [ OK ]
[root@Scan /]#
root : 역시... ^ㅡ^v
▒ 마치며 ...
정말 간단하면서도 어이없는 에러...
리눅스란 OS를 다뤄가면서 정말 이러한 어이없는 실수나 생각하지도 못한 요소들로 인해 오류나 에러등을 수없이도 겪어온것 같습니다..
뭐 이부분만 가지고 그렇게 잘라말할수도 없는 문제겠지만..
리눅스라는 OS가 탄생하고 또 나아가는 방향이 세밀한 하드웨어와 시스템의 자유로운 제어이며 설정이기에..
즉 매우 크리티컬한 운영체제이기에 그에 수반하여 좀더 세세한 관심 또한 필수 적인것이 바로 리눅스인것 같습니다..
문제에 봉착했을때 긴장하거나 서두르지 않고 에러 메시지나 로그를 자세히 들여다 보며 분석하는 습관을 갖는 리눅서가 될수있는 독자들이길 바라며 오늘의 리눅스 팁을 마칩니다. ^ㅡ^
출쳐 : 오픈소스와 리눅스 커뮤니티(inuxer 광민)