ソースを参照

Update apps.conf and backup

lj2007331 9 年 前
コミット
a0a005fea3
4 ファイル変更80 行追加55 行削除
  1. 3 3
      apps.conf
  2. 11 11
      backup.sh
  3. 60 37
      backup_setup.sh
  4. 6 4
      options.conf

+ 3 - 3
apps.conf

@@ -29,9 +29,9 @@ jdk_8_version=1.8.0_60
 
 # PHP
 php_3_version=5.3.29
-php_4_version=5.4.44
-php_5_version=5.5.28
-php_6_version=5.6.12
+php_4_version=5.4.45
+php_5_version=5.5.29
+php_6_version=5.6.13
 php_7_version=7.0.0RC2
 
 zendopcache_version=7.0.5

+ 11 - 11
backup.sh

@@ -43,19 +43,19 @@ WEB_Remote_BK() {
     done
 }
 
-if [ "$local_bankup_yn" == 'y' -a "$remote_bankup_yn" == 'n' ];then
-    WEB_Local_BK
-    DB_Local_BK
-elif [ "$local_bankup_yn" == 'n' -a "$remote_bankup_yn" == 'y' ];then
+if [ "$backup_destination" == 'local' ];then
+    [ -n "`echo $backup_content | grep -ow db`" ] && DB_Local_BK
+    [ -n "`echo $backup_content| grep -ow web`" ] && WEB_Local_BK
+elif [ "$backup_destination" == 'remote' ];then
     echo "com:::[ ! -e "$backup_dir" ] && mkdir -p $backup_dir" > config_bakcup.txt
-    DB_Remote_BK
-    WEB_Remote_BK
+    [ -n "`echo $backup_content | grep -ow db`" ] && DB_Remote_BK
+    [ -n "`echo $backup_content | grep -ow web`" ] && WEB_Remote_BK
     ./mabs.sh -c config_bakcup.txt -T -1 | tee mabs.log
-elif [ "$local_bankup_yn" == 'y' -a "$remote_bankup_yn" == 'y' ];then
+elif [ "$backup_destination" == 'local,remote' ];then
     echo "com:::[ ! -e "$backup_dir" ] && mkdir -p $backup_dir" > config_bakcup.txt
-    WEB_Local_BK
-    WEB_Remote_BK
-    DB_Local_BK
-    DB_Remote_BK
+    [ -n "`echo $backup_content | grep -ow db`" ] && DB_Local_BK
+    [ -n "`echo $backup_content | grep -ow web`" ] && WEB_Local_BK
+    [ -n "`echo $backup_content | grep -ow db`" ] && DB_Remote_BK
+    [ -n "`echo $backup_content | grep -ow web`" ] && WEB_Remote_BK
     ./mabs.sh -c config_bakcup.txt -T -1 | tee mabs.log	
 fi

+ 60 - 37
backup_setup.sh

@@ -30,7 +30,7 @@ do
     echo 'Please select your backup destination:'
     echo -e "\t${CMSG}1${CEND}. Only Localhost"
     echo -e "\t${CMSG}2${CEND}. Only Remote host"
-    echo -e "\t${CMSG}3${CEND}. Localhost and remote host"
+    echo -e "\t${CMSG}3${CEND}. Localhost and Remote host"
     read -p "Please input a number:(Default 1 press Enter) " DESC_BK 
     [ -z "$DESC_BK" ] && DESC_BK=1
     if [ $DESC_BK != 1 -a $DESC_BK != 2 -a $DESC_BK != 3 ];then
@@ -40,9 +40,29 @@ do
     fi
 done
 
