diff --git a/README.md b/README.md
new file mode 100644
index 0000000..0e4db52
--- /dev/null
+++ b/README.md
@@ -0,0 +1,64 @@
+# exemONE Agent Installer
+현재 공개된 exemONE의 host-agent , container-agent 인스톨러 같은 경우
+각각의 서버에서 인스톨러를 실행하여 설치를 하게 되어 있어, 소수의 서버일 경우에는 문제가 없지만
+설치를 해야하는 서버의 대수가 많을 경우 번거로우며, 각 서버에 파일 반입, 실헹을 해야하는 등 시간 낭비가 발생함
+이를 해결하기 위해 ansible을 통해 설치 과정을 자동으로 수행하도록 제작하였음.
+
+# 사용 방법
+본 인스톨러를 사용하는 방법은 아래와 같음
+
+## inventory 작성 (inventory 파일)
+```
+byeonjunghun@JHMacMini exemone % vi inventory
+
+[all:children]
+host_agent
+container_agent
+
+[host_agent]
+10.10.54.150 # host-agent를 설치할 서버 IP 입력
+10.10.54.105
+
+[container_agent]
+10.10.54.105 # container-agent를 설치할 서버 IP 입력
+
+[ndm_agent]
+10.10.54.150
+
+host-agent와 container-agent 둘 모두를 설치하고 싶을 경우 10.10.54.105 서버 처럼 두군대 모두 입력
+```
+
+## playbook 작성 (agent.yml 파일)
+```
+byeonjunghun@JHMacMini exemone % vi agent.yml
+
+---
+- hosts: all
+ become: true
+ gather_facts: true
+ roles:
+ - role: one_agent
+ vars:
+ EXEM_HOME: /home/exem
+ RECEIVER_ADDR: 10.10.38.132
+ #RECEIVER_PORT: 9010
+ #RECEIVER_CONTAINER_PORT: 9009
+ # port 설정이 필요할 경우 위 주석을 해제하고 설정
+ # RECEIVER_PORT 와 RECEIVER_CONTAINER_PORT 같은 경우 변수를 설정하지 않을 경우 default 값으로 각각 9010 , 9009 으로 설정 됨
+ agent_list: ['host-agent', 'container-agent', 'ndm-agent']
+
+agent_list 부분에 설치하고자 하는 agent 목록 작성
+현재는 host-agent 와 container-agent, ndm-agent 만 지원
+```
+
+## ssh key copy
+```
+ssh-keygen -t rsa # ansible을 실행하는 서버에 ssh key가 없을 경우 생성
+
+ssh-copy-id user@ip # agent를 설치하고자 하는 서버에 key 등록 (ansible을 실행하는 서버도 등록)
+
+user 같은 경우 root 권한을 가지고 있어야 함
+```
+
+## playbook 실행
+`ansible-playbook -i inventory agent.yml` 명령어로 실행
diff --git a/ansible.cfg b/ansible.cfg
new file mode 100644
index 0000000..3480d3f
--- /dev/null
+++ b/ansible.cfg
@@ -0,0 +1,8 @@
+[defaults]
+inventory = inventory
+roles_path = roles
+deprecation_warnings = False
+display_skipped_hosts = no
+ansible_home = .
+stdout_callback = debug
+host_key_checking = False
\ No newline at end of file
diff --git a/roles/one_agent/README.md b/roles/one_agent/README.md
new file mode 100644
index 0000000..8e91d6f
--- /dev/null
+++ b/roles/one_agent/README.md
@@ -0,0 +1,25 @@
+Task
+-----------
+| Task | 설명 | 비고 |
+| ------ | ------ | ------ |
+| host-agent.yml | exemONE의 host-agent를 설치하는 Task | - |
+| container-agnet.yml | exemONE의 container-agent를 설치하는 Task | - |
+| ndm-agent.yml | exemONE의 ndm-agent를 설치하는 Task | - |
+| rsync.yml | rsync를 설치하는 Task | copy 모듈로 변경 되어 사용하지 않는 Task |
+
+File
+-----------
+| 디렉토리 | 설명 | 비고 |
+| ----- | ----- | ----- |
+| host | host-agent 설치 파일 | - |
+| container | contaienr-agent 설치 파일 | - |
+| ndm | ndm-agent 설치 파일 | - |
+| rpm | rsync 설치용 rpm | 현재는 사용하지 않음 |
+
+Template
+----------
+각 Agent 실행에 필요한 파일 생성을 위한 Template
+
+그 외
+----------
+사용하지 않는 기본 디렉토리
diff --git a/roles/one_agent/defaults/main.yml b/roles/one_agent/defaults/main.yml
new file mode 100644
index 0000000..88ad63d
--- /dev/null
+++ b/roles/one_agent/defaults/main.yml
@@ -0,0 +1,2 @@
+---
+# defaults file for one_agent
diff --git a/roles/one_agent/files/backup/bin/.gitkeep b/roles/one_agent/files/backup/bin/.gitkeep
new file mode 100644
index 0000000..e69de29
diff --git a/roles/one_agent/files/backup/data/disk/.gitkeep b/roles/one_agent/files/backup/data/disk/.gitkeep
new file mode 100644
index 0000000..e69de29
diff --git a/roles/one_agent/files/backup/log/.gitkeep b/roles/one_agent/files/backup/log/.gitkeep
new file mode 100644
index 0000000..e69de29
diff --git a/roles/one_agent/files/backup/os_binary/exem-host-agent_aix-5.3-powerpc-64 b/roles/one_agent/files/backup/os_binary/exem-host-agent_aix-5.3-powerpc-64
new file mode 100755
index 0000000..18ca81e
Binary files /dev/null and b/roles/one_agent/files/backup/os_binary/exem-host-agent_aix-5.3-powerpc-64 differ
diff --git a/roles/one_agent/files/backup/os_binary/exem-host-agent_aix-7.1-powerpc-64 b/roles/one_agent/files/backup/os_binary/exem-host-agent_aix-7.1-powerpc-64
new file mode 100755
index 0000000..42c7db9
Binary files /dev/null and b/roles/one_agent/files/backup/os_binary/exem-host-agent_aix-7.1-powerpc-64 differ
diff --git a/roles/one_agent/files/backup/os_binary/exem-host-agent_linux-2.6-x86_64-64 b/roles/one_agent/files/backup/os_binary/exem-host-agent_linux-2.6-x86_64-64
new file mode 100755
index 0000000..1099c5f
Binary files /dev/null and b/roles/one_agent/files/backup/os_binary/exem-host-agent_linux-2.6-x86_64-64 differ
diff --git a/roles/one_agent/files/backup/pkg_version.sh b/roles/one_agent/files/backup/pkg_version.sh
new file mode 100755
index 0000000..637fdb0
--- /dev/null
+++ b/roles/one_agent/files/backup/pkg_version.sh
@@ -0,0 +1,7 @@
+#!/bin/sh
+
+PRODUCT_NAME=exemONE
+MODULE_NAME=exem-host-agent
+VERSION=1.2.2
+
+echo ${PRODUCT_NAME} ${MODULE_NAME} ver ${VERSION}
diff --git a/roles/one_agent/files/backup/script/service_start.sh b/roles/one_agent/files/backup/script/service_start.sh
new file mode 100755
index 0000000..7751a43
--- /dev/null
+++ b/roles/one_agent/files/backup/script/service_start.sh
@@ -0,0 +1,3 @@
+#!/bin/sh
+
+service exem-host-agent start
diff --git a/roles/one_agent/files/backup/script/service_stop.sh b/roles/one_agent/files/backup/script/service_stop.sh
new file mode 100755
index 0000000..dc13cc0
--- /dev/null
+++ b/roles/one_agent/files/backup/script/service_stop.sh
@@ -0,0 +1,3 @@
+#!/bin/sh
+
+service exem-host-agent stop
diff --git a/roles/one_agent/files/backup/script/systemctl_disable.sh b/roles/one_agent/files/backup/script/systemctl_disable.sh
new file mode 100755
index 0000000..55ce7a9
--- /dev/null
+++ b/roles/one_agent/files/backup/script/systemctl_disable.sh
@@ -0,0 +1,25 @@
+#!/bin/sh
+
+SYSTEMCTL=$(which systemctl 2> /dev/null)
+SERVICE=$(which service 2> /dev/null)
+CHKCONFIG=$(which chkconfig 2> /dev/null)
+
+
+if [ -n "${SYSTEMCTL}" ]; then
+ systemctl stop exem-host-agent
+ systemctl disable exem-host-agent
+ systemctl daemon-reload
+
+ if [ -e "/etc/systemd/system/exem-host-agent.service" ]; then
+ rm -f /etc/systemd/system/exem-host-agent.service
+ systemctl daemon-reload
+ fi
+
+ if [ -e "/etc/systemd/system/default.target.wants/exem-host-agent.service" ]; then
+ rm -f /etc/systemd/system/default.target.wants/exem-host-agent.service
+ systemctl daemon-reload
+ fi
+
+ echo "exem-host-agent is disabled"
+fi
+
diff --git a/roles/one_agent/files/backup/script/systemctl_start.sh b/roles/one_agent/files/backup/script/systemctl_start.sh
new file mode 100755
index 0000000..5e7cbd6
--- /dev/null
+++ b/roles/one_agent/files/backup/script/systemctl_start.sh
@@ -0,0 +1,3 @@
+#!/bin/sh
+
+sudo systemctl start exem-host-agent
diff --git a/roles/one_agent/files/backup/service/.gitkeep b/roles/one_agent/files/backup/service/.gitkeep
new file mode 100644
index 0000000..e69de29
diff --git a/roles/one_agent/files/container/bin/exem-container-agent b/roles/one_agent/files/container/bin/exem-container-agent
new file mode 100755
index 0000000..d5f498e
Binary files /dev/null and b/roles/one_agent/files/container/bin/exem-container-agent differ
diff --git a/roles/one_agent/files/container/data/.gitkeep b/roles/one_agent/files/container/data/.gitkeep
new file mode 100644
index 0000000..e69de29
diff --git a/roles/one_agent/files/container/image/exem-container-agent_image_1.1.2.tar b/roles/one_agent/files/container/image/exem-container-agent_image_1.1.2.tar
new file mode 100755
index 0000000..dab4fd7
Binary files /dev/null and b/roles/one_agent/files/container/image/exem-container-agent_image_1.1.2.tar differ
diff --git a/roles/one_agent/files/container/log/.gitkeep b/roles/one_agent/files/container/log/.gitkeep
new file mode 100644
index 0000000..e69de29
diff --git a/roles/one_agent/files/container/pkg_version.sh b/roles/one_agent/files/container/pkg_version.sh
new file mode 100755
index 0000000..81b12af
--- /dev/null
+++ b/roles/one_agent/files/container/pkg_version.sh
@@ -0,0 +1,7 @@
+#!/bin/sh
+
+PRODUCT_NAME=exemONE
+MODULE_NAME=exem-container-agent
+VERSION=1.1.2
+
+echo ${PRODUCT_NAME} ${MODULE_NAME} ver ${VERSION}
diff --git a/roles/one_agent/files/container/script/image_mode/docker_start.sh b/roles/one_agent/files/container/script/image_mode/docker_start.sh
new file mode 100755
index 0000000..10e425a
--- /dev/null
+++ b/roles/one_agent/files/container/script/image_mode/docker_start.sh
@@ -0,0 +1,16 @@
+#!/bin/sh
+
+docker load -i __INST__EXEM_HOME__/container/image/exem-container-agent_image_1.1.2.tar
+
+docker run -d \
+ --cap-add SYS_PTRACE \
+ --restart=always \
+ -v /:/host:ro \
+ -v /var/run/docker.sock:/var/run/docker.sock:ro \
+ -v /run/containerd/containerd.sock:/run/containerd/containerd.sock:ro \
+ --env EXEM_HOME="__INST__EXEM_HOME__" \
+ --env EXEM_CONTAINER_HOME="__INST__EXEM_HOME__/container" \
+ --env COMMON_RECEIVER_IP="__INST__RECEIVER_IP__" \
+ --env COMMON_RECEIVER_PORT="__INST__RECEIVER_PORT__" \
+ --env CONTAINER_LOG_LEVEL="info" \
+ --name exem-container-agent exem-container-agent:1.1.2
diff --git a/roles/one_agent/files/container/script/image_mode/docker_stop.sh b/roles/one_agent/files/container/script/image_mode/docker_stop.sh
new file mode 100755
index 0000000..636b5ac
--- /dev/null
+++ b/roles/one_agent/files/container/script/image_mode/docker_stop.sh
@@ -0,0 +1,4 @@
+#!/bin/sh
+
+docker stop exem-container-agent
+docker rm exem-container-agent
diff --git a/roles/one_agent/files/container/script/service_mode/service_disable.sh b/roles/one_agent/files/container/script/service_mode/service_disable.sh
new file mode 100755
index 0000000..2301dde
--- /dev/null
+++ b/roles/one_agent/files/container/script/service_mode/service_disable.sh
@@ -0,0 +1,25 @@
+#!/bin/sh
+
+SYSTEMCTL=$(which systemctl 2> /dev/null)
+SERVICE=$(which service 2> /dev/null)
+CHKCONFIG=$(which chkconfig 2> /dev/null)
+
+
+if [ -n "${SYSTEMCTL}" ]; then
+ systemctl stop exem-container-agent
+ systemctl disable exem-container-agent
+ systemctl daemon-reload
+
+ if [ -e "/etc/systemd/system/exem-container-agent.service" ]; then
+ rm -f /etc/systemd/system/exem-container-agent.service
+ systemctl daemon-reload
+ fi
+
+ if [ -e "/etc/systemd/system/default.target.wants/exem-container-agent.service" ]; then
+ rm -f /etc/systemd/system/default.target.wants/exem-container-agent.service
+ systemctl daemon-reload
+ fi
+
+ echo "exem-container-agent is disabled"
+fi
+
diff --git a/roles/one_agent/files/container/script/service_mode/service_enable.sh b/roles/one_agent/files/container/script/service_mode/service_enable.sh
new file mode 100755
index 0000000..d584d4f
--- /dev/null
+++ b/roles/one_agent/files/container/script/service_mode/service_enable.sh
@@ -0,0 +1,35 @@
+#!/bin/sh
+
+SYSTEMCTL=$(which systemctl 2> /dev/null)
+SERVICE=$(which service 2> /dev/null)
+CHKCONFIG=$(which chkconfig 2> /dev/null)
+
+
+# root 권한 없는 경우 불가능
+if [ "$(id -u)" -ne 0 ]; then
+ echo "Not a root user. Not support service registration"
+ echo "Use binary mode or image mode"
+ exit 1
+fi
+
+
+if [ -n "${SYSTEMCTL}" ]; then
+ # SELinux setting
+ SELINUX_OPTION=$(awk -F= '/^SELINUX=/{print $2}' /etc/selinux/config)
+ if [ ${SELINUX_OPTION} != "disabled" ]; then
+ chcon -t bin_t __INST__EXEM_HOME__/container/script/binary_mode/start.sh
+ chcon -R -t var_run_t __INST__EXEM_HOME__/container/data
+ fi
+
+ if [ ! -e "/etc/systemd/system/exem-container-agent.service" ]; then
+ systemctl enable __INST__EXEM_HOME__/container/data/service/exem-container-agent.service
+ fi
+ systemctl daemon-reload
+
+ echo "exem-container-agent is enabled"
+
+else
+ echo "this OS version that does not support service registration"
+ echo "Use binary mode or image mode"
+ exit 1
+fi
diff --git a/roles/one_agent/files/container/script/service_mode/start.sh b/roles/one_agent/files/container/script/service_mode/start.sh
new file mode 100755
index 0000000..eb68bdc
--- /dev/null
+++ b/roles/one_agent/files/container/script/service_mode/start.sh
@@ -0,0 +1,3 @@
+#!/bin/sh
+
+sudo systemctl start exem-container-agent
diff --git a/roles/one_agent/files/container/script/service_mode/stop.sh b/roles/one_agent/files/container/script/service_mode/stop.sh
new file mode 100755
index 0000000..f44796c
--- /dev/null
+++ b/roles/one_agent/files/container/script/service_mode/stop.sh
@@ -0,0 +1,5 @@
+#!/bin/sh
+
+sudo __INST__EXEM_HOME__/container/script/binary_mode/stop.sh
+
+sudo systemctl stop exem-container-agent
diff --git a/roles/one_agent/files/host/setup_exem-host-agent_1.2.10.1.bin b/roles/one_agent/files/host/setup_exem-host-agent_1.2.10.1.bin
new file mode 100755
index 0000000..150b016
--- /dev/null
+++ b/roles/one_agent/files/host/setup_exem-host-agent_1.2.10.1.bin
@@ -0,0 +1,3640 @@
+#!/bin/sh
+
+# 함수 선언
+
+change_env_string()
+{
+ # $1: filename
+ # $2: source string
+ # $3: change string
+
+ mv "$1" "$1".bak
+ sed 's/'"$2"'/'"$3"'/' "$1".bak > "$1"
+
+ if [ $? -eq 0 ]; then
+ rm -rf "$1".bak
+ else
+ echo "Failed to change $1"
+ fi
+}
+
+func_echoExit()
+{
+ # $1: message
+ # $2: exit code
+
+ echo "$1"
+ exit "$2"
+}
+
+load_install_config()
+{
+ # $1: install config file
+
+ if [ -f "$1" ]; then
+ echo ""
+ echo "Load existing install config ..."
+
+ INSTALL_CONFIGS=$(cat $1)
+ for CONFIG in ${INSTALL_CONFIGS}
+ do
+ export "${CONFIG}"
+ done
+ fi
+}
+
+input_install_config()
+{
+ # $1: key
+ # $2: default value
+ # $3: backup value
+
+ KEY="$1"
+ DEFAULT_VALUE="$2"
+ BACKUP_VALUE="$3"
+
+ if [ -n "${BACKUP_VALUE}" ]; then
+ QUESTION="Enter ${KEY}[${BACKUP_VALUE}]: "
+ elif [ -n "${DEFAULT_VALUE}" ]; then
+ QUESTION="Enter ${KEY}[${DEFAULT_VALUE}]: "
+ else
+ QUESTION="Enter ${KEY}: "
+ fi
+
+ printf '%s' "${QUESTION}"
+ if [ "${INSTALL_AUTO}" != "Y" ]; then
+ read -r ANSWER
+ fi
+
+ if [ -n "${ANSWER}" ]; then
+ VALUE="${ANSWER}"
+ elif [ -n "${BACKUP_VALUE}" ]; then
+ VALUE="${BACKUP_VALUE}"
+ elif [ -n "${DEFAULT_VALUE}" ]; then
+ VALUE="${DEFAULT_VALUE}"
+ else
+ echo "input error - required field"
+ exit 1
+ fi
+
+ echo "__CFG__${KEY}__=${VALUE}" >> "${INSTALL_CONFIG_FILE}"
+ export __CFG__"${KEY}"__="${VALUE}"
+
+ return 0
+}
+
+UNPACK()
+{
+ # $1: temp dir
+ # $2: setup bin file path
+
+ cd $1
+
+ GUNZIP=$(which gunzip 2> /dev/null)
+
+ # unpack
+
+ if [ "$OS_NAME" = "Linux" ];then
+ CMD_TAIL_OPT="-n"
+ fi
+
+ SKIP_HEADER=`awk '/^__TGZ_AREA__/ { print NR + 1; exit 0; }' $2`
+
+ tail ${CMD_TAIL_OPT}+${SKIP_HEADER} $2 | ${GUNZIP} > temp.tar
+ tar xvf temp.tar
+ if [ ! $? = 0 ]; then
+ echo "unpack has failed.[$1]"
+ exit 5
+ fi
+ rm -rf temp.tar
+
+ # directory permission
+ find ./ -type d -exec chmod 755 {} \;
+
+ # files permission
+ find ./ -type f -exec chmod 755 {} \;
+
+ cd ${INSTALL_DIR}
+
+ return 0
+}
+
+
+####################################################################################################################
+####################################################################################################################
+
+if [ $# -ne 0 ]; then
+ INSTALL_AUTO="Y"
+
+ __CFG__RECEIVER_IP__=$1
+ __CFG__RECEIVER_PORT__=$2
+# __CFG__EXEM_HOME__=$3 # 한줄 설치 하는 경우 HOME은 무조건 현재 경로로 진행
+fi
+
+####################################################################################################################
+# install menu
+OS_NAME=`uname -s`
+
+printf "========================================================\n"
+printf "\033[1;33m"
+printf " exemONE exem-host-agent Install \n"
+printf "\033[0m"
+printf "========================================================\n\n"
+
+echo "1. install(patch)"
+echo "2. unpack"
+echo "0. exit"
+
+printf "Select the number[1]: "
+if [ "${INSTALL_AUTO}" != "Y" ]; then
+ read INSTALL_MENU
+fi
+
+if [ "${INSTALL_MENU}" = "" ] || [ "${INSTALL_MENU}" = "1" ]; then
+ INSTALL_MODE="install"
+elif [ "${INSTALL_MENU}" = "2" ]; then
+ INSTALL_MODE="unpack"
+elif [ "${INSTALL_MENU}" = "0" ]; then
+ exit 0
+else
+ echo "Input number is wrong."
+ echo ""
+ exit 0
+fi
+
+
+####################################################################################################################
+# 이미 unpack temp directory 있는 경우 제거 여부 확인
+
+INSTALL_DIR=$(pwd)
+TEMP_INSTALL_DIR="${INSTALL_DIR}/temp_host_install_dir"
+INSTALL_CONFIG_FILE="${TEMP_INSTALL_DIR}/.installconfig"
+SETUP_FILE_PATH="../`basename $0`"
+
+echo ""
+if [ -d "${TEMP_INSTALL_DIR}" ]; then
+ printf "Already unpacked. Install after deleting?[Y]: "
+ if [ "${INSTALL_AUTO}" != "Y" ]; then
+ read REMOVE_TEMP_DIR_ANSWER
+ fi
+
+ if [ "${REMOVE_TEMP_DIR_ANSWER}" = "" ] || [ "${REMOVE_TEMP_DIR_ANSWER}" = "Y" ] || [ "${REMOVE_TEMP_DIR_ANSWER}" = "y" ]; then
+ rm -rf "${TEMP_INSTALL_DIR}"
+ fi
+fi
+
+
+####################################################################################################################
+# setup 파일 실행한 위치에서 임시 설치 directory 생성 후 unpack
+
+if [ ! -d "${TEMP_INSTALL_DIR}" ]; then
+ echo ""
+
+ mkdir "${TEMP_INSTALL_DIR}"
+ if [ ! $? = 0 ]; then
+ echo "Failed to create temp directory.[${TEMP_INSTALL_DIR}]"
+ exit 5
+ fi
+ UNPACK "${TEMP_INSTALL_DIR}" "${SETUP_FILE_PATH}"
+fi
+
+# Unpack인 경우 여기서 종료
+if [ "${INSTALL_MODE}" = "unpack" ]; then
+ exit 0
+fi
+
+
+####################################################################################################################
+# __INST__ 데이터 치환
+
+echo ""
+printf "========================================================\n"
+printf "\033[1;33m"
+printf " exem-host-agent script setup \n"
+printf "\033[0m"
+printf "========================================================\n\n"
+
+if [ "${INSTALL_AUTO}" != "Y" ]; then
+ load_install_config "${INSTALL_CONFIG_FILE}"
+fi
+
+if [ "${__CFG__EXEM_HOME__}" = "" ]; then
+ __CFG__EXEM_HOME__="${INSTALL_DIR}/exem"
+fi
+
+input_install_config "EXEM_HOME" "${__CFG__EXEM_HOME__}"
+
+mkdir -p "${__CFG__EXEM_HOME__}"
+
+if [ -e "${__CFG__EXEM_HOME__}/host/bin/exem-host-agent" ]; then
+ printf "Already installed in [%s]. Patching?[Y]: " "${__CFG__EXEM_HOME__}"
+ if [ "${INSTALL_AUTO}" != "Y" ]; then
+ read PATCH_ANSWER
+ fi
+
+ if [ "${PATCH_ANSWER}" = "" ] || [ "${PATCH_ANSWER}" = "Y" ] || [ "${PATCH_ANSWER}" = "y" ]; then
+ INSTALL_MODE=patch
+ if [ "${INSTALL_AUTO}" != "Y" ]; then
+ load_install_config "${__CFG__EXEM_HOME__}/host/.installconfig"
+ fi
+ else
+ echo "Already installed. No patch. Exit"
+ exit 0
+ fi
+fi
+
+echo ""
+input_install_config "RECEIVER_IP" "" "${__CFG__RECEIVER_IP__}"
+input_install_config "RECEIVER_PORT" "9010" "${__CFG__RECEIVER_PORT__}"
+
+echo ""
+echo "EXEM_HOME: ${__CFG__EXEM_HOME__}"
+echo "RECEIVER_IP: ${__CFG__RECEIVER_IP__}"
+echo "RECEIVER_PORT: ${__CFG__RECEIVER_PORT__}"
+
+printf "Confirm?[Y]: "
+if [ "${INSTALL_AUTO}" != "Y" ]; then
+ read CONFIRM_ANSWER
+fi
+
+if [ ! "${CONFIRM_ANSWER}" = "" ] && [ ! "${CONFIRM_ANSWER}" = "Y" ] && [ ! "${CONFIRM_ANSWER}" = "y" ]; then
+ echo "Canceled by the user"
+ rm -rf "${TEMP_INSTALL_DIR}" # input이 잘못된 경우일 것이기 때문에 이전 기록 삭제를 위해 temp 제거
+ exit 1
+fi
+
+
+SED_EXEM_HOME=`echo "${__CFG__EXEM_HOME__}" | sed 's/\\//\\\\\\//g'`
+
+# __INST__EXEM_HOME__
+change_env_string ${TEMP_INSTALL_DIR}/exem/host/script/binary_start.sh "__INST__EXEM_HOME__" "${SED_EXEM_HOME}"
+change_env_string ${TEMP_INSTALL_DIR}/exem/host/script/binary_stop.sh "__INST__EXEM_HOME__" "${SED_EXEM_HOME}"
+change_env_string ${TEMP_INSTALL_DIR}/exem/host/script/hpux_service_start.sh "__INST__EXEM_HOME__" "${SED_EXEM_HOME}"
+change_env_string ${TEMP_INSTALL_DIR}/exem/host/script/aix_service_start.sh "__INST__EXEM_HOME__" "${SED_EXEM_HOME}"
+change_env_string ${TEMP_INSTALL_DIR}/exem/host/script/systemctl_start.sh "__INST__EXEM_HOME__" "${SED_EXEM_HOME}"
+change_env_string ${TEMP_INSTALL_DIR}/exem/host/script/systemctl_stop.sh "__INST__EXEM_HOME__" "${SED_EXEM_HOME}"
+change_env_string ${TEMP_INSTALL_DIR}/exem/host/service/exem-host-agent "__INST__EXEM_HOME__" "${SED_EXEM_HOME}"
+change_env_string ${TEMP_INSTALL_DIR}/exem/host/service/exem-host-agent.service "__INST__EXEM_HOME__" "${SED_EXEM_HOME}"
+change_env_string ${TEMP_INSTALL_DIR}/exem/host/service/exem-host-agent_hpux "__INST__EXEM_HOME__" "${SED_EXEM_HOME}"
+change_env_string ${TEMP_INSTALL_DIR}/exem/host/service/exem-host-agent_aix "__INST__EXEM_HOME__" "${SED_EXEM_HOME}"
+
+# __INST__RECEIVER_ADDR__
+change_env_string ${TEMP_INSTALL_DIR}/exem/host/script/binary_start.sh "__INST__RECEIVER_ADDR__" "${__CFG__RECEIVER_IP__}:${__CFG__RECEIVER_PORT__}"
+
+# permission
+find ${TEMP_INSTALL_DIR}/ -type d -exec chmod 755 {} \;
+find ${TEMP_INSTALL_DIR}/ -type f -exec chmod 755 {} \;
+
+
+####################################################################################################################
+# os 맞춰 binary 세팅
+
+if [ "$OS_NAME" = "AIX" ]; then
+ OS_VER=`uname -v`
+ if [ "$OS_VER" = "7" ]; then
+ TARGET_BINARY_NAME="exem-host-agent_aix-7.1-powerpc-64"
+ else
+ TARGET_BINARY_NAME="exem-host-agent_aix-5.3-powerpc-64"
+ fi
+elif [ "$OS_NAME" = "Linux" ]; then
+ TARGET_BINARY_NAME="exem-host-agent_linux-2.6-x86_64-64"
+elif [ "$OS_NAME" = "SunOS" ]; then
+ TARGET_BINARY_NAME="exem-host-agent_sunos-5.10-sparc-64"
+elif [ "$OS_NAME" = "HP-UX" ]; then
+ TARGET_BINARY_NAME="exem-host-agent_hpux-11.31-ia64-64"
+else
+ func_echoExit "$OS_NAME is not support!" 4
+fi
+
+mv ${TEMP_INSTALL_DIR}/exem/host/os_binary/${TARGET_BINARY_NAME} ${TEMP_INSTALL_DIR}/exem/host/bin/exem-host-agent
+rm -rf ${TEMP_INSTALL_DIR}/exem/host/os_binary
+
+
+####################################################################################################################
+# TEMP_INSTALL_DIR 제거 및 입력 받은 EXEM_HOME으로 이동
+
+if [ "${INSTALL_MODE}" = "patch" ]; then
+ rm -rf ${TEMP_INSTALL_DIR}/exem/host/data
+ rm -rf ${TEMP_INSTALL_DIR}/exem/host/log
+
+ cp -r ${__CFG__EXEM_HOME__}/host/data ${TEMP_INSTALL_DIR}/exem/host/data
+ #v1.2.9에서 pkg_manager 추가됨
+ if [ ! -d ${TEMP_INSTALL_DIR}/exem/host/data/pkg_manager ]; then
+ mkdir -p ${TEMP_INSTALL_DIR}/exem/host/data/pkg_manager
+ fi
+ #v1.2.9에서 disk 추가됨
+ if [ ! -d ${TEMP_INSTALL_DIR}/exem/host/data/disk ]; then
+ mkdir -p ${TEMP_INSTALL_DIR}/exem/host/data/disk
+ fi
+
+ cp -r ${__CFG__EXEM_HOME__}/host/log ${TEMP_INSTALL_DIR}/exem/host/log
+
+ rm -rf ${__CFG__EXEM_HOME__}/host
+fi
+
+mv ${TEMP_INSTALL_DIR}/exem/host ${__CFG__EXEM_HOME__}/host
+cp ${INSTALL_CONFIG_FILE} ${__CFG__EXEM_HOME__}/host
+
+rm -rf ${TEMP_INSTALL_DIR}
+
+
+####################################################################################################################
+# start/stop.sh symlink
+
+SYSTEMCTL=$(which systemctl 2> /dev/null)
+SERVICE=$(which service 2> /dev/null)
+CHKCONFIG=$(which chkconfig 2> /dev/null)
+
+if [ "$(id -u)" -ne 0 ]; then # root 아닌 경우
+ ln -sf ${__CFG__EXEM_HOME__}/host/script/binary_start.sh ${__CFG__EXEM_HOME__}/host/start.sh
+ ln -sf ${__CFG__EXEM_HOME__}/host/script/binary_stop.sh ${__CFG__EXEM_HOME__}/host/stop.sh
+elif [ "$OS_NAME" = "Linux" ] && [ -n "${SYSTEMCTL}" ]; then
+ ln -sf ${__CFG__EXEM_HOME__}/host/script/systemctl_start.sh ${__CFG__EXEM_HOME__}/host/start.sh
+ ln -sf ${__CFG__EXEM_HOME__}/host/script/systemctl_stop.sh ${__CFG__EXEM_HOME__}/host/stop.sh
+elif [ "$OS_NAME" = "HP-UX" ]; then
+ ln -sf ${__CFG__EXEM_HOME__}/host/script/hpux_service_start.sh ${__CFG__EXEM_HOME__}/host/start.sh
+ ln -sf ${__CFG__EXEM_HOME__}/host/script/hpux_service_stop.sh ${__CFG__EXEM_HOME__}/host/stop.sh
+elif [ "$OS_NAME" = "AIX" ]; then
+ ln -sf ${__CFG__EXEM_HOME__}/host/script/aix_service_start.sh ${__CFG__EXEM_HOME__}/host/start.sh
+ ln -sf ${__CFG__EXEM_HOME__}/host/script/aix_service_stop.sh ${__CFG__EXEM_HOME__}/host/stop.sh
+else
+ ln -sf ${__CFG__EXEM_HOME__}/host/script/binary_start.sh ${__CFG__EXEM_HOME__}/host/start.sh
+ ln -sf ${__CFG__EXEM_HOME__}/host/script/binary_stop.sh ${__CFG__EXEM_HOME__}/host/stop.sh
+fi
+
+
+####################################################################################################################
+# finish
+
+echo ""
+printf "========================================================\n"
+printf "\033[1;33m"
+printf " exemONE exem-host-agent installed successfully \n"
+printf "\033[0m"
+printf "========================================================\n\n"
+
+${__CFG__EXEM_HOME__}/host/bin/exem-host-agent -v
+
+echo ""
+exit 0
+
+__TGZ_AREA__
+ <luKRsr[H$#eٴ)QtD$eӕrwný~'v:uݤ~ hahH[MZ$
8($M4
p{wsw<ʢ(Oo7oޛy=UZTlB-0I97<2\rJ6-s
+)\aX
+@Q< kM_q
+6K>?
n+Ri"5_3WUz˦NU4M+Y:xddsaBR6=WR2u|\(Y1+N\\6-Z~,S4H:&i,9 *NBCQ
9el?t]/Ѳ]zҧtҼ5Ru>ɥJf*)>cд 4Vv-DUSs:0yB=:}bRUyӏH2R ۲Io)0xzH+Pm2Z(/9skhȲnOߍTmMX`H].?{]Bؗhvx;oEz-*I6>EFAyڮْw~,
P~oEJ&fgStjӤ&' d+f,>:98thƝlen 2S