--- a/scripts/seaf-fsck.sh
+++ b/scripts/seaf-fsck.sh
@@ -8,9 +8,9 @@ TOPDIR=$(dirname "${INSTALLPATH}")
 default_ccnet_conf_dir=${TOPDIR}/ccnet
 default_seafile_data_dir=${TOPDIR}/seafile-data
 default_conf_dir=${TOPDIR}/conf
-seaf_fsck=${INSTALLPATH}/seafile/bin/seaf-fsck
+seaf_fsck=/usr/libexec/seaf-fsck
 
-export PATH=${INSTALLPATH}/seafile/bin:$PATH
+export PATH=/usr/libexec:$PATH
 export SEAFILE_LD_LIBRARY_PATH=${INSTALLPATH}/seafile/lib/:${INSTALLPATH}/seafile/lib64:${LD_LIBRARY_PATH}
 
 script_name=$0
--- a/scripts/seaf-fuse.sh
+++ b/scripts/seaf-fuse.sh
@@ -8,9 +8,9 @@ TOPDIR=$(dirname "${INSTALLPATH}")
 default_ccnet_conf_dir=${TOPDIR}/ccnet
 default_seafile_data_dir=${TOPDIR}/seafile-data
 default_conf_dir=${TOPDIR}/conf
-seaf_fuse=${INSTALLPATH}/seafile/bin/seaf-fuse
+seaf_fuse=/usr/libexec/seaf-fuse
 
-export PATH=${INSTALLPATH}/seafile/bin:$PATH
+export PATH=/usr/libexec:$PATH
 export SEAFILE_LD_LIBRARY_PATH=${INSTALLPATH}/seafile/lib/:${INSTALLPATH}/seafile/lib64:${LD_LIBRARY_PATH}
 
 script_name=$0
--- a/scripts/seaf-gc.sh
+++ b/scripts/seaf-gc.sh
@@ -8,10 +8,10 @@ TOPDIR=$(dirname "${INSTALLPATH}")
 default_ccnet_conf_dir=${TOPDIR}/ccnet
 default_seafile_data_dir=${TOPDIR}/seafile-data
 default_conf_dir=${TOPDIR}/conf
-seaf_gc=${INSTALLPATH}/seafile/bin/seafserv-gc
+seaf_gc=/usr/libexec/seafserv-gc
 seaf_gc_opts=""
 
-export PATH=${INSTALLPATH}/seafile/bin:$PATH
+export PATH=/usr/libexec:$PATH
 export SEAFILE_LD_LIBRARY_PATH=${INSTALLPATH}/seafile/lib/:${INSTALLPATH}/seafile/lib64:${LD_LIBRARY_PATH}
 
 script_name=$0
--- a/scripts/seafile.sh
+++ b/scripts/seafile.sh
@@ -18,9 +18,9 @@ TOPDIR=$(dirname "${INSTALLPATH}")
 default_ccnet_conf_dir=${TOPDIR}/ccnet
 default_seafile_data_dir=${TOPDIR}/seafile-data
 central_config_dir=${TOPDIR}/conf
-seaf_controller="${INSTALLPATH}/seafile/bin/seafile-controller"
+seaf_controller="/usr/libexec/seafile-controller"
 
-export PATH=${INSTALLPATH}/seafile/bin:$PATH
+export PATH=/usr/libexec:$PATH
 export ORIG_LD_LIBRARY_PATH=${LD_LIBRARY_PATH}
 export SEAFILE_LD_LIBRARY_PATH=${INSTALLPATH}/seafile/lib/:${INSTALLPATH}/seafile/lib64:${LD_LIBRARY_PATH}
 
--- a/scripts/seahub.sh
+++ b/scripts/seahub.sh
@@ -25,7 +25,7 @@ gunicorn_conf=${TOPDIR}/conf/gunicorn.co
 pidfile=${TOPDIR}/pids/seahub.pid
 errorlog=${TOPDIR}/logs/gunicorn_error.log
 accesslog=${TOPDIR}/logs/gunicorn_access.log
-gunicorn_exe=${INSTALLPATH}/seahub/thirdpart/bin/gunicorn
+gunicorn_exe=/usr/bin/gunicorn3
 
 script_name=$0
 function usage () {
@@ -233,9 +233,9 @@ function clear_sessions () {
 function stop_seahub () {
     if [[ -f ${pidfile} ]]; then
         echo "Stopping seahub ..."
-        pkill -9 -f "thirdpart/bin/gunicorn"
+        pkill -9 -f "/usr/bin/gunicorn3"
         sleep 1
-        if pgrep -f "thirdpart/bin/gunicorn" 2>/dev/null 1>&2 ; then
+        if pgrep -f "/usr/bin/gunicorn3" 2>/dev/null 1>&2 ; then
             echo 'Failed to stop seahub.'
             exit 1
         fi
--- a/scripts/setup-seafile-mysql.py
+++ b/scripts/setup-seafile-mysql.py
@@ -299,7 +299,7 @@ class EnvManager(object):
     def __init__(self):
         self.install_path = os.path.dirname(os.path.abspath(__file__))
         self.top_dir = os.path.dirname(self.install_path)
-        self.bin_dir = os.path.join(self.install_path, 'seafile', 'bin')
+        self.bin_dir = '/usr/libexec'
         self.central_config_dir = os.path.join(self.top_dir, 'conf')
         self.central_pids_dir = os.path.join(self.top_dir, 'pids')
         self.central_logs_dir = os.path.join(self.top_dir, 'logs')
--- a/scripts/setup-seafile.sh
+++ b/scripts/setup-seafile.sh
@@ -455,8 +455,8 @@ if [[ "${need_pause}" == "1" ]]; then
     read dummy
 fi
 
-ccnet_init=${INSTALLPATH}/seafile/bin/ccnet-init
-seaf_server_init=${INSTALLPATH}/seafile/bin/seaf-server-init
+ccnet_init=/usr/libexec/ccnet-init
+seaf_server_init=/usr/libexec/seaf-server-init
 
 # -------------------------------------------
 # Create ccnet conf