Ignore:
Timestamp:
Jun 14, 2010, 2:29:25 PM (14 years ago)
Author:
rock
Message:

(1)新增語言(英文和繁中)
(2)BugFix?: tomcat 無法 shutdown (多 kill 步驟)

File:
1 edited

Legend:

Unmodified
Added
Removed
  • nutchez-0.2/src/test/nutchez

    r185 r186  
    1010
    1111# [Variables Declaration] #
    12 DIALOG=dialog
     12DIALOG="dialog"
    1313main_choice=
     14lang=
    1415
    1516# [PATH Declaration] #
    16 NutchEZ_Install_PATH=/opt/nutchez
    17 Tomcat_HOME=/opt/nutchez/tomcat
    18 NutchEZ_HOME=/home/nutchuser/nutchez
     17NutchEZ_Install_PATH="/opt/nutchez"
     18Tomcat_HOME="/opt/nutchez/tomcat"
     19NutchEZ_HOME="/home/nutchuser/nutchez"
     20
     21# [Env Declaration] #
     22. lang_en_US_nutchez
    1923
    2024# [Functions Declaration] #
    21 ## [Prepare Check]  ##
     25## [Pre-check for language] ##
     26function prepare_lang(){
     27lang=$(locale | grep 'LANG=' | cut -d "=" -f2)
     28
     29# if lang=zh then source lang_zh_TW_nutchez
     30echo $lang | grep 'zh' && source lang_zh_TW_nutchez
     31}
     32
     33
     34## [Pre-Check for nutch_nodes file] ##
    2235function prepare_check(){
    2336# 若無 nutchez_nodes 則跳出
    2437if [ ! -e "${NutchEZ_HOME}/system/nutch_nodes" ]; then
    25     $DIALOG --clear --backtitle "= [NutchEz Management Interface] ~by NCHC =" --title "[nutch_nodes Files]" \
    26     --msgbox "Fail: Don't find $NutchEZ_HOME/system/nutch_nodes !!!" 10 40
     38    $DIALOG --clear --backtitle "$dia_back" --title "$dia_pre_check_title_1" \
     39    --msgbox "$dia_pre_check_msg_1 $NutchEZ_HOME/system/nutch_nodes !!!" 10 40
    2740    exit
    2841fi
     
    3144# 第一次執行則要求 user 更新 /etc/hosts
    3245if [ ! -e "${NutchEZ_HOME}/system/nutch_nodes.bak" ]; then
    33     $DIALOG --clear --backtitle "= [NutchEz Management Interface] ~by NCHC =" --title "[/etc/host Update]" \
    34     --yesno "First execut nutchez management interface.\nPlz update /etc/hosts !!!" 10 55
    35 
    36     echo -e "Plz input root password to update /etc/hosts !!!"
     46    $DIALOG --clear --backtitle "$dia_back" --title "$dia_pre_check_title_2" \
     47    --yesno "$dia_pre_check_yesno_1\n$dia_pre_check_yesno_2" 10 55
     48
     49    echo -e "$pre_check_echo_1"
    3750    ./duplicate_del "${NutchEZ_HOME}/system/nutch_nodes"
    3851    su root -c "./duplicate_del /etc/hosts && ./add_hosts ${NutchEZ_HOME}/system/nutch_nodes /etc/hosts"
    3952    # 若密碼輸入失敗則跳出
    4053    if [ $? == "1" ]; then
    41         echo "Root password is error ! Plz check root password !!!"
     54        echo "$pre_check_echo_2"
    4255        exit
    4356    fi
    4457# 若 nutch_nodes 被更新過,則要求更新 /etc/hosts
    4558elif [ ${NutchEZ_HOME}/system/nutch_nodes -nt ${NutchEZ_HOME}/system/nutch_nodes.bak ]; then
    46     $DIALOG --clear --backtitle "= [NutchEz Management Interface] ~by NCHC =" --title "[/etc/host Update]" \
    47     --yesno "nutch_nodes already be modified.\nPlz update /etc/hosts !!!" 10 55
    48 
    49     echo -e "Plz input root password to update /etc/hosts !!!"
     59    $DIALOG --clear --backtitle "$dia_back" --title "$dia_pre_check_title_2" \
     60    --yesno "$dia_pre_check_yesno_3\n$dia_pre_check_yesno_2" 10 55
     61
     62    echo -e "$pre_check_echo_1"
    5063    ./duplicate_del "${NutchEZ_HOME}/system/nutch_nodes"
    5164    su root -c "./duplicate_del /etc/hosts && ./add_hosts ${NutchEZ_HOME}/system/nutch_nodes /etc/hosts"
    5265    # 若密碼輸入失敗則跳出                   
    5366    if [ $? == "1" ]; then                   
    54         echo "Root password is error ! Plz check root password !!!"
     67        echo "$pre_check_echo_2="
    5568        exit                                 
    5669    fi
     
    6275main_choice="/tmp/main_choice"
    6376
    64 $DIALOG --clear --backtitle "= [NutchEz Management Interface] ~by NCHC =" \
    65     --title "[Management Options]" \
    66         --menu "Plz choose: " 15 60 7 \
    67         "cluster_status" "Check cluster status" \
    68         "server_setup" "Setup namenode & jobtracker" \
    69         "cluster_setup" "Setup datanode & tasktracker" \
    70         "tomcat_switch" "Start/Stop/Restart Tomcat" \
    71         "tomcat_port" "Change Tomcat port" \
    72         "lang_switch" "Change language" \
    73         "exit" "Exit" 2>$main_choice
     77$DIALOG --clear --backtitle "$dia_back" \
     78    --title "$dia_main_title_1" \
     79        --menu "$dia_choose" 15 60 7 \
     80        "cluster_status" "$dia_main_menu_1_1" \
     81        "cluster_setup" "$dia_main_menu_1_2" \
     82        "server_setup" "$dia_main_menu_1_3" \
     83        "tomcat_switch" "$dia_main_menu_1_4" \
     84        "tomcat_port" "$dia_main_menu_1_5" \
     85        "lang_switch" "$dia_main_menu_1_6" \
     86        "exit" "$dia_exit" 2>$main_choice
    7487}
    7588
     
    8093rm $clusterStatus 2> /dev/null
    8194#printf '%16s\t %11s\t %10s\t %25s\n' "[IP] [Hostanme] [Network] [Dtatnode & Tasktracker]" >>$clusterStatus
    82 echo -e "[IP] \t\t [Hostname] \t [Network] \t [Dtatnode & Tasktracker]" >>$clusterStatus
     95echo -e "$cluster_status_echo_1" >>$clusterStatus
    8396echo -e "------------------------------------------------------------------------" >>$clusterStatus
    84 echo -e "\nStart to check cluster..."
     97echo -e "\n$cluster_status_echo_2"
    8598for ip in $IP_list
    8699do
     
    94107    fi
    95108
    96 #   if [ $? == "255" ]; then
    97 #   echo -e "$ip Network is down"
    98 #   elif [ $? == "1" ]; then
    99 #   echo -e "Can't ssh to $ip"
    100 #   fi
    101 
    102109    [ -z "$Task_Data" ] || Task_Data_status="running"
    103110    host_name=$(cat $NutchEZ_HOME/system/nutch_nodes | grep $ip | awk '{print $2}')
    104     echo  -e "$ip  $host_name \t\t $ip_status \t $Task_Data_status" >>$clusterStatus
     111    echo -e "$ip  $host_name \t\t $ip_status \t $Task_Data_status" >>$clusterStatus
    105112#    printf '%16s\t %11s\t %10s\t %25s\n' "$ip $host_name $ip_status $Task_Data_status" >>$clusterStatus
    106113done
    107114
    108 read -p "Plz input anykey to continue..."
    109 $DIALOG --clear --backtitle "= [NutchEz Management Interface] ~by NCHC =" \
    110      --title "[Cluster Status]" --textbox $clusterStatus 20 90
    111 }
    112 
    113 
    114 ## [Cluster Setup (namenode & jobtracker)] ##
     115read -p "$cluster_status_read_1"
     116$DIALOG --clear --backtitle "$dia_back" \
     117     --title "$dia_cluster_status_title_1" --textbox $clusterStatus 20 90
     118}
     119
     120
     121## [Server Setup (namenode & jobtracker)] ##
    115122function server_setup(){
    116123serverSetup=/tmp/serverSetup
     
    119126
    120127if [ -z "$pid_name" -a -z "$pid_job" ]; then                                                                                               
    121     $DIALOG --clear --backtitle "= [NutchEz Management Interface] ~by NCHC =" --title "[Server Status]" \
    122     --msgbox "Namenode & Jobtracker are not running" 7 50
     128    $DIALOG --clear --backtitle "$dia_back" --title "$dia_server_title_1" \
     129    --msgbox "$dia_server_msg_1" 7 50
    123130elif [ -z "$pid_name" -a -n "$pid_job" ]; then
    124     $DIALOG --clear --backtitle "= [NutchEz Management Interface] ~by NCHC =" --title "[Server Status]" \
    125     --msgbox "Jobtracker is running, Namenode is not running" 7 50
     131    $DIALOG --clear --backtitle "$dia_back" --title "$dia_server_title_1" \
     132    --msgbox "$dia_server_msg_2" 7 50
    126133elif [ -n "$pid_name" -a -z "$pid_job" ]; then
    127     $DIALOG --clear --backtitle "= [NutchEz Management Interface] ~by NCHC =" --title "[Server Status]" \
    128     --msgbox "Namenode is running, Jobtracker is not running" 7 50
    129 else
    130     $DIALOG --clear --backtitle "= [NutchEz Management Interface] ~by NCHC =" --title "[Server Status]" \
    131     --msgbox "Namenode & Jobtracker are running" 7 50
    132 fi
    133 
    134 $DIALOG --clear --backtitle "= [NutchEz Management Interface] ~by NCHC =" --title "[Namenode & Jobtracker Setup]" \
    135     --menu "Plz choose: " 15 65 4 \
    136     "start" "Start namenode & jobtracker" \
    137     "stop" "Stop namenode & jobtracker" \
    138     "restart" "restart namenode & jobtracker" \
    139     "exit" "Exit" 2>$serverSetup
     134    $DIALOG --clear --backtitle "$dia_back" --title "$dia_server_title_1" \
     135    --msgbox "$dia_server_msg_3" 7 50
     136else
     137    $DIALOG --clear --backtitle "$dia_back" --title "$dia_server_title_1" \
     138    --msgbox "$dia_server_msg_4" 7 50
     139fi
     140
     141$DIALOG --clear --backtitle "$dia_back" --title "$dia_server_title_2" \
     142    --menu "$dia_choose" 15 65 4 \
     143    "start" "$dia_server_menu_1_1" \
     144    "stop" "$dia_server_menu_1_2" \
     145    "restart" "$dia_server_menu_1_3" \
     146    "exit" "$dia_exit" 2>$serverSetup
    140147
    141148if [ "$(cat $serverSetup)" == "start" ]; then
     
    153160    exit
    154161fi
    155 
    156 
    157162}
    158163
     
    168173clusterSetup="/tmp/clusterSetup"
    169174
    170 $DIALOG --clear --backtitle "= [NutchEz Management Interface] ~by NCHC =" \
    171     --title "[Management Options]" \
    172     --menu "Plz choose: " 15 55 3 \
    173     "All" "All nodes" \
    174     "Part" "Choose part nodess" \
    175     "Exit" "Exit" 2>$allpart
     175$DIALOG --clear --backtitle "$dia_back" \
     176    --title "$dia_cluster_setup_title_1" \
     177    --menu "$dia_choose" 15 55 3 \
     178    "All" "$dia_cluster_setup_menu_1_1" \
     179    "Part" "$dia_cluster_setup_menu_1_2" \
     180    "Exit" "$dia_exit" 2>$allpart
    176181
    177182# 判斷是否選 all 和 part,若是 all 直接到服務選單,若是 part 則先到機器選單
     
    179184     cat $NutchEZ_HOME/system/nutch_nodes | grep -v '^$' | grep -v '#'  | awk '{print $1}' >$runNodes
    180185elif [ "$(cat $allpart)" == "Part" ]; then
    181     $DIALOG --clear --backtitle "= [NutchEz Management Interface] ~by NCHC  = " --title "[Datanode & Tasktracker Nodes Choose]" \
    182     --checklist "datanode & tasktracker choose: " 15 55 7 $(cat $NutchEZ_HOME/system/nutch_nodes | \
     186    $DIALOG --clear --backtitle "$dia_back" --title "$dia_cluster_setup_title_2" \
     187    --checklist "$dia_cluster_setup_check_1" 15 55 7 $(cat $NutchEZ_HOME/system/nutch_nodes | \
    183188    grep -v '^$' | grep -v '#'  | awk '{print $1 "\t" $2 "\t" "$LIST_status" }') 2>$runNodes
    184189else
     
    192197fi
    193198
    194 $DIALOG --clear --backtitle "= [NutchEz Management Interface] ~by NCHC =" --title "[Datanode & Tasktracker Setup]" \
    195     --menu "Plz choose: " 15 65 4 \
    196     "start" "Start datanodes & tasktrackers" \
    197     "stop" "Stop datanodes & tasktrackers" \
    198     "restart" "restart datanodes & tasktrackers" \
    199     "exit" "Exit" 2>$clusterSetup
     199$DIALOG --clear --backtitle "$dia_back" --title "$dia_cluster_setup_title_3" \
     200    --menu "$dia_choose" 15 65 4 \
     201    "start" "$dia_cluster_setup_menu_2_1" \
     202    "stop" "$dia_cluster_setup_menu_2_2" \
     203    "restart" "$dia_cluster_setup_menu_2_3" \
     204    "exit" "$dia_exit" 2>$clusterSetup
    200205
    201206if [ "$(cat $clusterSetup)" == "start" ]; then
    202     echo -e "\n[Start datanode & tasktracker]"
     207    echo -e "\n$cluster_setup_echo_1"
     208    for node in $(cat $runNodes)
     209    do
     210        ssh -o StrictHostKeyChecking=no $node "$NutchEZ_Install_PATH/nutch/bin/hadoop-daemon.sh start datanode \
     211        ; $NutchEZ_Install_PATH/nutch/bin/hadoop-daemon.sh start tasktracker" 2>/dev/null
     212        [ $? == "0" ] || echo "$cluster_setup_echo_error $node !!!"
     213    done
     214elif [ "$(cat $clusterSetup)" == "stop" ]; then
     215    echo -e "\n$cluster_setup_echo_3"
    203216    for node in $(cat $runNodes)
    204217    do
    205         echo -e "start $node datanode & tasktracker !"
    206         ssh -o StrictHostKeyChecking=no $node "$NutchEZ_Install_PATH/nutch/bin/hadoop-daemon.sh start datanode \
    207         ; $NutchEZ_Install_PATH/nutch/bin/hadoop-daemon.sh start tasktracker"
    208         [ $? == "0" ] || echo "Can't ssh to $node !!!"
    209     done
    210 elif [ "$(cat $clusterSetup)" == "stop" ]; then
    211     echo -e "\n[Stop datanode & tasktracker]"
    212     for node in $(cat $runNodes)
    213     do
    214         echo -e "stop $node datanode & tasktracker !"
    215218        ssh -o StrictHostKeyChecking=no $node "$NutchEZ_Install_PATH/nutch/bin/hadoop-daemon.sh stop datanode \
    216         ; $NutchEZ_Install_PATH/nutch/bin/hadoop-daemon.sh stop tasktracker"
    217         [ $? == "0" ] || echo "Can't ssh to $node !!!"
     219        ; $NutchEZ_Install_PATH/nutch/bin/hadoop-daemon.sh stop tasktracker" 2>/dev/null
     220        [ $? == "0" ] || echo "$cluster_setup_echo_error $node !!!"
    218221    done
    219222elif [ "$(cat $clusterSetup)" == "restart"  ]; then
    220     echo -e "\n[Restart datanode & tasktracker]"
     223    echo -e "\n$cluster_setup_echo_5"
    221224    for node in $(cat $runNodes)
    222225    do 
    223         echo -e "restart $node datanode & tasktracker !"
    224226        ssh -o StrictHostKeyChecking=no $node "$NutchEZ_Install_PATH/nutch/bin/hadoop-daemon.sh stop datanode \
    225227        ; $NutchEZ_Install_PATH/nutch/bin/hadoop-daemon.sh stop tasktracker \
    226228        ; $NutchEZ_Install_PATH/nutch/bin/hadoop-daemon.sh start datanode \
    227         ; $NutchEZ_Install_PATH/nutch/bin/hadoop-daemon.sh start tasktracker"
    228         [ $? == "0" ] || echo "Can't ssh to $node !!!"
     229        ; $NutchEZ_Install_PATH/nutch/bin/hadoop-daemon.sh start tasktracker" 2>/dev/null
     230        [ $? == "0" ] || echo "$cluster_setup_echo_error $node !!!"
    229231    done
    230232else
     
    235237## [Tomcat Severice start/stop/restart] ##
    236238function tomcat_switch(){
    237 pid_tc=$(ps axw -eo pid,command | grep "catalina" | grep "java" | grep "start" | awk '{print $1}')
    238 #echo $pid_tc
    239 #read
    240 if [ -n "$pid_tc" ]; then
    241     $DIALOG --clear --backtitle "= [NutchEz Management Interface] ~by NCHC =" --title "[Tomcat Status]" \
    242         --msgbox "Tomcat is runing in this system !!!" 7 50
    243 else
    244     $DIALOG --clear --backtitle "= [NutchEz Management Interface] ~by NCHC =" --title "[Tomcat Status]" \
    245         --msgbox "Tomcat is not running in this system !!!" 7 50
     239tom_pids=$(ps x | grep -v 'grep' | grep "tomcat" | awk '{print $1}')
     240if [ -n "$tom_pids" ]; then
     241    $DIALOG --clear --backtitle "$dia_back" --title "$dia_tomcat_switch_title_1" \
     242        --msgbox "$dia_tomcat_switch_msg_1" 7 50
     243else
     244    $DIALOG --clear --backtitle "$dia_back" --title "$dia_tomcat_switch_title_1" \
     245        --msgbox "$dia_tomcat_switch_msg_2" 7 50
    246246fi
    247247tomcatSwitch="/tmp/tomcatSwitch"
    248 $DIALOG --clear --backtitle "= [NutchEz Management Interface] ~by NCHC =" --title "[Tomcat Service Options]" \
    249     --menu "Plz choose: " 15 55 4 \
    250         "start" "Start tomcat" \
    251         "stop" "Stop tomcat" \
    252         "restart" "Restart tomcat" \
    253         "exit" "Exit" 2>$tomcatSwitch
     248$DIALOG --clear --backtitle "$dia_back" --title "$dia_tomcat_switch_title_2" \
     249    --menu "$dia_choose" 15 55 4 \
     250        "start" "$dia_tomcat_switch_menu_1_1" \
     251        "stop" "$dia_tomcat_switch_menu_1_2" \
     252        "restart" "$dia_tomcat_switch_menu_1_3" \
     253        "exit" "$dia_exit" 2>$tomcatSwitch
    254254
    255255if [ "$(cat $tomcatSwitch)" == "exit" ]; then
     
    259259# jude $Tomcat_HOME/bin/startup.sh
    260260if [ ! -e $Tomcat_HOME/bin/startup.sh ]; then
    261     echo -e "\nDon't fine $Tomcat_HOME/bin/startup.sh"
     261    echo -e "\n$tomcat_switch_echo_1 $Tomcat_HOME/bin/startup.sh"
    262262    exit
    263263fi
    264264
    265265if [ ! -e $Tomcat_HOME/bin/shutdown.sh ]; then
    266     echo -e "\nDon't fine $Tomcat_HOME/bin/shutdown.sh"
     266    echo -e "\n$tomcat_switch_echo_1 $Tomcat_HOME/bin/shutdown.sh"
    267267    exit
    268268fi
    269269
    270270if [ "$(cat $tomcatSwitch)" == "start" ]; then
    271     echo "[Start Tomcat]"
     271    echo "$tomcat_switch_echo_3"
    272272    $Tomcat_HOME/bin/startup.sh
    273273elif [ "$(cat $tomcatSwitch)" == "stop" ]; then
    274     echo "[Stop Tomcat]"
     274    echo "$tomcat_switch_echo_4"
    275275    $Tomcat_HOME/bin/shutdown.sh
     276    for tom_pid in $tom_pids
     277    do
     278        kill -9 $tom_pid 2>/dev/null
     279    done
    276280elif [ "$(cat $tomcatSwitch)" == "restart" ]; then
    277     echo "[Restart Tomcat]"
     281    echo "$tomcat_switch_echo_5"
    278282    $Tomcat_HOME/bin/shutdown.sh
     283    for tom_pid in $tom_pids
     284    do
     285        kill -9 $tom_pid 2>/dev/null
     286    done
    279287    $Tomcat_HOME/bin/startup.sh
    280288else
     
    287295
    288296if [ ! -e $Tomcat_HOME/conf/server.xml ]; then
    289     $DIALOG --clear --backtitle "= [NutchEz Management Interface] ~by NCHC =" --title "[Tomcat Servel.xml]" \
    290         --msgbox "Fial: Don't find $Tomcat_HOME/conf/server.xml !!!" 10 50
     297    $DIALOG --clear --backtitle "$dia_back" --title "$dia_tomcat_port_title_1" \
     298        --msgbox "$dia_tomcat_port_msg_1 $Tomcat_HOME/conf/server.xml !!!" 10 50
    291299    exit
    292300fi
    293301tomcatPort="/tmp/tomcatPort"
    294 $DIALOG --clear --backtitle "= [NutchEz Management Interface] ~by NCHC  = " --title "[Tomcat Port Change]" \
    295     --inputbox "Plz input port number for tomcat (default is 8080)" 10 55 2>$tomcatPort
     302$DIALOG --clear --backtitle "$dia_back" --title "$dia_tomcat_port_title_2" \
     303    --inputbox "$dia_tomcat_port_input_1" 10 55 2>$tomcatPort
    296304
    297305if [ -z "$(cat $tomcatPort)" ]; then
     
    300308    modify_line_nu=$(cat -n $Tomcat_HOME/conf/server.xml | grep -v SSL | grep 'HTTP/1.1' | grep '<Connector' | awk '{print $1}')
    301309    sed -i "${modify_line_nu}c <Connector port=\"$(cat $tomcatPort)\" protocol=\"HTTP/1.1\"" $Tomcat_HOME/conf/server.xml
     310
     311    tom_pids=$(ps x | grep -v 'grep' | grep "tomcat" | awk '{print $1}')
    302312    $Tomcat_HOME/bin/shutdown.sh
     313    for tom_pid in $tom_pids
     314       do
     315           kill -9 $tom_pid 2>/dev/null
     316       done
    303317    $Tomcat_HOME/bin/startup.sh
    304318fi
    305 
    306 
    307319}
    308320
     
    310322## [Language Change] ##
    311323function lang_switch(){
    312 echo -e "lang_switch"
    313324langSwitch="/tmp/langSwitch"
    314 $DIALOG --clear --backtitle "= [NutchEz Management Interface] ~by NCHC  =" --title "[Language Swaitch]" \
    315     --menu "Plz choose: " 15 55 3 \
    316     "English" "English" \
    317     "Chinese" "Chinese" \
    318     "Exit" "Exit" 2>$langSwitch
     325$DIALOG --clear --backtitle "$dia_back" --title "$dia_lang_title_1" \
     326    --menu "$dia_choose" 15 55 3 \
     327    "en_US" "$dia_lang_menu_1_1" \
     328    "zh_TW" "$dia_lang_menu_1_2" \
     329    "Exit" "$dia_exit" 2>$langSwitch
    319330#
    320331if [ "$(cat $langSwitch)" == "Exit" ]; then
    321332    exit
    322 else
    323     echo "source $(cat $langSwitch)"
    324 fi
    325 }
    326 
    327 
    328 # [Main Code] #
    329 if [ $USER != "nutchuser" ]; then
    330     echo -e "\nYour identify is not nutchuser, plz change to \"nutchuser\" !!!"
    331     exit
    332 fi
    333 
    334 prepare_check
    335 main_menu
     333elif [ "$(cat $langSwitch)" == "en_US" ]; then
     334    source lang_en_US_nutchez
     335    main_menu
     336    menu_choose
     337elif [ "$(cat $langSwitch)" == "zh_TW" ]; then
     338    source lang_zh_TW_nutchez
     339    main_menu
     340    menu_choose
     341fi
     342}
     343
     344## [Menu_choose] ##
     345function menu_choose(){
    336346case $(cat $main_choice) in
    337347    "cluster_status")
    338348        cluster_status;;
     349    "cluster_setup")
     350        cluster_setup;;
    339351    "server_setup")   
    340352        server_setup;;
    341     "cluster_setup")
    342         cluster_setup;;
    343353    "tomcat_switch")
    344354        tomcat_switch;;
     
    348358        lang_switch;;
    349359esac
     360}
     361
     362# [Main Code] #
     363if [ $USER != "nutchuser" ]; then
     364    echo -e "\n$user_error"
     365    exit
     366fi
     367
     368prepare_lang
     369prepare_check
     370main_menu
     371menu_choose
Note: See TracChangeset for help on using the changeset viewer.