1
0
mirror of https://github.com/haiwen/seafile-server.git synced 2025-09-03 08:24:27 +00:00

use default_seafile_data_dir

This commit is contained in:
sniper-py
2019-12-03 15:55:24 +08:00
parent 7f847c5ccd
commit bc825fad17

View File

@@ -12,9 +12,6 @@ default_logs_dir=${TOPDIR}/logs
export SEAFILE_LD_LIBRARY_PATH=${INSTALLPATH}/seafile/lib/:${INSTALLPATH}/seafile/lib64:${LD_LIBRARY_PATH} export SEAFILE_LD_LIBRARY_PATH=${INSTALLPATH}/seafile/lib/:${INSTALLPATH}/seafile/lib64:${LD_LIBRARY_PATH}
use_existing_ccnet="false"
use_existing_seafile="false"
server_manual_http='https://download.seafile.com/published/seafile-manual/home.md' server_manual_http='https://download.seafile.com/published/seafile-manual/home.md'
function welcome () { function welcome () {
@@ -72,20 +69,18 @@ function read_yes_no () {
function check_existing_ccnet () { function check_existing_ccnet () {
if [[ -d ${default_ccnet_conf_dir} ]]; then if [[ -d ${default_ccnet_conf_dir} ]]; then
echo "It seems that you have created a ccnet configuration before. " echo "Error: Ccnet config dir \"${default_ccnet_conf_dir}\" already exists."
echo "Would you like to use the existing configuration?" echo
exit 1;
fi
echo
}
if ! read_yes_no; then function check_existing_seafile () {
echo if [[ -d ${default_seafile_data_dir} ]]; then
echo "Please remove the existing configuration before continuing." echo "Error: Seafile server data dir \"${default_seafile_data_dir}\" already exists."
echo "You can do it by running \"rm -rf ${default_ccnet_conf_dir}\"" echo
echo exit 1;
exit 1;
else
echo
echo "Existing ccnet configuration is being used."
use_existing_ccnet=true
fi
fi fi
echo echo
} }
@@ -201,37 +196,37 @@ function get_server_ip_or_domain () {
echo echo
} }
function get_ccnet_server_port () { # function get_ccnet_server_port () {
question="What tcp port do you want to use for ccnet server?" # question="What tcp port do you want to use for ccnet server?"
hint="10001 is the recommended port." # hint="10001 is the recommended port."
default="10001" # default="10001"
ask_question "${question}\n${hint}" "${default}" # ask_question "${question}\n${hint}" "${default}"
read server_port # read server_port
if [[ "${server_port}" == "" ]]; then # if [[ "${server_port}" == "" ]]; then
server_port="${default}" # server_port="${default}"
fi # fi
if [[ ! ${server_port} =~ ^[0-9]+$ ]]; then # if [[ ! ${server_port} =~ ^[0-9]+$ ]]; then
echo "\"${server_port}\" is not a valid port number. " # echo "\"${server_port}\" is not a valid port number. "
get_ccnet_server_port # get_ccnet_server_port
fi # fi
echo # echo
} # }
function get_seafile_server_port () { # function get_seafile_server_port () {
question="What tcp port would you like to use for seafile server?" # question="What tcp port would you like to use for seafile server?"
hint="12001 is the recommended port." # hint="12001 is the recommended port."
default="12001" # default="12001"
ask_question "${question}\n${hint}" "${default}" # ask_question "${question}\n${hint}" "${default}"
read seafile_server_port # read seafile_server_port
if [[ "${seafile_server_port}" == "" ]]; then # if [[ "${seafile_server_port}" == "" ]]; then
seafile_server_port="${default}" # seafile_server_port="${default}"
fi # fi
if [[ ! ${seafile_server_port} =~ ^[0-9]+$ ]]; then # if [[ ! ${seafile_server_port} =~ ^[0-9]+$ ]]; then
echo "\"${seafile_server_port}\" is not a valid port number. " # echo "\"${seafile_server_port}\" is not a valid port number. "
get_seafile_server_port # get_seafile_server_port
fi # fi
echo # echo
} # }
function get_fileserver_port () { function get_fileserver_port () {
question="What tcp port do you want to use for seafile fileserver?" question="What tcp port do you want to use for seafile fileserver?"
@@ -250,45 +245,45 @@ function get_fileserver_port () {
} }
function get_seafile_data_dir () { # function get_seafile_data_dir () {
question="Where would you like to store your seafile data?" # question="Where would you like to store your seafile data?"
note="Please use a volume with enough free space." # note="Please use a volume with enough free space."
default=${default_seafile_data_dir} # default=${default_seafile_data_dir}
ask_question "${question} \n\033[33mNote: \033[m${note}" "${default}" # ask_question "${question} \n\033[33mNote: \033[m${note}" "${default}"
read seafile_data_dir # read seafile_data_dir
if [[ "${seafile_data_dir}" == "" ]]; then # if [[ "${seafile_data_dir}" == "" ]]; then
seafile_data_dir=${default} # seafile_data_dir=${default}
fi # fi
#
if [[ -d ${seafile_data_dir} && -f ${seafile_data_dir}/seafile.conf ]]; then # if [[ -d ${seafile_data_dir} && -f ${seafile_data_dir}/seafile.conf ]]; then
echo # echo
echo "It seems that you have already existing seafile data in ${seafile_data_dir}." # echo "It seems that you have already existing seafile data in ${seafile_data_dir}."
echo "Would you like to use the existing seafile data?" # echo "Would you like to use the existing seafile data?"
if ! read_yes_no; then # if ! read_yes_no; then
echo "You have chosen not to use existing seafile data in ${seafile_data_dir}" # echo "You have chosen not to use existing seafile data in ${seafile_data_dir}"
echo "You need to specify a different seafile data directory or remove ${seafile_data_dir} before continuing." # echo "You need to specify a different seafile data directory or remove ${seafile_data_dir} before continuing."
get_seafile_data_dir # get_seafile_data_dir
else # else
use_existing_seafile="true" # use_existing_seafile="true"
fi # fi
elif [[ -d ${seafile_data_dir} && $(ls -A ${seafile_data_dir}) != "" ]]; then # elif [[ -d ${seafile_data_dir} && $(ls -A ${seafile_data_dir}) != "" ]]; then
echo # echo
echo "${seafile_data_dir} is an existing non-empty directory. Please specify a different directory" # echo "${seafile_data_dir} is an existing non-empty directory. Please specify a different directory"
echo # echo
get_seafile_data_dir # get_seafile_data_dir
elif [[ ! ${seafile_data_dir} =~ ^/ ]]; then # elif [[ ! ${seafile_data_dir} =~ ^/ ]]; then
echo # echo
echo "\"${seafile_data_dir}\" is not an absolute path. Please specify an absolute path." # echo "\"${seafile_data_dir}\" is not an absolute path. Please specify an absolute path."
echo # echo
get_seafile_data_dir # get_seafile_data_dir
elif [[ ! -d $(dirname ${seafile_data_dir}) ]]; then # elif [[ ! -d $(dirname ${seafile_data_dir}) ]]; then
echo # echo
echo "The path $(dirname ${seafile_data_dir}) does not exist." # echo "The path $(dirname ${seafile_data_dir}) does not exist."
echo # echo
get_seafile_data_dir # get_seafile_data_dir
fi # fi
echo # echo
} # }
function gen_gunicorn_conf () { function gen_gunicorn_conf () {
mkdir -p ${default_conf_dir} mkdir -p ${default_conf_dir}
@@ -336,13 +331,13 @@ fi
function copy_user_manuals() { function copy_user_manuals() {
src_docs_dir=${INSTALLPATH}/seafile/docs/ src_docs_dir=${INSTALLPATH}/seafile/docs/
library_template_dir=${seafile_data_dir}/library-template library_template_dir=${default_seafile_data_dir}/library-template
mkdir -p ${library_template_dir} mkdir -p ${library_template_dir}
cp -f ${src_docs_dir}/*.doc ${library_template_dir} cp -f ${src_docs_dir}/*.doc ${library_template_dir}
} }
function parse_params() { function parse_params() {
while getopts n:i:p:d arg; do while getopts n:i:p arg; do
case $arg in case $arg in
n) n)
server_name=${OPTARG} server_name=${OPTARG}
@@ -353,9 +348,6 @@ function parse_params() {
p) p)
fileserver_port=${OPTARG} fileserver_port=${OPTARG}
;; ;;
d)
seafile_data_dir=${OPTARG}
;;
esac esac
done done
} }
@@ -387,20 +379,6 @@ function validate_params() {
echo "Invalid fileserver port param" echo "Invalid fileserver port param"
err_and_quit; err_and_quit;
fi fi
if [[ "${seafile_data_dir}" == "" ]]; then
seafile_data_dir=${SEAFILE_DIR:-${default_seafile_data_dir}}
fi
if [[ -d ${seafile_data_dir} && $(ls -A ${seafile_data_dir}) != "" ]]; then
echo "${seafile_data_dir} is an existing non-empty directory. Please specify a different directory"
err_and_quit
elif [[ ! ${seafile_data_dir} =~ ^/ ]]; then
echo "\"${seafile_data_dir}\" is not an absolute path. Please specify an absolute path."
err_and_quit
elif [[ ! -d $(dirname ${seafile_data_dir}) ]]; then
echo "The path $(dirname ${seafile_data_dir}) does not exist."
err_and_quit
fi
} }
function usage() { function usage() {
@@ -444,43 +422,32 @@ check_system_dependency;
sleep .5 sleep .5
check_existing_ccnet; check_existing_ccnet;
if [[ ${use_existing_ccnet} != "true" ]]; then check_existing_seafile;
if [[ "${server_name}" == "" ]]; then
get_server_name; if [[ "${server_name}" == "" ]]; then
fi get_server_name;
if [[ "${ip_or_domain}" == "" ]]; then
get_server_ip_or_domain;
fi
# get_ccnet_server_port;
fi fi
if [[ "$seafile_data_dir" == "" ]]; then if [[ "${ip_or_domain}" == "" ]]; then
get_seafile_data_dir; get_server_ip_or_domain;
fi fi
if [[ ${use_existing_seafile} != "true" ]]; then
# get_seafile_server_port if [[ "$fileserver_port" == "" ]]; then
if [[ "$fileserver_port" == "" ]]; then get_fileserver_port
get_fileserver_port
fi
fi fi
sleep .5 sleep .5
printf "\nThis is your config information:\n\n" printf "\nThis is your config information:\n\n"
if [[ ${use_existing_ccnet} != "true" ]]; then printf "server name: \033[33m${server_name}\033[m\n"
printf "server name: \033[33m${server_name}\033[m\n" printf "server ip/domain: \033[33m${ip_or_domain}\033[m\n"
printf "server ip/domain: \033[33m${ip_or_domain}\033[m\n"
else
printf "ccnet config: use existing config in \033[33m${default_ccnet_conf_dir}\033[m\n" printf "seafile data dir: \033[33m${default_seafile_data_dir}\033[m\n"
fi printf "fileserver port: \033[33m${fileserver_port}\033[m\n"
if [[ ${use_existing_seafile} != "true" ]]; then
printf "seafile data dir: \033[33m${seafile_data_dir}\033[m\n"
printf "fileserver port: \033[33m${fileserver_port}\033[m\n"
else
printf "seafile data dir: use existing data in \033[33m${seafile_data_dir}\033[m\n"
fi
if [[ "${need_pause}" == "1" ]]; then if [[ "${need_pause}" == "1" ]]; then
echo echo
@@ -494,39 +461,39 @@ seaf_server_init=${INSTALLPATH}/seafile/bin/seaf-server-init
# ------------------------------------------- # -------------------------------------------
# Create ccnet conf # Create ccnet conf
# ------------------------------------------- # -------------------------------------------
if [[ "${use_existing_ccnet}" != "true" ]]; then
echo "Generating ccnet configuration in ${default_ccnet_conf_dir}..."
echo
if ! LD_LIBRARY_PATH=$SEAFILE_LD_LIBRARY_PATH "${ccnet_init}" \
-F "${default_conf_dir}" \
-c "${default_ccnet_conf_dir}" \
--host "${ip_or_domain}"; then
err_and_quit;
fi
echo echo "Generating ccnet configuration in ${default_ccnet_conf_dir}..."
echo
if ! LD_LIBRARY_PATH=$SEAFILE_LD_LIBRARY_PATH "${ccnet_init}" \
-F "${default_conf_dir}" \
-c "${default_ccnet_conf_dir}" \
--host "${ip_or_domain}"; then
err_and_quit;
fi fi
echo
sleep 0.5 sleep 0.5
# ------------------------------------------- # -------------------------------------------
# Create seafile conf # Create seafile conf
# ------------------------------------------- # -------------------------------------------
if [[ "${use_existing_seafile}" != "true" ]]; then
echo "Generating seafile configuration in ${seafile_data_dir} ..."
echo
if ! LD_LIBRARY_PATH=$SEAFILE_LD_LIBRARY_PATH ${seaf_server_init} \
--central-config-dir "${default_conf_dir}" \
--seafile-dir "${seafile_data_dir}" \
--fileserver-port ${fileserver_port}; then
echo "Failed to generate seafile configuration" echo "Generating seafile configuration in ${default_seafile_data_dir} ..."
err_and_quit; echo
fi if ! LD_LIBRARY_PATH=$SEAFILE_LD_LIBRARY_PATH ${seaf_server_init} \
--central-config-dir "${default_conf_dir}" \
--seafile-dir "${default_seafile_data_dir}" \
--fileserver-port ${fileserver_port}; then
echo echo "Failed to generate seafile configuration"
err_and_quit;
fi fi
echo
# ------------------------------------------- # -------------------------------------------
# Write seafile.ini # Write seafile.ini
# ------------------------------------------- # -------------------------------------------
@@ -730,7 +697,7 @@ echo
chmod 0600 "$dest_settings_py" chmod 0600 "$dest_settings_py"
chmod 0700 "$default_ccnet_conf_dir" chmod 0700 "$default_ccnet_conf_dir"
chmod 0700 "$seafile_data_dir" chmod 0700 "$default_seafile_data_dir"
chmod 0700 "$default_conf_dir" chmod 0700 "$default_conf_dir"
# ------------------------------------------- # -------------------------------------------