일상2011. 6. 18. 17:26
어제 서울국제도서전(6.15~6.19 http://www.sibf.or.kr/)을 구경하러 갔다. 금요일은 직장인들이 도서전을 관람하기 좋게 8시까지 연장되었다. 토요일도 8시까지. 사전등록을 미리해둔터라, 등록확인증을 출력하고 고고. 현장에서는 별다른 과정없이 바로 입장이 가능했다.

2011 서울국제도서전 '문학동네'


가장 크게 기대한 코너는 '세계의 팝업북'이고, 그다음은 '이북'코너였다. 아무튼 기대감을 갖고, 다음 순서로 관람을 했다.

  • 전시장 전체를 짧은 시간에 대략적으로 돌아다녔다. 돌아다닌 후 그 다음에 어디를 볼 것인지를 중점적으로 파악했다.
  • 잡지역사관 : 국내 최초 잡지 부터 개벽, 창조, 청색지 등의 표지를 볼 수 있다.
  • 이북코너 : 기대와 다르게 실망. 색다른게 없었다. 아이패드, 갤럭시탭 위주로 전시. 일반도서, 만화, 동화책 등 다양한 분야별로 전시
  • 우리의 찬란한 기록문화유산전
  • 일러스트레이터스 월 : 역시 굿. 여자분들이 아주 관심이 많았음. 이코너는 하나씩 찬찬히 둘러보시길.
  • 팝업북 : 최고! 빈티지 팝업북부터 국내의 다양한 팝업북까지.
  • 할인 도서 구매한 후 나왔다.

'아부다비국제도서전'에 있는 동화책. 중동지역의 도서들은 책장을 우리와 반대로 넘기더라. 예전 우리 책처럼. 동화책도 반대로 넘겨서 신기했다.

아부다비 국제도서전 동화

아부다비 국제도서전 동화


국내에서 발행한 최초 잡지

북잼의 앱북

나도 책이라구~ 공모양의 책들. 공별로 구기종목의 역사를 담았다.

책읽는사회만들기 앞의 곰돌이


일러스트레이터스 월. 특히 여성분들에게 인기가 있었다. 저는 처음부터 끝까지 위에서 아래로 하나씩 전부 살펴봤다. 10~15분 정도 소요

일러스트레이터스 월

일러스트레이터스 월

'일러스트레이터스 월'의 귀여운 고양이

'일러스트레이터스 월. '못생긴 여자도 여자다. 돈없는 남자도 남자다'



동화책의 그림을 원화로 전시했다.

액자속 그림만 보고는 '아~~ 아름다운 작품이다'라고 생각했다. 그런데, 이게 동화책 속에 들어가 있다는 걸 알고 얼마나 신기하던지. 이제 동화책 그냥 보지는 않을 것 같다. 그림에 스토리를 붙여서 동화책이 되었지만, 그 스토리가 사라져도 아름답다는 것을 알았으니깐.
7분정도 소요. 작품이 몇개 되지 않아서 대충보면 1분도 안 걸릴 걸. ^^ 저는 나오기전에 한번 더 봤음.

동화와 그 원화. '내동생 김점박'

동화와 그 원화

동화와 그 원화. '내 복에 살지요'



드디어 팝업북 코너다. 1900년대 초반의 빈티지 팝업북을 포함한 많은 팝업이 전시되어 있다. 30분 이상
팝업북을 보면, 아이들 계시는 분들은 꼭 가셔야할 것 같다. 하루종일 놀아도 시간가는 줄 모를 것이다. 아이들도 편하게 앉아서 볼 수 있도록 자리가 마련되어 있다. ※ 빈티지 팝업북은 직접 만질 수는 없다.

'세계의 팝업북' 코너

'장화신은 고양이' 팝업북. 1934년, 미국

'루이스 지로드'의 작품. '칠드런즈 에뉴얼 No.2', 1930년대, 영국

'루이스 지로드'의 작품. '칠드런즈 에뉴얼 No.1', 1930년대, 영국

'헤이 디들 디들'. 1940년대, 미국

백설공주. 1960년, 체코

신데렐라. 1967년, 체코

빨간 모자. 1961년, 체코

'국제서커스'. 1887년, 독일

니만 마커스 백화점 100주년 기념 팝업북, 2007년, 미국

외국의 건축관련 팝업북. 그리고, 뒤에 보이는 것처럼 아이들함께 편하게 앉아서 볼 수 있도록 되어 있다.

앙증맞고 귀여운 팝업북

어흥~~



이제 물질적으로 얻어낼(?) 수 있는 것을 살펴보자.

빅이슈 코리아(B26-7, 이벤트홀 1 근처)에서는 'The Big Issue'잡지 1주년 기념으로 무료로 배포하고 있었다.
2월호, 3월호, 4월호 3종의 과월호를 배포한다. 여러부씩 가져가도 된단다. 한번 받아갔는데, 나오기 전에 다시 한번 돌아다녔는데 '아까 받아갔어요'라고 했더니 '또 가져가셔도 되요.'라고 말씀하시더라. 그러나 추가로 가져오지는 않았다. 각 1부씩만.

빅이슈

벨치즈코리아(C40, 이벤트홀 1 근처)에서는 무료로 치즈를 나눠준다. 맛있음. ^^

치즈 한조각. 동그란 것은 광고.


  • 다산북스(K26) : 부채를 무료로. 필요없어서 안 받았다.
  • 문학동네(J32) : 리퍼브도서를 4천원에 판매. 책 구매하면 고급 포스트잇을 준다. 온라인으로 문학동네 책 사셔보셨던 분들은 어떤 것인지 아실 듯.
  • 열린책들(I26) : 2천원, 4천원, 5천원, 50% 할인. 특히 그리스의 '니코스 카잔차키스'의 책을 좋아하면 가보시길.
  • 열린책들에서는 만5천원 이상 구매하면 '장자끄 상뻬'의 2011년 달력을 준다. 몰랐는데, 계산할 때 줬다.

소설 '좀머씨 이야기'의 삽화를 통해 알게된 '장자끄 쌍뻬'. 장자끄 쌍뻬 달력. 이미 방안에 걸어뒀다.

  • 열린책들에서 만든 책을 책으로 만들었다. 400페이지 가까이 되는데, 요고 보는 재미도 쏠쏠. 계산대 앞에서 무료로 준다.
  • 홍익출판사(J38) : 논어, 맹자 등 고전 도서를 저렴하게

이것만은 꼭 생각하며 도서전을 돌아다니자.

  • 가기전 SNS와 블로그에서 정보를 미리 얻자. 다음은 SNS 검색 방법
  •  저자와의 대화, 체험(팔만대장경 탁본 체험, 팝업북 만들기 체험 등) 시간대를 확인하고 가라. 직장인은 퇴근시간에 이걸 맞추기는 힘들지만.
  • 몸은 가볍게. 저는 출퇴근 가방을 들고 다녀서 무거워서 좀. ^^
  • 서점이나 도서관에서 흔히 볼 수 있는 책이라면, 살펴보는데 시간을 보내지 말라. 굳이 여기서 살펴볼 필요가 없다. 다른 곳을 관람하는데 시간을 써라. 흔치 않는 책이라면 조금 다르겠지만.
  • 할인 도서를 구매한다면, 돌아다니는 중간에 사지말라. 무거운 책 들고 다니면 지친다. 전시회를 나올 때에 구매하자. 미리 봐둔 책이 나중에 사려고 했더니 모두 팔렸다면, 운명이다 생각하자. 그렇게 절실하게 봐야할 책이면 돈 더 주고 읽어도 가치있는것 아닌가.
  • 저렴하다고 마구 사지 마라. 여긴 마트가 아니다. 보려고 생각했던 책이나 원하는 부류의 책이 아니면, 책장 자리만 차지한다. 안본다에 한표.
  • 10~30%정도의 할인은 온라인에서도 살 수 있으므로 사지 말자. 당장 읽을 책인가? 아니면, 나중에 진짜 보려고 할 때 사자.
  • 팝업북 중에서 아주 신기한 것은 펼치는 과정을 동영상으로 찍는다. 저는 조카 보여주기 위해서 찍었다.

Posted by 좋은진호
IT이야기2011. 4. 20. 21:02
오리건주 프린빌(Prineville, Oregon)에는 약 30만 square feet크기(9만5천평)의 페이스북(Facebook) 데이터센터가 있다. 현재 절반인 15만 square feet가 운영중이며, 올 하반기에 나머지 절반이 완성될 것이다. 이 데이터센터와 페이스북 서버가 4월초에 Open Compute Project( http://opencompute.org/ )를 통해 공개가 되었다.

[ 페이스북 데이터센터 내부. 출처 : Open Compute Project ]


[ 페이스북 서버 샤시. 출처 : Open Compute Project ]


[ 페이스북 서버 조립. 출처 : Open Compute Project의 동영상 중에서 ]


페이스북 서버에 간략하게 요약하면.
  • 1U보다 더 큰 1.5U 크기의 서버. 그래서 보다 큰 방열판과 팬을 사용하여 온도 효율성이 높아졌다.
  • 샤시는 심플하다. 페이스북은 '무허영심(vanity free)'이라고 표현했다. 멋진 말이다. 군살을 쏙 뺀 반드시 필요한것만 들어있는 구조다.
  • AMD보드 : AMD 옵테론 6100시리즈, 24 DIMM 메모리 슬롯
  • 인텔 보드 : 인텔 제온 5500 또는 5600, 18 DIMM 메모리 슬롯
  • 자체 제작한 서버는 구매한 서버보다 38%정도 높은 효율. 24% 저렴
  • 파워서플라이 : 94.5%의 고효율. 2009년 당시 구글서버가 85~90%였다.
  • 전원은 2개가 연결되는데, 하나는 277V AC 주전원(일반적인 208V보다 높은 것은 효율을 위해). 다른 하나는 48V DC 백업전원(48V DC는 캐비넷형태의 UPS에 연결됨). 구글서버는 12V DC전원만 사용한다.
페이스북 데이터센터와 서버에 대해서는 4월 초에 나온 글이 인터넷에 많을 것이니, 추가된 내용들만 적어보겠다.


1. 페이스북 데이터센터의 태양광 시설

페이스북은 이 데이터센터에 태양광발전시설을 구축하여 100KW의 전기를 생산한다. 1년을 기준으로 204,000KWh의 전기를 생산할 것으로 기대하고 있다. 1년 20만KWh라면, 하루 5.6시간을 생산했을 때를 가정한 것 같다.
365일 X 5.6h X 100KW = 약 20만KWh

태양광발전으로 생산되는 에너지는 전체 에너지 사용량에 비하면 비중이 상당히 낮다. 그린피스에서도 에너지 사용면에서 좋지 않은 데이터센터로 지적했다.

[ 페이스북 데이터센터의 태양광 발전시설. 출처 : Swinny.net (URL은 아래 '사진' 출처에) ]


하지만 데이터센터의 에너지 효율은 상당히 높다. 데이터센터의 에너지효율은 PUE수치로 나타내는데, 이 수치가 1에 가까울수록 높은 효율을 나타낸다. 구글은 2009년에 평균 PUE가 1.22라는 놀라운 수치를 보였으며, 구글의 데이터센터 중에는 1.1x인 곳도 있다. PUE가 1.2만 되어도 예술의 경지에 이르렀다고 하는데, 페이스북의 새 데이터센터는 놀랍게도 PUE가 1.07이다. 즉, 거의 전력 손실없이 운영되고 있다는 뜻이다.

 
2. 데이터센터 추가 동영상과 사진

금요일에 저널리스트와 프린빌(Prineville) 지역 공무원을 대상으로 페이스북 데이터센터 투어가 있었나보다. Data Center Knowledge의 'Video: Inside Facebook’s Server Room' (2011.4.18) 글에 약 8분짜리 데이터센터 투어 동영상을 볼 수 있다.

[ 페이스북 데이터센터와 Jay Park. 출처 : 위 Data Center Knowledge 동영상 캡쳐 ]

[ 서버 전원부. 하나는 277V AC전원. 하나는 48V DC전원. 출처 : 위 Data Center Knowledge 동영상 캡쳐 ]

[ 페이스북 서버랙. 출처 : 위 Data Center Knowledge 동영상 캡쳐 ]


투어를 시켜준 사람이 'Director of Datacenter Engineering'(데이터센터 엔지니어링 부서 이사 정도?) 'Jay Park'이란 분이다. 전기분야 엔지니어이신데, 미국 교포일까? 이름도 그렇기도 하고, 동영상이나 사진을 보면 우리 나라 사람 같아 보인다.

Rackspace에서 근무하시는 분이 데이터센터를 방문하여 올린 사진도 있다
* Photo tour of Facebook’s new datacenter (Scobleizer 블로그, 2011.4.16)

[ 페이스북 데이터센터 로비의 모니터화면. 출처 : 위 Scobleizer 블로그 ]


로비 모니터에 데이터센터 상태를 모니터링할 수 있는 화면이 있다고 한다. 내부 온도는 18~27도(화씨 66~82도), 습도는 24~41% 정도다. 습도는 적정수준인데, 온도는 높은 구역도 있다. 외부 공기를 끌어다가 냉각을 해서 조금 높은 것일 수도 있겠다. 그리고, 오른쪽 상단에 표시된 현재 PUE는 1.08(?)으로 환상적이다. ^^

페이스북의 다른 데이터센터 사진을 보고 싶다면 타임지(TIME)에서 공개한 사진이 있다. 타임지는 2010년 올해의 인물로 페이스북의 '마크 주커버그(Mark Zuckerberg)'를 선정(2010년 12월중순)했다. 그래서, 타임지는 페이스북의 또다른 데이터센터인 캘리포니아주 산타클라라(Santa Clara, California)의 데이터센터 사진을 일부 제공했었다.
* A Glimpse Inside a Facebook Server Farm - Photo Essays (TIME, 9장의 사진)



* 데이터센터 관련글

- 2009/10/07 - [IT이야기] MS의 시카고 데이터센터 사진 공개
- 2009/04/03 - [IT이야기] 구글 데이터 센터 내부 공개, 그 안을 들여다보자
- 2009/04/10 - [IT이야기] 구글, 구글 서버와 데이터센터 발표자료를 풀 동영상으로 공개
- 구글 데이터센터의 놀라운 전력 효율 (2009.10.27, 커피닉스)
- 애플 신규 데이터센터 (2009.7.16, 커피닉스)
- 애플 신규 데이터센터 (2009.8.14, 커피닉스)
- 터키 이스탄불의 Vodafone 데이터센터, 폭우로 물에 잠겨 (2009.9.16, 커피닉스)

* 서버대수 관련글

- 2010/06/30 - [IT이야기] 페이스북(Facebook)의 서버 대수는 6만대 이상? (서버대수와 데이터센터)
- 2009/06/01 - [IT이야기] 해외 주요 업체의 서버 대수는?
- Facebook 사용자 4억명 돌파, 그리고 서버수 (2010.2.12, 커피닉스)

* 사진

- Solar-powered Facebook Data Center (2011.4.16, 페이스북 태양광 발전시설)
- Inside Facebook’s Not-So-Secret New Data Center (2011.4.7, 페이스북 데이터센터 사진 9장)

Posted by 좋은진호
시스템이야기2011. 4. 8. 13:06
Splunk(스플렁크) 솔루션은 '이런 솔루션이다'라고 하나의 명칭으로 정의하기가 쉽지않다. 그만큼 다양한 기능을 갖고 있고, 활용분야도 넓기 때문이다. 데이터(로그 등) 수집 & 실시간 검색부터 데이터 분석, 모니터링 등에 활용할 수 있는 솔루션으로 생각하면 될 것 같다.

splunk


Splunk는 어떤 기능을 가졌는가?
  • 로그 등 다양한 형태의 데이터를 수집할 수 있다. 데이터 포맷은 따지지 않는다. syslog, 네트웍 장비에서 보내주는 데이터, mail 로그, 오픈소스 IDS인 snort 로그, 웹로그, Nagios, squid, bind, Netflow,  Windows의 이벤트 로그 등 다양하다. 또한 포맷에 상관없이 운영자가 필요시 원하는 데이터를 수집할 수 있다. w, uptime, free등의 명령의 결과를 수집할 수도 있다는 얘기다.
  • 수집된 데이터를 검색할 수 있다.

splunk search

[ Splunk의 검색창 ]


  • 다양한 검색어를 지원한다. (정말 많다. ^^ : Search Reference Manual )
  • 검색된 결과를 그래프 또는 도표로 볼 수 있다. (보고서 기능)
  • 그래프, 도표들을 모아서 한페이지에서 모니터링을 할 수 있다. (대시보드)
  • 제공되는 다양한 apps를 설치할 수 있다. Splunk를 하나의 플랫폼으로 생각하면 된다. iOS,안드로이드가 하나의 플랫폼이고, 거기에 apps를 설치하는 것처럼.
  • 검색어를 지정해두고, 실시간 데이터에서 이 것을 찾게되면 alert되도록 설정을 할 수 있다. (error 로그가 검색되면 alert되도록 하면 좋다.)
  • 실시간으로 로그를 볼 수 있다. (쉘에서 tail -f 한 것처럼)
  • 시간지정이 가능하다. (최근 몇분에서 몇시간, 전체, 또는 특정일부터 특정일까지 등 다양하다.)
  • 한글화가 되어 있다.
2달동안 무료로 사용할 수 있는 버전을 Splunk 사이트( http://www.splunk.com/ )에서 받을 수 있다. 1일 500MB 데이터로 제한되어 있다. 설치와 Splunk 실행은 설명할 필요도 없이 간단하다.

Splunk 개략적 이용 과정은 이렇다.

데이터 수집 → 검색 유용한 필드 추출 보고서 작성 대시보드 생성

1. 어떠한 데이터를 수집할 것인지를 설정한다. (데이터 추가하기)
2. 수집된 데이터를 검색해본다.

이단계까지는 누구나 쉽게 할 수 있다. 여기까지만 이용하면 데이터 수집과 검색 용도로만 사용하게 되는 것이다. 이제부터 중요하다.

3. 의미있는 보고서(그래프나 도표)를 만들기 위해서는 수집된 데이터의 포맷을 파악해야 한다.
   이를 테면 네트웍 로그중에서 어떤 source IP를 많이 차단했는지, 어떤 프로토콜(TCP, UDP, ICMP 등) 비율이 많은지를 알고 싶다고 하자.
   로그 중에 Source IP가 있는 위치와 프로토콜이 있는 필드를 알아야 한다.
4. 로그 포맷을 파악하고, 정규식을 사용하여 필드 패턴을 추출한다. 추출한 패턴을 저장한다.
   정규식을 몰라도 필드 추출을 할 수 있도록 똑똑하게 만들어놨다. 그렇지만 정규식을 알면, 보다 정확하고 유연하게 적용이 가능하다. 
5. 이제 어떤 데이터를 통계화하여 볼 것인지 조건문(검색어)을 만들면 된다. 예를 들면 다음 처럼.

   host="network" denied | top ACL_denied_icmp limit=20 또는
   host="network" denied | top 20 ACL_denied_icmp

   로그 중에 denied 단어를 검색하고, 검색 결과에서 ACL_denied_icmp필드를 기준으로 상위 20개를 보여달라는 뜻이다.

splunk search

[ 검색어를 입력하여 통계화할 때(윗부분), 왼쪽 필드를 클릭했을 때(아래부분) ]

   위의 조건문을 모르더라도 통계화하는 방법을 제공한다. 얼마나 좋은가? 검색창 왼쪽 하단에 '선택된 필드'항목을 클릭하면 TOP 10조건을 보여준다.

6. 검색 결과를 보고서로 만든다. ('보고서 보기')
   이 때 보고서는 다양한 형태의 그래프 모양과 도표 등으로 표시를 할 수 있다.
7. 여러 검색 조건을 저장해두고 이를 모아서 대쉬보드를 만든다.

splunk dashboard

[ 트래픽 차단 대시보드의 일부분 (네트웍 장비(방화벽 등)에서 받은 데이터를 활용) ]



splunk dashboard

[ ID별 ssh login 대시보드 일부분 (syslog를 통해 받은 로그를 활용) ]


어느 정도 사용하다보면, 본인이 직접 apps를 만들 수 있을 것이다. 그리고 필드명, 검색어명, 대쉬보드명 등의 네이밍 요령도 생길 것이다.
XML를 사용하여 더 세세하게 설정할 수도 있을 것이다.

운영하면서 느낀 몇가지를 적는다.

  • 데이터가 많으면 속도가 느려졌다. '빠르다'라는 말만 강조하던 Splunk이지만, '빠르지만 느려지기도 하다'로 이해하면 될 것 같다.
  • 검색 대상시간은 전체보다는 1일, 7일, 4시간 등 특정 시간으로 제한하는게 효과적이다.
  • 웹로그를 수집하지는 말자. 한두대의 서버의 로그만 샘플링으로 수집한다고 하더라도 엄청난 양이 된다.  Splunk가 다른 일을 할 수 있도록 힘을 빼지 않는게 좋을 것이다. 웹로그 분석은 전용 서비스나 솔루션을 이용하는게 낫다.
  • SNMP로 데이터를 가져오는 부분이 보이지 않는다. (모르는 건가 없는건가)
  • 쉘에서도 검색할 수 있다.
  (예) ./splunk search '검색어' -auth (처음 한번은 인증과정이 필요해서 -auth사용)
  이를 활용하면 특정 조건(error 또는 지정한 임계치)이 발생하면 스크립트를 호출할 수 있다.
  또는 주기적으로 특정 검색 결과를 .txt(csv)로 저장할 수도 있다.

  #!/bin/bash
  CURR=`date +'%Y_%m%d_%H'`

  cd $SPLUNK_HOME/bin
  ./splunk search "denied udp | top ACL_denied_udp limit=10 | outputcsv denied_UDP_${CURR}" -auth

  $SPLUNK_HOME/var/run/splunk/ 경로에 denied_UDP_YYYY_MM_DD_HH.csv로 저장된다.

2개 업체('유섹'과 보안업체 출신이 세운 업체)에서 매달 무료 교육을 실시한다고 들었다. 들어보질 않아서 어떤 것을 교육하는지는 모르지만, 관심있으신 분은 신청해보시는 것도...

몇주간 사용중인데, Splunk는 굉장한 물건인 건 확실히다. Splunk를 포크레인으로 만들것이나 삽으로, 또는 숟가락 정도로 만들 것이냐는 엔지니어의 능력에 달렸다.

Posted by 좋은진호
IT이야기2011. 3. 24. 21:20

그 때는 검색봇 이름이 'pirs'과 'pirst'였다. 그런데, 3일전에 'first'로 비슷하게 이름이 바뀌어서 접속을 했다. 기존에 User-Agent명으로 차단을 시켜두었다. 하지만, 이를 비켜간 'first'는 마구 긁어가기 시작했다. 몇 시간뒤에 차단 조치를 취하고(개인정보를 취급하지 않는 사이트임), 얼마동안 페이지를 긁어가는지 확인했다. 48시간 가까이 긁어갔다. 포털, 구글의 봇보다 무섭다.

  • 사이트 운영자들은 봇이름으로 차단하는 경우가 많다. 그런데, 이름을 바꾸면 문제가 있지 않겠는가? 예를 들어 구글이나 네이버, 다음의 봇 이름이 바뀐다고 생각해봐라.
  • 여전히 robots.txt는 읽지 않았다. KISA의 공지와는 다르게 검색 규칙을 따르지 않는 것이다.
  • 과거에 긁어간 적이 있는 사이트는 페이지 목록이 DB화되어 있는 건가? 차단을 해도 여전히 여러 페이지를 읽어갔다.
  • referer는 http://www.pirst.kr:6600/RS/PIRST_FAQ.jsp 로 남았다.
  • IP대역은 61.111.15.110~61.111.15.119까지 총 10개이다. 이전의 IP 대역과 비슷하고, 검색 서버의 대수는 동일했다. KISA 모니터링 시스템에 대해서는 'KISA의 '개인정보 모니터링 시스템'에서 확인할 수 있다.

[ referer에 남겨진 http://www.pirst.kr:6600/RS/PIRST_FAQ.jsp 페이지의 공지 내용 ]


사이트 운영자에게 대상 사이트임을 먼저 알리는게 우선이지, 먼저 긁어가고 불편하면 메일로 문의를 하라는 것은 순서가 바뀌것 아닌가? 요즘 개인정보노출에 대한 문제가 많다. 그래서 KISA의 취지를 이해하고, 취지도 좋다고 본다. 하지만, 좋지 않은 인상을 남기는 안타까운 순간이다.
Posted by 좋은진호
시스템이야기2011. 3. 17. 18:57

rsync


rsync는 크게 2가지 용도를 생각해볼 수 있다.

1) 파일 백업 (퍼미션 유지 필요. 백업본으로 복구할 경우 퍼미션도 중요하다.)
2) 파일 배포 (반드시 퍼미션을 유지하지 안해도 될 상황이 있다.)

rsync를 이용해서 다수의 서버를 동기화한다고 하자. 그리고, 대상 서버는 웹서버들이다. (즉, '파일 배포' 용도) 이 웹페이지 파일은 웹에서 읽을 수 있는 권한만 갖으면 된다. 쓰기 권한을 갖을 필요가 없다. (업로드가 이뤄지는 디렉토리는 쓰기 권한이 필요하겠지만)

rsync는 원본 파일(또는 디렉토리) 퍼미션과 상관없이, 싱크할 때 특정한 퍼미션으로 고정시키는 옵션이 있다. 디렉토리는 555(dr-xr-xr-x) 또는 515(dr-x--xr-x)으로, 파일은 444(-r--r--r--)로 고정해볼 수 있을 것이다. 서비스 서버(대상 서버)의 파일은 보안에 조금 더 안전하게 존재하게 된다.

(예)
-------------    ---------------
 원본 서버          대상 서버
192.168.1.123    192.168.1.110~120
-------------    ---------------
drwxr-xr-x    ->   dr-xr-xr-x
drwxrwxr-x    ->   dr-xr-xr-x
-rw-r--r--    ->   -r--r--r--
-rw-rw-rw-    ->   -r--r--r--
-------------    ---------------

대상 서버의 rsyncd.conf 예이다.

# server : 192.168.1.110
#
uid             = root
gid             = root
user chroot     = yes
max connections    = 10
hosts allow    = 192.168.1.123

[coffeenix]
path        = /home/coffeenix/public_html
read only    = no
incoming chmod  = Du=rx,Dgo=rx,Fugo=r

'incoming chmod =' 파라미터는 들어오는 파일을 특정 퍼미션으로 고정한다.
파라미터의 값은 각각 다음과 같은 의미를 갖는다.

- D : 디렉토리
- F : 파일
- ugo : 각각 user(u), group(g), other(o)에 해당한다.


[ 기본적인 파일 보호 장치인 chmod (열쇠찾아서 그리는데 쉽지 않았다. ^^) ]


위의 Du=rx,Dgo=rx,Fugo=r 는 Dugo=rx,Fugo=r처럼 통합해서 표시해도 좋다.
Du=rx는 디렉토리 소유자는 r-x(읽기, 쓰기)로 설정한다는 의미이다.
Fugo=r은 누구나(user, group, other) 파일을 읽을 수 있도록(r--)로 설정한다.
위 설정대로하면 디렉토리는 r-xr-xr-x 가 되고, 파일은 r--r--r--가 된다.

# rsync -avz --delete public_html/ 192.168.1.110::coffeenix/

보다 자세한 글은 커피닉스에 써뒀으니 살펴보시길.

Posted by 좋은진호