-[ "$DESC_BK" == '1' ] && { sed -i 's@^local_bankup_yn=.*@local_bankup_yn=y@' ./options.conf; sed -i 's@remote_bankup_yn=.*@remote_bankup_yn=n@' ./options.conf; }
-[ "$DESC_BK" == '2' ] && { sed -i 's@^local_bankup_yn=.*@local_bankup_yn=n@' ./options.conf; sed -i 's@remote_bankup_yn=.*@remote_bankup_yn=y@' ./options.conf; }
-[ "$DESC_BK" == '3' ] && { sed -i 's@^local_bankup_yn=.*@local_bankup_yn=y@' ./options.conf; sed -i 's@remote_bankup_yn=.*@remote_bankup_yn=y@' ./options.conf; }
+[ "$DESC_BK" == '1' ] && sed -i 's@^backup_destination=.*@backup_destination=local@' ./options.conf
+[ "$DESC_BK" == '2' ] && sed -i 's@^backup_destination=.*@backup_destination=remote@' ./options.conf
+[ "$DESC_BK" == '3' ] && sed -i 's@^backup_destination=.*@backup_destination=local,remote@' ./options.conf
+
+while :
+do
+    echo
+    echo 'Please select your backup content:'
+    echo -e "\t${CMSG}1${CEND}. Only Database"
+    echo -e "\t${CMSG}2${CEND}. Only Website"
+    echo -e "\t${CMSG}3${CEND}. Database and Website"
+    read -p "Please input a number:(Default 1 press Enter) " CONTENT_BK
+    [ -z "$CONTENT_BK" ] && CONTENT_BK=1
+    if [ $DESC_BK != 1 -a $DESC_BK != 2 -a $DESC_BK != 3 ];then
+        echo "${CWARNING}input error! Please only input number 1,2,3${CEND}"
+    else
+        break
+    fi
+done
+
+[ "$CONTENT_BK" == '1' ] && sed -i 's@^backup_content=.*@backup_content=db@' ./options.conf
+[ "$CONTENT_BK" == '2' ] && sed -i 's@^backup_content=.*@backup_content=web@' ./options.conf
+[ "$CONTENT_BK" == '3' ] && sed -i 's@^backup_content=.*@backup_content=db,web@' ./options.conf
 
 . ./options.conf
 . ./include/check_db.sh
@@ -71,46 +91,50 @@ do
 done
 sed -i "s@^expired_days=.*@expired_days=$expired_days@" ./options.conf
 
-databases=`$db_install_dir/bin/mysql -uroot -p$dbrootpwd -e "show databases\G" | grep Database | awk '{print $2}' | grep -Evw "(performance_schema|information_schema|mysql|sys)"`
-while :
-do
-    echo
-    echo "Please enter one or more name for database, separate multiple database names with commas: "
-    read -p "(Default database: `echo $databases | tr ' ' ','`) " db_name
-    db_name=`echo $db_name | tr -d ' '`
-    [ -z "$db_name" ] && db_name="`echo $databases | tr ' ' ','`"
-    D_tmp=0
-    for D in `echo $db_name | tr ',' ' '`
+if [ "$CONTENT_BK" != '2' ];then
+    databases=`$db_install_dir/bin/mysql -uroot -p$dbrootpwd -e "show databases\G" | grep Database | awk '{print $2}' | grep -Evw "(performance_schema|information_schema|mysql|sys)"`
+    while :
     do
-        [ -z "`echo $databases | grep -w $D`" ] && { echo "${CWARNING}$D was not exist! ${CEND}" ; D_tmp=1; }
+        echo
+        echo "Please enter one or more name for database, separate multiple database names with commas: "
+        read -p "(Default database: `echo $databases | tr ' ' ','`) " db_name
+        db_name=`echo $db_name | tr -d ' '`
+        [ -z "$db_name" ] && db_name="`echo $databases | tr ' ' ','`"
+        D_tmp=0
+        for D in `echo $db_name | tr ',' ' '`
+        do
+            [ -z "`echo $databases | grep -w $D`" ] && { echo "${CWARNING}$D was not exist! ${CEND}" ; D_tmp=1; }
+        done
+        [ "$D_tmp" != '1' ] && break
     done
-    [ "$D_tmp" != '1' ] && break
-done
-sed -i "s@^db_name=.*@db_name=$db_name@" ./options.conf
+    sed -i "s@^db_name=.*@db_name=$db_name@" ./options.conf
+fi
 
