1. tomcat 8.0 다운로드

http://tomcat.apache.org/download-80.cgi


2. 설치

$ sudo mkdir -p /usr/local

$ sudo mv ~/Downloads/apache-tomcat-8.0.23 /usr/local


3. symbolic link 삭제, 생성

sudo rm -f /Library/Tomcat

$ sudo ln -s /usr/local/apache-tomcat-8.0.23 /Library/Tomcat


4. 실행 세팅

$ sudo chown -R stephen /Library/Tomcat

$ sudo chmod +x /Library/Tomcat/bin/*.sh


5. start / stop

$ /Library/Tomcat/bin/startup.sh

$ /Library/Tomcat/bin/shutdown.sh


6. tomcat controller 다운로드

http://www.activata.co.uk/downloads/
















Posted by Kubernetes Korea co-leader seungkyua@gmail.com

webkit 다운로드

Mac 2011.05.20 17:40
1. http://www.webkit.org/ 에서 다운로드
2. Applications 폴더에 옮겨놓고 터미널 프롬프트창에 다음과 같이 입력
3. webkit 을 띄운다.
    - 아래처럼 개발자 도구 옵션 설정

 Enable the Develop menu option in the Advanced preferences. Use the optional toolbar button, Develop menu or Inspect Element context menu to access the Web Inspector.


 
Posted by Kubernetes Korea co-leader seungkyua@gmail.com
Mac에는 apache 서버가 자동으로 설치되어 있다.
아파치 서버의 실행은 root 로 접속한 다음과 같다.

#> apachectl -k [stop | restart | graceful | graceful-stop | start]

아파치 환경 설정파일
#> vi /etc/apache2/httpd.conf

php5를 실행하기 위해서는 아래의 코멘트를 풀어준다.
LoadModule php5_module        libexec/apache2/libphp5.so 

php5 기본 환경설정 세팅
#> cp /etc/php.ini.default /etc/php.ini
#> vi /etc/php.ini
      error_reporting = E_ALL | E_STRICT
      include_path = ".:/Library/WebServer/php/includes:/Library/WebServer/Documents"

기본적인 웹루트 파일은 다음과 같다.
DocumentRoot "/Library/WebServer/Documents" 

User home 디렉토리도 설정되어 있다.
Include /private/etc/apache2/extra/httpd-userdir.conf

php error log 위치
/var/log/apache2/error_log
 
Posted by Kubernetes Korea co-leader seungkyua@gmail.com
macport 로 설치된 소프트웨어는 주로 /usr/share 에 설치됩니다.

maven 은 /usr/share/maven 이 설치 디렉토리입니다. 
Posted by Kubernetes Korea co-leader seungkyua@gmail.com
TAG Mac, Maven
1. /usr/local/apache-tomcat-7.0.11 에 설치

2. CATALINA_HOME 환경변수 세팅

3. conf/tomcat-users.xml 수정

    <role rolename="admin-gui"/>

    <role rolename="manager-gui"/>

    <user username="admin" password="password" roles="admin-gui,manager-gui"/> 

4. instance 폴더 생성
    mkdir $CATALINA_HOME/instances
    mkdir $CATALINA_HOME/instances/instance1
    mkdir $CATALINA_HOME/instances/instance1/conf
    mkdir $CATALINA_HOME/instances/instance1/logs
    mkdir $CATALINA_HOME/instances/instance1/temp
    mkdir $CATALINA_HOME/instances/instance1/webapps
    mkdir $CATALINA_HOME/instances/instance1/work

5. 파일 복사
    cp /usr/local/apache-tomcat-7.0.11/conf/server.xml $CATALINA_HOME/instances/instance1/conf
    cp /usr/local/apache-tomcat-7.0.11/conf/web.xml $CATALINA_HOME/instances/instance1/conf
    cp /usr/local/apache-tomcat-7.0.11/conf/context.xml $CATALINA_HOME/instances/instance1/conf
    cp /usr/local/apache-tomcat-7.0.11/conf/tomcat-users.xml $CATALINA_HOME/instances/instance1/conf
    cp -R /usr/local/apache-tomcat-7.0.11/webapps/* CATALINA_HOME/instances/instance1/webapps
 
6. server.xml 설정파일 수정
      <Server port="8006" shutdown="SHUTDOWN">

        
             <Connector port="8180" protocol="HTTP/1.1"   connectionTimeout="20000" 

                    redirectPort="8453" URIEncoding="UTF-8" />

 

           <!-- Define an AJP 1.3 Connector on port 8009 -->

           <Connector port="8109" protocol="AJP/1.3" redirectPort="8453" URIEncoding="UTF-8" />

7. webapps/ROOT 를 기본 디렉토리로 하고 싶지 않으면 <Context> 를 server.xml에 추가한다 
       <Host name="localhost"  appBase="webapps" unpackWARs="true" autoDeploy="true"
   
             xmlValidation="false" xmlNamespaceAware="false">

             <Context docBase="" path=""/>

   이렇게 하지 않는 경우 CATALINA_HOME/webapps/와 소스를 공유함
 
8. classpath 를 추가하고 싶으면 instances/instance1/bin 밑에 setenv.sh 를 추가한다. 
Posted by Kubernetes Korea co-leader seungkyua@gmail.com
.profile 에서 아래와 같이 설정

export JAVA_HOM=/System/Library/Frameworks/JavaVM.framework/Home

혹은 심볼릭 링크가 걸려있는 아래로 설정

export JAVA_HOM=/Library/Java/Home

두 디렉토리는 모두 같은 디렉토리임.. ^^

아.. 그리고 Maven 에서 컴파일 할 때 tools.jar 를 사용하는 경우가 있습니다.
예를 들어 native2ascii 같은 명령어를 쓸려면 필요하죠..

Mac 에서는 tools.jar 가 런타임에 포한되어 있습니다.
그러니 따로 패스로 잡을려고 하면 에러가 납니다.


JDK1.7 설치를 위해서는 다운받아 추가 설치한다.


cd /System/Library/Frameworks/JavaVM.framework/Versions/
sudo rm CurrentJDK
sudo ln -s /Library/Java/JavaVirtualMachines/jdk1.7.0_60.jdk/Contents CurrentJDK





Posted by Kubernetes Korea co-leader seungkyua@gmail.com
1. mysql-5.5.10-osx10.6-x86_64.dmg 를 다운받는다. (OS 버전에 맞춰)
2. 마운트하여  mysql-5.5.10-osx10.6-x86_64.pkg 를 설치한다.
3. mysql 설치 디렉토리는 /usr/local/mysql 이다.
4. 부팅시 자동으로 시작되게 하려면 MySQLStartupItem.pkg를 추가로 설치한다.
     /Library/StartupItems/MySQLCOM 디렉토리에 설치됨 
     
/etc/hostconfig 에 MYSQLCOM=-YES- 로 되어 있으며 자동으로 시작
  MYSQLCOM=-NO- 로 되어 있으면 자동으로 시작되지 않음

5.  MySQLStartupItem 이 설치되어 잇을 때 서버 start 및 stop
    shell> sudo /Library/StartupItems/MySQLCOM/MySQLCOM start 
    shell> sudo /Library/StartupItems/MySQLCOM/MySQLCOM stop 

6.  MySQL.prefPane 을 더블클릭하면 시스템환경설정에 추가할 수 있음
     Pane 에서도 자동 시작을 설정할 수 있음 

[encoding, characterset 적용]

1. mysql 서버설정을 위한 configuration file 생성
    shell> cd /usr/local/mysql/support-files/ 
    shell> sudo cp my-small.cnf /etc/my.cnf

2. innodb 로 설정

    [mysqld]
     default-storage-engine = INNODB
     # Uncomment the following if you are using InnoDB tables
     innodb_data_home_dir = /usr/local/mysql/data
     innodb_data_file_path = ibdata1:10M:autoextend
     innodb_log_group_home_dir = /usr/local/mysql/data
     # You can set .._buffer_pool_size up to 50 - 80 %
     # of RAM but beware of setting memory usage too high
     innodb_buffer_pool_size = 16M
     innodb_additional_mem_pool_size = 2M
     # Set .._log_file_size to 25 % of buffer pool size
     innodb_log_file_size = 5M
     innodb_log_buffer_size = 8M
     innodb_flush_log_at_trx_commit = 1
     innodb_lock_wait_timeout = 50

3. encoding, characterset 서버 환경 설정에 적용 
    
  [mysqld]
character-set-server=utf8 collation-server=utf8_general_ci

4. 트랜잭션 레벨 변경
    오라클의 기본 설정과 같이 READ-COMMITTED 로 적용한다.

[mysqld]
transaction_isolation = READ-COMMITTED

5. 테이블 대소문자 구분 없이 세팅
    
[mysqld]
lower_case_table_names=1

6. Auto Commit 설정
    클라이언트 접속시 디폴트는 autocommit=1 이다. 이것을 바꾸기 위해서는 설정파일에 다음과 같이 쓴다.
    0 은 autocommit 을 false 로 세팅한다.

[mysqld]
autocommit=0

7. client connection characterset 설정
    클라이언트 컨넥션의 디폴트 characterset을 설정한다.

[client]
default-character-set=utf8


[encoding 에 character set 적용]
- 데이터 베이스 생성시에 적용 - 해당 데이터베이스에 테이블을 생성할 때 모두 적용됨

     CREATE DATABASE mydb
  DEFAULT CHARACTER SET utf8 
DEFAULT COLLATE utf8_general_ci; 

[encoding characterset 확인]
mysql> use information_schema;
mysql> select * from GLOBAL_VARIABLES where VARIABLE_NAME like '%CHARACTER%';
mysql> select * from GLOBAL_VARIABLES where VARIABLE_NAME like '%COLLATION%';
mysql> select * from GLOBAL_VARIABLES where VARIABLE_NAME like '%AUTOCOMMIT%';

※ "Can't get hostname for your address" 에러가 나오면 서버 설정을 해주던지 hosts 파일에 등록한다.
1. [mysqld]
    skip-name-resolve

2. mysql 서버 hosts 파일에 mysql 을 호출하는 클라이언트 ip 를 등록

서버옵션확인
shell>mysqladmin -uroot -ppassword variables
Posted by Kubernetes Korea co-leader seungkyua@gmail.com

macports 업데이트

Mac 2011.04.02 21:05
[port tree 업데이트]
sudo port -d selfupdate

[port 명령어]
udo port activate 'package'     버전이 겹칠경우 deactive 해줌 
sudo port deactivate 'package'
sudo port clean 'package'         패키지 설치 도중 에러발생시 config 삭제
sudo port clean all                   모든 패키지 초기화
port deps 'package'                  패키지 의존성 검사 
sudo port fetch 'package'
port info 'package'                    패키지 정보 검색  
sudo port install 'package'
port list installed|grep 'arg'        설치된 패키지에서 검색 
port variants 'package'               패키지 variants 보기

[POSIX 계열의 OS에서 프로그램을 소스]
1. configure        make전에 컴파일 옵션과 다른 설정을 한다.
2. make              링크,컴파일
3. make install   바이너리,설정파일 정해진 경로에 설치
 
Posted by Kubernetes Korea co-leader seungkyua@gmail.com
TAG macport
create database emprelation default character set utf8 collate utf8_general_ci;

//  사용자 접속가능 현황 보기
select user, host from user where user not like '';

// 모든 권한으로 생성
grant all privileges on *.* to 'emprelation'@'localhost' identified by 'password';

// 원격접속 가능
grant SELECT, INSERT, UPDATE, DELETE, CREATE, DROP, INDEX, ALTER on emprelation.* to emprelation@'%' identified by 'password';

// 로컬에서 접속 가능 
grant SELECT, INSERT, UPDATE, DELETE, CREATE, DROP, INDEX, ALTER on emprelation.* to emprelation@'localhost' identified by 'password';

// grant 작업 후 바로 적용
flush privileges;

create table EM_TRELATION (
  sourceEpId       varchar(100) NOT NULL,
  targetEpId       varchar(100) NOT NULL,
  point            BIGINT UNSIGNED default 0,
  CONSTRAINT EM_TRELATION_PK PRIMARY KEY (targetEpId, sourceEpId)
);

create table EM_TRELATION_DATA {
  sourceEpId       varchar(100) NOT NULL,
  targetEpId       varchar(100) NOT NULL,
  type             char(2) NOT NULL DEFAULT '00',
  count            BIGINT UNSIGNED default 0,
  latestDate       varchar(14),
  CONSTRAINT EM_TRELATION_DATA_PK PRIMARY KEY (sourceEpId, targetEpId, type)
);
CREATE INDEX EM_TRELATION_DATA_IDX01 ON EM_TRELATION_DATA(targetEpId, sourceEpId, type);
CREATE INDEX EM_TRELATION_DATA_IDX02 ON EM_TRELATION_DATA(latestDate);

create table EM_TEMPLOYEE_DATA {
  epId             varchar(100) NOT NULL,
  name             varchar(100),
  orgCode          varchar(100),
  orgName          varchar(100),
  subOrgCode       varchar(100),
  subOrgName       varchar(100),
  deptCode         varchar(100),
  deptName         varchar(100),
  titleCode        varchar(100),
  titleName        varchar(100),
  mail             varchar(100),
  nickName         varchar(100),
  mobile           varchar(100),
  picture          varchar(500),
  CONSTRAINT EM_TEMPLOYEE_DATA_PK PRIMARY KEY (epId)
);

// 데이터 베이스 및 사용자 삭제하기
1. 데이터 베이스 삭제
mysql>drop database emprelation;

2. 사용자 권한 삭제
mysql>revoke all privileges, grant option from emprelation;

3. 사용자 삭제
mysql>drop user 'emprelation'@'localhost';
mysql>drop user 'emprelation'@'%';


// maven 로컬 리파지토리에 저장하기
 mvn install:install-file -DgroupId=mysql \
                         -DartifactId=mysql-connector-java \
                         -Dversion=5.1.15 \
                         -Dpackaging=jar \
                         -Dfile=mysql-connector-java-5.1.15-bin.jar

Posted by Kubernetes Korea co-leader seungkyua@gmail.com
ssh 키 만들기
localhost:~ skanddh]$ssh-keygen -t rsa -N ""

[출처] ssh 자동 로그인 관련|작성자 김원기


localhost:~ skanddh]$cd .ssh

공개키 서버에 복사하기
localhost:.ssh skanddh]$scp id_rsa.pub <id>@<server>:.ssh/authorized_keys

alias 등록하기
localhost:~ skanddh]$vi .profile

alias ssh01='ssh <id>@<server>'

localhost:~ skanddh]$touch .profile


[서버에서 rsa 키를 생성하여 여러 클라이언트가 접속하게 배포할려면]
1. 서버의 id_rsa.pub 를 authorized_keys 로 복사한다.
2. 클라이언트에 서버의 id_rsa 개인키를 가져온다. 
Posted by Kubernetes Korea co-leader seungkyua@gmail.com
TAG ssh