Media Log



나는 파이썬을 리눅스 서버를 관리하는 유틸리티성 목적으로 사용하곤 하는데
그것은 마침 이 책의 제목과 딱 들어맞았다.

파이썬에는 훌륭하고 쓰기 편한 좋은 모듈들이 많이 있는데, 나는 그런 것들을 잘 꾀고 있질 못해서 이미 있는 모듈인지 모르고 간단하게 구현해서 쓰다가 나중에 그런 모듈이 있다는 것을 알고는 다시 코드를 고친 적들이 몇 번 있었다.

이 책은 나같은 프로그래머들에게 도움을 준다.
하지만 파이썬 전문가들이라면 이미 이 책에서 소개하는 모듈들을 잘 알고 있을 것이다.

좋은 라이브러리와 애플리케이션들을 많이 알고 있다는 것은 프로그래머에게 있어서 아주 중요하다.
프로그래밍 테크닉 뿐만 아니라 이런 지식을 얻기 위해서 시간을 투자하는 것은 충분히 가치가 있는 일이다.

나는 주로 라이브러리나 애플리케이션들의 공식 홈페이지, 개인 블로그들 그리고 포럼의 글들을 RSS로 받아보면서 이런 지식들을 얻곤 하는데, 이 책에서 또한 몰랐었던 몇몇 유용한 모듈들을 알 수 있게 되었다.

그러나 이 책이 모듈만을 소개하는 책은 아니다.
시스템 관리자라면 누구나 한 번쯤 데몬이 죽었을 때 혹은 디스크 용량이 부족할 때 알림 문자나 메일을 받을 수는 없을까? 패키징 관리를 좀 더 편리하게 할 수는 없을까?
여러 서버에 동시에 같은 파일을 올리기가 너무 귀찮은데 편하게 할 수 있는 방법은 없을까?
와 같은 생각들을 해보았을 것이다.

이 책에서는 바로 그러한 고민들을 풀어주는 예제 코드들과 유용한 모듈을 소개한다.
시스템 관리자들은 주로 쉘 스크립트와 네트워킹 그리고 트러블 슈팅 정도만을 공부하곤 하는데, 조금 더 시간을 투자해서 파이썬이나 펄과 같은 언어를 익혀둔다면 전보다 훨씬 훌륭한 고급 관리자가 될 수 있을 것이다.

아래는 이 책에서 나오는 내용들이다.
재미있는 내용이 꽤 많이 있다. 최근 책이라 심지어는 Google Apps Engine이 소개되기도 한다.

3장 문자열 장난
아파치 설정 파일 조작
로그 파싱
ElementTree -XML 파싱

4장 문서화와 레포팅
shelve
문서 조작
이메일 다루기

5장 네트워킹
포트 체크
웹서버 체크
Scapy -패킷 조작 모듈

6장 데이터
fnmatch 모듈 -Unix Filename pattern maching.
glob 모듈 -Unix style pathname pattern expansion

8장 OS soup
PyInotify -파일 변경 감시
구글 애플리케이션 엔진

9장 패키징 관리
http://peak.telecommunity.com/DevCenter/PythonEggs
setuptools
easy_install
eggs

10장 Processes and Concurrency
subprocess 와 popen -프로세스와 파이프 조작

11장 building guis
pyGTK - GUI 개발 라이브러리
Django - 파이썬 웹 프레임워크

12장 Data Persistence
Pickle 단순 직렬화 모듈
PyYAML -YAML 파서

13 커맨드라인
optparse -커맨드 라인 옵션 파서
ConfigParser - 설정 파일 파서