-websites=`ls $wwwroot_dir | grep -vw default`
-while :
-do
-    echo
-    echo "Please enter one or more name for website, separate multiple website names with commas: "
-    read -p "(Default website: `echo $websites | tr ' ' ','`) " website_name 
-    website_name=`echo $website_name | tr -d ' '`
-    [ -z "$website_name" ] && website_name="`echo $websites | tr ' ' ','`"
-    W_tmp=0
-    for W in `echo $website_name | tr ',' ' '`
+if [ "$CONTENT_BK" != '1' ];then
+    websites=`ls $wwwroot_dir | grep -vw default`
+    while :
     do
-        [ ! -e "$wwwroot_dir/$W" ] && { echo "${CWARNING}$wwwroot_dir/$W not exist! ${CEND}" ; W_tmp=1; }
+        echo
+        echo "Please enter one or more name for website, separate multiple website names with commas: "
+        read -p "(Default website: `echo $websites | tr ' ' ','`) " website_name 
+        website_name=`echo $website_name | tr -d ' '`
+        [ -z "$website_name" ] && website_name="`echo $websites | tr ' ' ','`"
+        W_tmp=0
+        for W in `echo $website_name | tr ',' ' '`
+        do
+            [ ! -e "$wwwroot_dir/$W" ] && { echo "${CWARNING}$wwwroot_dir/$W not exist! ${CEND}" ; W_tmp=1; }
+        done
+        [ "$W_tmp" != '1' ] && break
     done
-    [ "$W_tmp" != '1' ] && break
-done
-sed -i "s@^website_name=.*@website_name=$website_name@" ./options.conf
+    sed -i "s@^website_name=.*@website_name=$website_name@" ./options.conf
+fi
 
 echo
 echo "You have to backup the content:"
-echo "Database: ${CMSG}$db_name${CEND}"
-echo "Website: ${CMSG}$website_name${CEND}"
+[ "$CONTENT_BK" != '2' ] && echo "Database: ${CMSG}$db_name${CEND}"
+[ "$CONTENT_BK" != '1' ] && echo "Website: ${CMSG}$website_name${CEND}"
 
-if [ "$remote_bankup_yn" == 'y' ];then
+if [ "$DESC_BK" == '2' -o "$DESC_BK" == '3' ];then
     > tools/iplist.txt
     while :
     do
@@ -131,10 +155,9 @@ if [ "$remote_bankup_yn" == 'y' ];then
         [ -e "~/.ssh/known_hosts" ] && grep $remote_ip ~/.ssh/known_hosts | sed -i "/$remote_ip/d" ~/.ssh/known_hosts
         ./tools/mssh.exp ${IPcode}P $remote_user ${PWcode}P ${Portcode}P true 10
         if [ $? -eq 0 ];then
-            [ -z "`grep $remote_ip tools/iplist.txt`" ] && echo "$remote_ip $remote_port $remote_user $remote_password" >> tools/iplist.txt || echo "${CWARNING}$remote_ip has been added! ${CEND}" 
+            [ -z "`grep $remote_ip tools/iplist.txt`" ] && echo "$remote_ip $remote_port $remote_user $remote_password" >> tools/iplist.txt || echo "${CWARNING}$remote_ip has been added! ${CEND}"
             while :
             do
-                echo
                 read -p "Do you want to add more host ? [y/n]: " more_host_yn 
                 if [ "$more_host_yn" != 'y' -a "$more_host_yn" != 'n' ];then
                     echo "${CWARNING}input error! Please only input 'y' or 'n'${CEND}"

+ 6 - 4
options.conf

@@ -45,10 +45,12 @@ backup_dir=/home/backup
 # How many days before the backup directory will be removed
 expired_days=5
 
-db_name=
+# local ; remote ; local,remote
+backup_destination=
 
-website_name=
+# db ; web
+backup_content=
 
-local_bankup_yn=y
+db_name=
 
-remote_bankup_yn=n
+website_name=