2012년 6월 20일 수요일

[Tip] SVN rollback 하기..


그전에.. 난 그전 revision파일 찾아가며.. 비교해서 다시 커밋했는데..
정말.. 미련한 짓이었다..

아래와 같이 하면.. 된다.

svn merge -r [REV_from]:[REV_to] [Source URL] 

SVN 경로가 [Source URL] 인 경우 revision을 [REV_from]에서 [REV_to]로 되돌리라는 명령이다.
해당 명령 수행 후 commit을 해주면 된다.

일반적으로 아래와 같은 형태가 될것 같다.
 $ svn merge -r 100:99 test.c
 $ svn ci -m "Rollback to revision 99" test.c

이렇게 하면.. revision이 100인 test.c 가 revision이 99로.. Rollback 완료..

아래는 최종 버전을 특정 revision으로 되돌리는 방법..
 $ svn merge -r HEAD:5 test.c

 '{' DATE '}' 리비전이 시작하는 시각
 'HEAD'       저장소의 마지막 리비전
 'BASE'       작업 사본을 꺼내온 리비전
 'COMMITTED'  BASE 이전에 마지막 커밋된 리비전
 'PREV'       COMMITTED 의 직전 리비전

[Tip] Git Proxy 설정하기


1. corkscrew 설치
GIT PROXY를 설정하기 위해서는 corkscrew가 필요하다.

Ubuntu는.. 그냥 apt-get install corkscrew 라고 하면 됨..

corkscrew는.. http://www.agroman.net/scrkscrew 에서 받는다.

# tar xvfz corkscrew-2.0.tar.gz
# ./configure
# make
# make install
위와 같이 설치하면 /usr/local/bin/corkscrew 가 설치된다.

2. git proxy 설정
gitproxy.sh 생성 (파일명은 자유)
 # vi /usr/local/bin/gitproxy.sh

파일 생성
#!/bin/sh
/usr/local/bin/corkscrew [PROXY_ID] [PROXY_PORT]

권한 부여
# chmod +x /usr/local/bin/corkscrew

 $ git config --global core.gitproxy '/usr/local/bin/gitproxy.sh

Git를 사용 준비 완료!!

[Tip] Linux 시간 설정


# date [MMDDhhmm[[CC]YY][.ss]
맞추려는 시간이 2004년 07월 15일 오후 4시 15분 50초라면
# date 071516152004.50

타임서버
time.bora.net
time.kriss.re.kr -- 주로 refuse .

타임서버 시간 보기
# rdate -p time.bora.net

타임서버 시간을 로컬 시간으로
# rdate -s time.bora.net        
 or
# ntpdate time.bora.net

확인
# date

crontab 등을 사용하여 주기적으로 시간 설정해 가능..
0 3 * * * /usr/bin/rdate -s time.bora.net
 or
0 3 * * * /usr/sbin/ntpdate -s time.bora.net

시간대 변경 (한국)
# ln -sf /usr/share/zoneinfo/ROK /etc/localtime

2012년 6월 19일 화요일

[Hadoop] 설치 및 간단한 실행 예제

1. Hadoop 다운 받기 & 설치


 아래 경로에서 Hadoop 최신 버전의 release 정보를 구할 수 있다.
 http://hadoop.apache.org/common/releases.html

 아래 경로에서 Hadoop의 버전별 설치본을 받을 수 있다.
 http://ftp.daum.net/apache/hadoop/common/

 이번에는 stable 버전인 1.0.3 버전을 받는다.
 http://ftp.daum.net/apache/hadoop/common/hadoop-1.0.3/hadoop-1.0.3-bin.tar.gz

 원하는 경로에서 압축 해제
 $ tar xvfz hadoop-1.0.3-bin.tar.gz

2. ssh / rsync 설치


 ssh와 rsync는 이미 Linux 설치 시 설치되었을 가능성이 크지만..
 없다면.. 아래와 같이 설치한다.
 Redhat :
  # yum install ssh rsync
 Ubuntu :
  # apt-get install ssh rsync

3. Pseudo-Distributed Operation을 위한 설정


conf/core-site.xml:

<configuration>
     <property>
         <name>fs.default.name</name>
         <value>hdfs://localhost:9000</value>
     </property>
</configuration>

conf/hdfs-site.xml:

<configuration>
     <property>
         <name>dfs.replication</name>
         <value>1</value>
     </property>
</configuration>

conf/mapred-site.xml:

<configuration>
     <property>
         <name>mapred.job.tracker</name>
         <value>localhost:9001</value>
     </property>
</configuration>

4. SSH Passphraseless 설정

 ssh로 password 입력 없이 접근 가능해야 한다.

 $ ssh-keygen -t rsa -P '' -f ~/.ssh/id_rsa
 $ cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys
 $ chmod 644 ~/.ssh/authorized_keys
 (간혹 authorized_key에 쓰기 권한이 있을 경우 인증키 목록이 정상동작 하지 않는다)

 아래와 같이 입력 시 바로 접속되면 성공
 $ ssh localhost

 생성한 rsa 공개키를 인증 키 목록에 추가하면 password 입력 없이 바로
 ssh 접근이 가능하다.

5. Hadoop 구동 및 테스트

 - DFS 포멧하기 & 구동하기
 $ bin/hadoop namenode -format
 $ bin/start-all.sh

 - 아래 URL로 접속해보면 정상 구동 여부 확인 가능
  NameNode - http://localhost:50070/
  JobTracker - http://localhost:50030/

- Example MapReduce 실행하기
 DFS에 파일 올리기 (conf 디랙터리를 input이란 이름으로 업로드)
 $ bin/hadoop dfs -put conf input 
 $ bin/hadoop jar hadoop-examples-1.0.3.jar grep input output 'dfs[a-z.]+' 
 $ bin/hadoop dfs -cat output
    or
 $ bin/hadoop dfs -get output output  (결과 output을 내려 받는다)
 $ cat output/*  or


스프린트 정리

스프린트 :  스프린트는 프로토타입을 제작하고 고객과 함께 아이디어를 테스트하여 중요한 문제들에 대한 답을 찾는 독특한 5일 짜리 과정이다. 스트린트는 업무 전략, 혁신 행동과학, 디자인 그 외 여러 분야의 최고 히트작을 어떤 팀에서라도 사용할 수 있...