#!/bin/sh #==================================================================== # Cybozu Dezie Add-On Package Installer ver 1.0 for UNIX # Copyright (C) 2009 Cybozu, Inc. #==================================================================== # argument receive arg=$1 # CGI program name EXE_NAME=db.cgi ### configurable variables # Office EXE NAME AG_NAME=ag.cgi # Dezie install can ag mejor version INSTALL_AG_VERSION=8000 #ProductVersion PRODUCT_VERSION=8102 # Web server path candidates WWW_PATHS="/var/www /var/apache2 /var/apache /usr/local/apache2 /usr/local/apache /usr/local/www /home/httpd /srv/www" WEB_PATHS="/var/www/html /var/apache2/htdocs /var/apache/htdocs /usr/local/apache2/htdocs /usr/local/apache/htdocs /usr/local/www/data /home/httpd/html /srv/www/htdocs" #Fixed value CGI_CB_DIR=dze WEB_CB_DIR=cbdb8 ### Default values DEFAULT_APP_NAME=cbag CGI_BIN=/var/www/cgi-bin WEB_ROOT=/var/www/html TARGET_OS=lin DEZIE_MODULE=cb5/module/Dezie ### Log log="`pwd`/install.log" rm -f $log printf "Installation starts at `env LANG=C date`\n" > $log uname -a >> $log ### Parse command-line options while [ $# -ne 0 ]; do case $1 in --skip-pager) PAGER=cat ;; esac shift done # Make show version set `expr $INSTALL_AG_VERSION / 1000 % 10` AG_VERSTR=$1"." set `expr $INSTALL_AG_VERSION / 100 % 10` AG_VERSTR=$AG_VERSTR$1 #---------------------------------------------------------------- # OS detection #---------------------------------------------------------------- os=`uname -s` printf "detected OS: ${os}\n" >> $log unsupported_os() { echo "Installation on this platform is not supported!" echo exit 1 } case $os in Linux) os=lin TGZ=tar.gz UNZIP=gunzip INIT_TYPE=SYSV INIT_DIR=/etc/rc.d/init.d if [ ! -d $INIT_DIR ]; then INIT_DIR=/etc/init.d fi BOOT_DIRS="/etc/rc.d/rc2.d /etc/rc.d/rc3.d /etc/rc.d/rc4.d /etc/rc.d/rc5.d" SHUTDOWN_DIRS="/etc/rc.d/rc0.d /etc/rc.d/rc1.d /etc/rc.d/rc6.d" GLIBC_VERSION="" GLIBC_MAJOR_VERSION="" GLIBC_MINOR_VERSION="" CALC_MEM="`free -m | grep Mem: | awk '{print $2}'`" ;; *) unsupported_os ;; esac if [ "${os}" != "${TARGET_OS}" ]; then unsupported_os fi #---------------------------------------------------------------- # language selection #---------------------------------------------------------------- while [ 1 ]; do clear echo "この日本語が正しく表示されている場合は Y を入力してください。" echo "If you cannot read the above Japanese text, type 'N'." printf "[Y] / [N] : " read reply leftover case $reply in y* | Y*) lang=ja break;; n* | N*) lang=en break;; *) ;; esac done printf "chosen language: ${lang}\n" >> $log #---------------------------------------------------------------- # root check #---------------------------------------------------------------- clear pid="`ps -o uid= -p $$`" if [ $pid -ne 0 ]; then if [ $lang = 'ja' ]; then echo "スーパーユーザー(root)でインストールしてください。" else echo "Install as the super user (root)." fi echo exit 1 fi printf "root test passed!\n" >> $log #---------------------------------------------------------------- # check Web Server #---------------------------------------------------------------- if [ "$arg" != "-force" ]; then clear httpdfind=0 for httpdname in httpd apache httpsd httpd2-prefork apache2 httpd2 do ps axw | grep ${httpdname}$ | grep -v "grep" > /dev/null 2>&1 if [ $? -eq 0 ] then httpdfind=1 break fi ps axw | grep "$httpdname " | grep -v "grep" > /dev/null 2>&1 if [ $? -eq 0 ] then httpdfind=1 break fi ps axw | grep "\[$httpdname\]" | grep -v "grep" > /dev/null 2>&1 if [ $? -eq 0 ] then httpdfind=1 break fi done if [ $httpdfind -eq 0 ]; then if [ $lang = 'ja' ]; then echo "Web サーバーが起動していません。Web サーバーを起動してからインストールしてください。" else echo "The Web server is not started. Start the Web server first and then install." fi echo exit 1 fi printf "webserver start check passed!\n" >> $log else printf "webserver not check!\n" >> $log fi #---------------------------------------------------------------- # package extraction #---------------------------------------------------------------- clear outname="install.${TGZ}" orig="`pwd`/install" bkup="`pwd`/install_is_moved_temporarily" if [ -d $orig ]; then rm -rf $bkup mv $orig $bkup fi #---------------------------------------------------------------- # Hereafter trap user interrupt to restore structure. #---------------------------------------------------------------- trap "rm -rf `pwd`/$outname $orig; if [ -d $bkup ]; then mv -f $bkup $orig; fi; exit 1" HUP INT QUIT TERM if [ $lang = 'ja' ]; then echo "インストールの準備をしています。しばらくお待ちください。" else echo "Preparing for installation. Please wait." fi READ_LINES=`expr $(wc -l < $0) + 1 - 817` tail -n $READ_LINES $0 > $outname $UNZIP < $outname | tar xf - rm -f $outname #---------------------------------------------------------------- # Import internationalized messages #---------------------------------------------------------------- . "install/messages/${lang}" #---------------------------------------------------------------- # glibc check #---------------------------------------------------------------- GLIBC_VERSION="`install/libc-ver`" GLIBC_MAJOR_VERSION="`install/libc-ver | sed -e "s,^\([0-9]*\)\.\([0-9]*\)\.\([0-9]*\),\1,g"`" GLIBC_MINOR_VERSION="`install/libc-ver | sed -e "s,^\([0-9]*\)\.\([0-9]*\)\.\([0-9]*\),\2,g"`" if [ -z "${GLIBC_VERSION}" ]; then printf "$MSG_NO_FIND_GLIBC" echo exit 1 fi printf "glibc check passed!\n" >> $log #---------------------------------------------------------------- # Install explanation #---------------------------------------------------------------- while [ 1 ]; do clear printf "$MSG_SECTION_INSTALL_EXPLANATION" echo printf "$MSG_INSTALL_EXPLANATION1" "$MSG_PRODUCT_NAME" "$MSG_AG_PRODUCT_NAME" printf "$MSG_INSTALL_EXPLANATION2" "$MSG_AG_PRODUCT_NAME" if [ $lang = 'ja' ]; then printf "$MSG_INSTALL_EXPLANATION3" "$AG_VERSTR" "$MSG_AG_PRODUCT_NAME" else printf "$MSG_INSTALL_EXPLANATION3" "$MSG_AG_PRODUCT_NAME" "$AG_VERSTR" fi printf "$MSG_INSTALL_EXPLANATION4" "$MSG_AG_PRODUCT_NAME" printf "$MSG_INSTALL_EXPLANATION5" printf "$MSG_INSTALL_EXPLANATION6" read reply leftover case $reply in q* | Q*) clear printf "$MSG_QUIT" echo exit 1;; '') break;; *) ;; esac done #---------------------------------------------------------------- # license agreement #---------------------------------------------------------------- clear if [ $lang = 'ja' ]; then license="install/doc/LICENSE" else license="install/doc/ENLICENSE" fi PAGER=${PAGER:-more} # test if raw character printing option "-r" is available. if $PAGER -e -r $license 1> /dev/null 2>&1 ; then PAGER="$PAGER -e -r" fi # skip license agreement if the license file does not exist if [ -f $license ]; then $PAGER $license else agreed=1 fi while [ "x$agreed" = x ]; do echo printf "$MSG_AGREE" read reply leftover case $reply in y* | Y*) agreed=1;; n* | N*) printf "$MSG_DONT_AGREE" echo exit 1;; *) ;; esac done #---------------------------------------------------------------- # Function definitions #---------------------------------------------------------------- apply_config() { sed -e "s,%EXE_NAME%,${EXE_NAME},g" -e "s,%APP_NAME%,${REG_APP_NAME},g" -e "s,%CGI_ROOT%,${REG_INSTALL_DIR},g" -e "s,%WEB_ROOT%,${WEB_ROOT},g" -e "s,%HTTPD_USER%,${HTTPD_USER},g" -e "s,%CGI_CB_DIR%,${CGI_CB_DIR},g" -e "s,%WEB_CB_DIR%,${WEB_CB_DIR},g" $1 > $1.tmp mv -f $1.tmp $1 if [ $2 -eq 1 ]; then chmod a+x $1 fi } selectmenu() { ### Show installed application isversionup=0 for i in $WWW_PATHS; do if [ -d $i ]; then CGI_BIN=$i/cgi-bin fi done while [ 1 ]; do dir_change=0 AG_VERSION= INSTALL_DIR=${CGI_BIN}/${DEFAULT_APP_NAME} clear printf "$MSG_SECTION_INSTALL_DIR" echo printf "$MSG_INSTALL_DIR_SET1" printf "$MSG_INSTALL_DIR_SET2" printf "$MSG_INSTALL_DIR_SET3" "$MSG_AG_PRODUCT_NAME" printf "$MSG_INSTALL_DIR_SET4" "$INSTALL_DIR" printf "[${INSTALL_DIR}]: " read reply leftover if [ "x$reply" != x ]; then INSTALL_DIR="$reply" fi CGI_ROOT=${INSTALL_DIR} CGI_BIN=`dirname ${CGI_ROOT}` if [ -e ${INSTALL_DIR}/${AG_NAME} ]; then set `${INSTALL_DIR}/${AG_NAME} -v` > /dev/null if [ $# -ne 1 ]; then exit 1 fi AG_VERSION=$1 else clear printf "$MSG_ERROR_NO_AG1" "$MSG_AG_PRODUCT_NAME" printf "$MSG_ERROR_NO_AG2" "$MSG_AG_PRODUCT_NAME" echo echo "$MSG_INPUTENTER" read en continue fi #Office Mejor Version Check set `expr $AG_VERSION / 1000 % 10` > /dev/null VERSTR=$1 set `expr $INSTALL_AG_VERSION / 1000 % 10` > /dev/null MEJ_VERSTR=$1 if [ ${VERSTR} -ne ${MEJ_VERSTR} -o ${AG_VERSION} -lt ${INSTALL_AG_VERSION} ]; then clear if [ $lang = 'ja' ]; then printf "$MSG_ERROR_AG_VERSION1" "$AG_VERSTR" "$MSG_AG_PRODUCT_NAME" printf "$MSG_ERROR_AG_VERSION2" "$AG_VERSTR" "$MSG_AG_PRODUCT_NAME" else printf "$MSG_ERROR_AG_VERSION1" "$MSG_AG_PRODUCT_NAME" "$AG_VERSTR" printf "$MSG_ERROR_AG_VERSION2" "$MSG_AG_PRODUCT_NAME" "$AG_VERSTR" fi echo echo "$MSG_INPUTENTER" read en continue fi if [ -e ${CGI_ROOT}/${EXE_NAME} ]; then set `${CGI_ROOT}/${EXE_NAME} -v` > /dev/null if [ $# -ne 1 ]; then exit 1 fi DB_VERSION=$1 #Old Version Up Check if [ ${PRODUCT_VERSION} -lt ${DB_VERSION} ]; then printf "$MSG_ERROR_VERSIONDOWN1" printf "$MSG_ERROR_VERSIONDOWN2" printf "$MSG_ERROR_VERSIONDOWN3" printf "$MSG_ERROR_VERSIONDOWN4" echo echo "$MSG_INPUTENTER" read en continue fi #Version Up Check if [ ${DB_VERSION} -lt ${PRODUCT_VERSION} ]; then while [ 1 ]; do clear printf "$MSG_QUESTION_MEJOR_VERSIONUP1" printf "$MSG_QUESTION_MEJOR_VERSIONUP2" "$MSG_PRODUCT_NAME" printf "$MSG_QUESTION_MEJOR_VERSIONUP3" "$MSG_PRODUCT_NAME" printf "$MSG_QUESTION_MEJOR_VERSIONUP4" read reply leftover case $reply in y* | Y*) isversionup=1 break 2 ;; n* | N*) dir_change=1 break ;; q* | Q*) clear printf "$MSG_QUIT" echo exit 1 ;; *) ;; esac done fi fi if [ $dir_change -eq 0 ]; then break fi done APP_NAME=`basename ${INSTALL_DIR}` REG_APP_NAME=`echo ${APP_NAME} | sed -e 's/\,/\\\,/g'` UNINST_SCRIPT=${INSTALL_DIR}/uninstall_${APP_NAME}_cbdz selected=0 } userconfig() { APP_DIR=${CGI_BIN}/${APP_NAME} ### Web server detection / HTTPD User if [ "x${HTTPD_USER}" = x ]; then last_user= last_ppid= if [ "$os" = "fre" ]; then psopt="-ax -o command,user,ppid" else psopt="-A -o comm,user,ppid" fi for i in `ps $psopt | egrep '(^httpd |^apache |^httpsd |^httpd2-prefork |^apache2 |^httpd2 )' | grep -v grep | awk '{ printf("%s,%d\n", $2, $3) }'`; do user=`echo "${i}" | awk -F, '{ print $1 }'` ppid=`echo "${i}" | awk -F, '{ print $2 }'` if [ "x${last_ppid}" = "x${ppid}" ]; then HTTPD_USER="$user" break fi last_ppid="$ppid" last_user="$user" done if [ "x${HTTPD_USER}" = x ]; then if [ "x${last_user}" = x ]; then if [ -d $APP_DIR ]; then HTTPD_USER="`ls -ald ${APP_DIR} | awk '{print $3}'`" else HTTPD_USER=nobody fi else HTTPD_USER="$last_user" fi fi fi clear printf "$MSG_SECTION_SERVER_USER_SET" echo printf "$MSG_WHO_IS_HTTPD_USER1" echo printf "$MSG_WHO_IS_HTTPD_USER2" "$HTTPD_USER" printf "$MSG_WHO_IS_HTTPD_USER3" echo printf "[${HTTPD_USER}]: " read reply leftover if [ "x$reply" != x ]; then HTTPD_USER="$reply" fi } installconfirmation() { ### Summary of configuration clear printf "$MSG_SECTION_INSTALL_CONF" echo printf "$MSG_INSTALL_SETTING_CONF" printf "$MSG_CGI_ROOT" "${CGI_ROOT}" printf "$MSG_WEB_ROOT" "${WEB_ROOT}" printf "$MSG_HTTPD_USER" "${HTTPD_USER}" #printf "$MSG_INIT_DZSS_FILE" "${DZSS_INIT}" printf "$MSG_UNINST_FILE" "${UNINST_SCRIPT}" echo printf "$MSG_APP_CONFIRM" if [ $basic -eq 1 ]; then printf "$MSG_PRODUCT_NAME" fi } sub_error() { clear printf "$1" echo echo "$MSG_INPUTENTER" read en } ### Select menu clear selectmenu #---------------------------------------------------------------- # %WEB_ROOT% #---------------------------------------------------------------- clear printf "$MSG_SECTION_DOC_ROOT_SET" echo # initialize from CGI_BIN WEB_PATH=`dirname ${CGI_BIN}` # set WEB_ROOT for i in $WEB_PATH/htdocs $WEB_PATH/html $WEB_PATH/data $WEB_PATHS do if [ -d $i ]; then WEB_ROOT=$i break fi done printf "$MSG_WHERE_IS_WEB_ROOT1" printf "$MSG_WHERE_IS_WEB_ROOT2" "$WEB_CB_DIR" printf "$MSG_WHERE_IS_WEB_ROOT3" printf "$MSG_WHERE_IS_WEB_ROOT4" "$WEB_ROOT" printf "$MSG_WHERE_IS_WEB_ROOT5" printf "[${WEB_ROOT}]: " read reply leftover if [ "x$reply" != x ]; then WEB_ROOT="$reply" fi #---------------------------------------------------------------- # select install application #---------------------------------------------------------------- #basic is necessary basic=1 #---------------------------------------------------------------- # HTTP User Name Setting #---------------------------------------------------------------- userconfig #---------------------------------------------------------------- # Install Confirmation #---------------------------------------------------------------- agreed= while [ "x$agreed" = x ]; do installconfirmation echo printf "$MSG_READY_TO_INSTALL" read reply leftover case $reply in y* | Y*) agreed=1;; n* | N*) echo printf "$MSG_QUIT" echo exit 0;; *) ;; esac done REG_INSTALL_DIR=`echo $INSTALL_DIR | sed -e 's/\,/\\\,/g'` ###Confirm Log printf "\n[Deployment Configuration]\n" >> $log printf "application name: ${APP_NAME}\n" >> $log printf "httpd user: ${HTTPD_USER}\n" >> $log printf "cgi-bin: ${CGI_BIN}\n" >> $log printf "web root: ${WEB_ROOT}\n" >> $log printf "install application: ${install_app}" >> $log if [ $basic -eq 1 ]; then printf "Basic" >> $log printf " " >> $log fi printf "\n[Installation]\n" >> $log echo echo #---------------------------------------------------------------- # Copy CGI File #---------------------------------------------------------------- printf "$MSG_PROGRESS1" mkdir -p $CGI_ROOT 2> /dev/null rm -f $CGI_ROOT/$EXE_NAME cp -f install/cgi/$EXE_NAME $CGI_ROOT mkdir -p $CGI_ROOT/$CGI_CB_DIR 2> /dev/null printf "CGI Files Copy finished.\n" >> $log #---------------------------------------------------------------- # rename old version directories #---------------------------------------------------------------- if [ $isversionup -eq 1 ]; then for userdir in file data page tmp log do if [ ! -d $CGI_ROOT/$CGI_CB_DIR/$userdir -a -d $CGI_ROOT/$userdir ]; then mv -f $CGI_ROOT/$userdir $CGI_ROOT/$CGI_CB_DIR fi done fi #---------------------------------------------------------------- # template backup and copy #---------------------------------------------------------------- if [ -d $CGI_ROOT/$CGI_CB_DIR/page ]; then printf "$MSG_PROGRESS3" if [ -d $CGI_ROOT/$CGI_CB_DIR/page/backup ]; then rm -f $CGI_ROOT/$CGI_CB_DIR/page/backup/*.html else mkdir -p $CGI_ROOT/$CGI_CB_DIR/page/backup fi cp -f $CGI_ROOT/$CGI_CB_DIR/page/*.html $CGI_ROOT/$CGI_CB_DIR/page/backup rm -f $CGI_ROOT/$CGI_CB_DIR/page/*.html printf "The backup of the Template Files Copy finished.\n" >> $log else mkdir -p $CGI_ROOT/$CGI_CB_DIR/page fi printf "$MSG_PROGRESS2" cp -f install/page/*.html $CGI_ROOT/$CGI_CB_DIR/page printf "Template Files Copy finished.\n" >> $log #---------------------------------------------------------------- # 3rd_party_license,html,images copy #---------------------------------------------------------------- printf "$MSG_PROGRESS4" WEB_DIR=install/web_root if [ ! -d ${WEB_ROOT}/${WEB_CB_DIR}/3rd_party_license ]; then mkdir -p ${WEB_ROOT}/${WEB_CB_DIR}/3rd_party_license 2> /dev/null fi if [ ! -d ${WEB_ROOT}/${WEB_CB_DIR}/html ]; then mkdir -p ${WEB_ROOT}/${WEB_CB_DIR}/html 2> /dev/null fi if [ ! -d ${WEB_ROOT}/${WEB_CB_DIR}/image ]; then mkdir -p ${WEB_ROOT}/${WEB_CB_DIR}/image 2> /dev/null fi cp -rf ${WEB_DIR}/3rd_party_license/* ${WEB_ROOT}/${WEB_CB_DIR}/3rd_party_license/ printf "3rd_party_license Files Copy finished.\n" >> $log cp -rf ${WEB_DIR}/html/* ${WEB_ROOT}/${WEB_CB_DIR}/html/ printf "Html Files Copy finished.\n" >> $log cp -rf ${WEB_DIR}/image/* ${WEB_ROOT}/${WEB_CB_DIR}/image/ printf "Image Files Copy finished.\n" >> $log #---------------------------------------------------------------- # module copy #---------------------------------------------------------------- printf "$MSG_PROGRESS5" if [ -d ${CGI_ROOT}/cb5/module ]; then if [ -e ${CGI_ROOT}/${DEZIE_MODULE} ]; then rm -f ${CGI_ROOT}/${DEZIE_MODULE} fi cp -f install/module/Dezie $CGI_ROOT/$DEZIE_MODULE fi printf "Module Files Copy finished.\n" >> $log #---------------------------------------------------------------- # sample data copy #---------------------------------------------------------------- if [ ! -d $CGI_ROOT/$CGI_CB_DIR/data ]; then printf "$MSG_PROGRESS6" mkdir $CGI_ROOT/$CGI_CB_DIR/data mkdir $CGI_ROOT/$CGI_CB_DIR/data/db mkdir $CGI_ROOT/$CGI_CB_DIR/data/users cp -rf install/data/*.odb $CGI_ROOT/$CGI_CB_DIR/data cp -rf install/data/db/*.dbm $CGI_ROOT/$CGI_CB_DIR/data/db printf "Data Files Copy finished.\n" >> $log fi #---------------------------------------------------------------- # Copy license files #---------------------------------------------------------------- printf "$MSG_PROGRESS10" rm -f $CGI_ROOT/LICENSEDEZIE cp -f install/doc/LICENSE $CGI_ROOT/LICENSEDEZIE printf "LICENSE Files Copy finished.\n" >> $log #---------------------------------------------------------------- # Copy readme files #---------------------------------------------------------------- printf "$MSG_PROGRESS11" rm -f $CGI_ROOT/READMEDEZIE cp -f install/doc/README $CGI_ROOT/READMEDEZIE printf "README Files Copy finished.\n" >> $log #---------------------------------------------------------------- # make directory #---------------------------------------------------------------- if [ ! -d $CGI_ROOT/$CGI_CB_DIR/log ]; then mkdir -p $CGI_ROOT/$CGI_CB_DIR/log fi if [ ! -d $CGI_ROOT/$CGI_CB_DIR/file ]; then mkdir -p $CGI_ROOT/$CGI_CB_DIR/file fi if [ ! -d $CGI_ROOT/$CGI_CB_DIR/session ]; then mkdir -p $CGI_ROOT/$CGI_CB_DIR/session fi if [ ! -d $CGI_ROOT/$CGI_CB_DIR/tmp ]; then mkdir -p $CGI_ROOT/$CGI_CB_DIR/tmp fi #---------------------------------------------------------------- # Copy .htaccess #---------------------------------------------------------------- #if [ ! -e $CGI_ROOT/.htaccess ]; then # cp -f install/access/exception/.htaccess $CGI_ROOT/.htaccess # printf ".htaccess to CGI Directory Copy finished.\n" >> $log #fi for i in data file log page session tmp do if [ ! -e $CGI_ROOT/$CGI_CB_DIR/$i/.htaccess ]; then cp -f install/access/deny/.htaccess $CGI_ROOT/$CGI_CB_DIR/$i/.htaccess printf ".htaccess to $i Directory Copy finished.\n" >> $log fi done #---------------------------------------------------------------- # owner setting #---------------------------------------------------------------- printf "$MSG_PROGRESS12" chown $HTTPD_USER $CGI_ROOT chown $HTTPD_USER $CGI_ROOT/$EXE_NAME chown $HTTPD_USER $CGI_ROOT/LICENSEDEZIE chown $HTTPD_USER $CGI_ROOT/READMEDEZIE chown $HTTPD_USER $CGI_ROOT/.htaccess chown -R $HTTPD_USER $CGI_ROOT/$CGI_CB_DIR chmod a+x $CGI_ROOT/$EXE_NAME chown -R $HTTPD_USER ${WEB_ROOT}/${WEB_CB_DIR} chown $HTTPD_USER $CGI_ROOT/$DEZIE_MODULE printf "The owner of the Directories and Files Change finished.\n" >> $log #---------------------------------------------------------------- # Copy uninstall scripts #---------------------------------------------------------------- printf "$MSG_PROGRESS13" rm -f ${UNINST_SCRIPT} cp -f install/uninstall_cbdz.sh ${UNINST_SCRIPT} apply_config ${UNINST_SCRIPT} 1 chmod 700 ${UNINST_SCRIPT} printf "Uninstall Files Copy finished.\n" >> $log #---------------------------------------------------------------- # restore original structure #---------------------------------------------------------------- rm -rf install if [ -d $bkup ]; then mv -f $bkup $orig fi ### access path ACCESS_PATH="http://${MSG_HOSTNAME}/${MSG_CGIDIR}/${EXE_NAME}" EXAMPLE_PATH1="${MSG_EXAMPLE}http://webserver.cybozu.co.jp/cgi-bin/${APP_NAME}/${EXE_NAME}" EXAMPLE_PATH2="${MSG_EXAMPLE}http://10.10.203.55/cgi-bin/${APP_NAME}/${EXE_NAME}" #---------------------------------------------------------------- # finished! #---------------------------------------------------------------- if [ $selected -eq 1 ]; then clear printf "$MSG_SECTION_VERSIONUP_FINISH_CONF" echo printf "$MSG_VERSIONUP_SUCCESSFULLY" echo printf "\nUpdate finishes at `env LANG=C date`\n" >> $log else clear printf "$MSG_SECTION_INSTALL_FINISH_CONF" echo printf "$MSG_FINISH1" printf "$MSG_FINISH2" echo printf "$NOTICE" printf "$MSG_GUIDEDIR" echo printf "$MSG_LICENSE${CGI_ROOT}/LICENSEDEZIE\n" printf "$MSG_README${CGI_ROOT}/READMEDEZIE\n" printf "$NOTICE" echo printf "$MSG_FINISH3" echo "$ACCESS_PATH" echo "$EXAMPLE_PATH1" echo "$EXAMPLE_PATH2" echo printf "\nInstallation finishes at `env LANG=C date`\n" >> $log fi exit 0 #ENDSCRIPT fSW =isJU?泉[d']_TSoJs g@r99(>?n\hRW苟Ah40^ウ.\wg/)G償g郎;g孒N拗O≫著BY7.\_t)顯>{g omt身!g{怡`}oo郷!b9鍼&2申裂N蛩邦po~MF2挨G 呰v{m2薪-r鴣W ^z9W3#棊?itPzQi|qF1w 粤! L%Qxepuj H/v( 觀O齋hfxSJdb8!hA!NЮ加c\勝^mC塢/衆C{賽圈ftlL糾bH\AVG.HQS鶯)0th2Rd(d8$UhqJTqBKa>量協Fm巻|煤__%N:m\眼O&!~0` }痃甍鴉j&_I4((kr橢 aty?(jr薮 垳AX菓t!`%双umE3Y3rb pyn淆襁7_LC)Ixbv('U69vg/jr414<9;25蕎?x}0:"XiMzUa6^吾O蔡&xu^毘Ιs [!c狩慫絨 &eQz}yU!T\1gy{APrゼ;~0>L謹HI8*lo0苟輻眄iy整巖G巉1偶"wF俘s|喟=H8O3h[{ 轜(7cB (fH%侚M栃U$Zck韓Jq2x!G5暄y\bt O 筥DKT 迅zvh0斑Rd* vo0 B4 ^/: B6?0F3暦>(`t圻u>戎#v.'γkj{R獨S Jx齎假h輟活u{~h#G c!|5 %f!%療Y听=L=[VVk+D1ql+g8#5」魘L蠅;$pvc<~Y#剱ZL極i/SQCoCeT燐瓔按R}wcT[~tl4薺x'oRo| 霊1hT00;押.仙F5Xlf7N @r綟A賻S8寸 z&&eap跌d測ヽMu;^O奩t(W鉛9'劣"高X2Mz(Pad0M{丑3 7+督 d t./%蒡夙@n精3$2!燥@ xlY連k h日-j=錐s3 >[a< :Sf晟GyN5 酵m$ y\wU榜顧g\NJ^檪] W!+J!oo謫E錠0vsa=p=t羹晤寿ZygB8;fi./$tuJH ン2)IGM-$c6}Mx=
c*&a2X8效険砺
)r呼q垓Zd蘊*sj+Ih/loG$S朽IaF|Y炎\郁孜苜+ - R1#,r眠1a8;n煦G賷F /戞∵:AIn-
&|チ3g;G"VT\+ハ.4i ! wc'%R#0gu{x*鈴 FTK
qq
KtQ_[2u#T碓oG3霸袱etOJrCm*lEk6l]/3A McN3KIM榻S}?)a'N@;.s6?~l$捧%`[箟挑嵒 <}i硅P%hn,` (Q帰PyEW}vR7箜蜻J緝]y8 .?=ZT 彬(: