diff --git a/java/java_install.sh b/java/java_install.sh
index d6d9f12..d3b7dbf 100755
--- a/java/java_install.sh
+++ b/java/java_install.sh
@@ -1,12 +1,12 @@
#!/bin/bash
-export JAVA_HOME="$1"
+export JAVA_HOME="$1/jdk"
JAVA_BIN_DIR="$JAVA_HOME/bin"
JAVA_VERSION="11.0.19"
JAVA_UPDATE="7"
JAVA_VERSION_ENCODED="${JAVA_VERSION}%2B${JAVA_UPDATE}"
-JAVA_VERSION="${JAVA_VERSION}_${JAVA_UPDATE}"
+JAVA_FULL_VERSION="${JAVA_VERSION}_${JAVA_UPDATE}"
JDK_DEST="jdk-${JAVA_VERSION}+${JAVA_UPDATE}"
JAVA_ARCH=""
@@ -24,8 +24,9 @@ else
echo "x86 architecture, 32-bit is not supported"
fi
-if [ ! -d "$JAVA_BIN_DIR" ] && [! -z ${JAVA_ARCH} ]; then
- JDK_TAR_GZ_FILE=${JAVA_ARCH}${JAVA_VERSION}".tar.gz"
+if [ ! -d ${JAVA_BIN_DIR} ] && [ ! -z ${JAVA_ARCH} ]; then
+ JDK_TAR_GZ_FILE=${JAVA_ARCH}${JAVA_FULL_VERSION}".tar.gz"
+ mkdir -p $JAVA_HOME
cd "$JAVA_HOME"
wget https://github.com/adoptium/temurin11-binaries/releases/download/jdk-${JAVA_VERSION_ENCODED}/${JDK_TAR_GZ_FILE}
tar -xvf ${JDK_TAR_GZ_FILE} -C "$JAVA_HOME"
diff --git a/mysql/my.cnf b/mysql/my.cnf
index c9bd568..953ec3a 100644
--- a/mysql/my.cnf
+++ b/mysql/my.cnf
@@ -22,20 +22,18 @@
# The following values assume you have at least 32M ram
[mysqld_safe]
-socket = /mysql/server/bin/mysqld.sock
+socket = /bin/mysqld.sock
nice = 0
[mysqld]
#
# * Basic Settings
#
-user = mysql
-pid-file = /mysql/server/bin/mysqld.pid
-socket = /mysql/server/bin/mysqld.sock
-basedir = /mysql/server/
-datadir = /mysql/server/data
-tmpdir = /mysql/server/tmp
-lc-messages-dir = /mysql/server/share
+#pid-file = /bin/mysqld.pid
+#socket = /bin/mysqld.sock
+#basedir = /
+#tmpdir = /tmp
+#lc-messages-dir = /share
lc_messages = en_US
character-set-server = utf8mb4
collation-server = utf8mb4_bin
@@ -57,22 +55,22 @@ max_heap_table_size = 48M
myisam-recover-options = BACKUP
max_connections = 400
-#general_log_file = /var/log/mysql/mysql.log
+#general_log_file = /log/mysql.log
#general_log = 1
#
# Error log - should be very few entries.
#
-log_error = /var/log/mysql/error.log
+#log_error = /log/error.log
#
# Here you can see queries with especially long duration
-slow_query_log = /var/log/mysql/mysql-slow.log
+#slow_query_log = /log/mysql-slow.log
long_query_time = 1
# The following can be used as easy to replay backup logs or for replication.
# note: if you are setting up a replication slave, see README.Debian about
# other settings you may need to change.
#server-id = 1
-#log_bin = /var/log/mysql/mysql-bin.log
+#log_bin = /log/mysql-bin.log
expire_logs_days = 10
max_binlog_size = 100M
#binlog_do_db = include_database_name
@@ -80,10 +78,10 @@ max_binlog_size = 100M
#
# * InnoDB
#
-# InnoDB is enabled by default with a 10MB datafile in /var/lib/mysql/.
+# InnoDB is enabled by default with a 10MB datafile
innodb_buffer_pool_size = 2048M
innodb_file_per_table = 1
-skip_name_resolve
+#skip_name_resolve
innodb_buffer_pool_instances = 2
innodb_log_file_size = 256M
@@ -91,13 +89,12 @@ innodb_log_file_size = 256M
# * Security Features
#
# Read the manual, too, if you want chroot!
-# chroot = /var/lib/mysql/
#
# For generating SSL certificates I recommend the OpenSSL GUI "tinyca".
#
-# ssl-ca=/etc/mysql/cacert.pem
-# ssl-cert=/etc/mysql/server-cert.pem
-# ssl-key=/etc/mysql/server-key.pem
+# ssl-ca=cacert.pem
+# ssl-cert=server-cert.pem
+# ssl-key=server-key.pem
innodb_flush_log_at_trx_commit=1
-log_bin_trust_function_creators = 1
+log_bin_trust_function_creators=1
innodb_print_all_deadlocks=1
diff --git a/mysql/mysql_install.sh b/mysql/mysql_install.sh
index 01ede60..8565ec7 100755
--- a/mysql/mysql_install.sh
+++ b/mysql/mysql_install.sh
@@ -8,12 +8,19 @@ INIT_SCHEMA="$1/scadalts.sql"
MY_CNF="$1/my.cnf"
SERVER_BIN_DIR="$MYSQL_HOME/bin"
+SERVER_TMP_DIR="$MYSQL_HOME/tmp"
+SERVER_LOG_DIR="$MYSQL_HOME/log"
CLIENT_BIN_DIR="$SHELL_HOME/bin"
MYSQL_PORT=-1
MACHINE_TYPE=`uname -m`
-MYSQL_VERSION="8.0.33"
+
+MYSQL_MAJOR_VERSION=8
+MYSQL_MINOR_VERSION=0
+MYSQL_PATCH_VERSION=33
+MYSQL_VERSION="${MYSQL_MAJOR_VERSION}.${MYSQL_MINOR_VERSION}.${MYSQL_PATCH_VERSION}"
+
SERVER_MYSQL_DEST=""
SHELL_MYSQL_DEST=""
@@ -22,54 +29,59 @@ if [ ${MACHINE_TYPE} == 'aarch64' ]; then
SERVER_MYSQL_DEST="mysql-${MYSQL_VERSION}-linux-glibc2.17-aarch64-minimal"
elif [ ${MACHINE_TYPE} == 'x86_64' ] || [ ${MACHINE_TYPE} == 'x64' ]; then
echo "64-bit machine detected"
- SERVER_MYSQL_DEST="mysql-${MYSQL_VERSION}-linux-glibc2.12-x86_64"
+ SERVER_MYSQL_DEST="mysql-${MYSQL_VERSION}-linux-glibc2.17-x86_64-minimal"
SHELL_MYSQL_DEST="mysql-shell-${MYSQL_VERSION}-linux-glibc2.12-x86-64bit"
else
echo "x86 32-bit architecture is not supported"
fi
-if [ ! -d "${SERVER_BIN_DIR}" ] && [! -z ${SERVER_MYSQL_DEST}]; then
+if [ ! -d ${SERVER_BIN_DIR} ] && [ ! -z ${SERVER_MYSQL_DEST} ]; then
- SERVER_MSQL_TAR_FILE=${SERVER_MYSQL_DEST}".tar"
- SERVER_MSQL_TAR_XZ_FILE=${SERVER_MYSQL_DEST}".tar.xz"
+ SERVER_MSQL_TAR_FILE="${SERVER_MYSQL_DEST}.tar"
+ SERVER_MSQL_TAR_XZ_FILE="${SERVER_MYSQL_DEST}.tar.xz"
- cd "$MYSQL_HOME"
- wget https://dev.mysql.com/get/Downloads/MySQL-8.0/${SERVER_MSQL_TAR_FILE}
- tar -xvf ${SERVER_MSQL_TAR_FILE} -C "$MYSQL_HOME"
- tar -xvf ${SERVER_MSQL_TAR_XZ_FILE} -C "$MYSQL_HOME"
+ mkdir -p $MYSQL_HOME
+ cd $MYSQL_HOME
+ wget "https://dev.mysql.com/get/Downloads/MySQL-${MYSQL_MAJOR_VERSION}.${MYSQL_MINOR_VERSION}/${SERVER_MSQL_TAR_FILE}"
+ tar -xvf ${SERVER_MSQL_TAR_FILE} -C $MYSQL_HOME
+ tar -xvf ${SERVER_MSQL_TAR_XZ_FILE} -C $MYSQL_HOME
cd "$MYSQL_HOME/${SERVER_MYSQL_DEST}"
- mv * "$MYSQL_HOME"
+ mv * $MYSQL_HOME
cd ..
rm -rf ${SERVER_MYSQL_DEST}
rm -f ${SERVER_MSQL_TAR_FILE}
rm -f *.tar.xz
-
- if [${MYSQL_PORT} == -1]; then
- echo -n "Port: "
+ cp -ar ${MY_CNF} $MYSQL_HOME
+ if [ ${MYSQL_PORT} -eq -1 ]; then
+ echo -n "[MySQL Community Server] Enter port: "
read -r MYSQL_PORT
- echo "port = ${MYSQL_PORT}" >> ${MY_CNF}
+ echo "port = ${MYSQL_PORT}" >> $MYSQL_HOME/my.cnf
fi
+ mkdir -p ${SERVER_LOG_DIR}
echo "MySQL Community Server version ${MYSQL_VERSION} installed"
fi
-if [ ! -d "$CLIENT_BIN_DIR" ] && [! -z ${SHELL_MYSQL_DEST}]; then
+if [ ! -d ${CLIENT_BIN_DIR} ] && [ ! -z ${SHELL_MYSQL_DEST} ]; then
- SHELL_MYSQL_TAR_GZ_FILE=$SHELL_MYSQL_DEST".tar.gz"
+ SHELL_MYSQL_TAR_GZ_FILE="${SHELL_MYSQL_DEST}.tar.gz"
- cd "$SHELL_HOME"
- wget https://dev.mysql.com/get/Downloads/MySQL-Shell/${SHELL_MYSQL_TAR_GZ_FILE}
- tar -xvf ${SHELL_MYSQL_TAR_GZ_FILE} -C "$SHELL_HOME"
+ mkdir -p "$SHELL_HOME"
+ cd $SHELL_HOME
+ wget "https://dev.mysql.com/get/Downloads/MySQL-Shell/${SHELL_MYSQL_TAR_GZ_FILE}"
+ tar -xvf "${SHELL_MYSQL_TAR_GZ_FILE}" -C "$SHELL_HOME"
cd "$SHELL_HOME/${SHELL_MYSQL_DEST}"
- mv * "$SHELL_HOME"
+ mv * $SHELL_HOME
cd ..
rm -rf ${SHELL_MYSQL_DEST}
rm -f ${SHELL_MYSQL_TAR_GZ_FILE}
echo "MySQL Shell version ${MYSQL_VERSION} installed"
fi
+mkdir -p ${SERVER_TMP_DIR}
+
if [ ! -d "$DATADIR" ]; then
mkdir -p $DATADIR
cd ${SERVER_BIN_DIR}
- ./mysqld --defaults-file=${MY_CNF} --initialize-insecure --datadir $DATADIR --user=${USER} --init-file=${INIT_SCHEMA} --console
+ ./mysqld --defaults-file="$MYSQL_HOME/my.cnf" --initialize-insecure --datadir $DATADIR --user="${USER}" --init-file="${INIT_SCHEMA}" --console
fi
diff --git a/mysql_start.sh b/mysql_start.sh
index f8052d8..24859e4 100755
--- a/mysql_start.sh
+++ b/mysql_start.sh
@@ -2,13 +2,13 @@
export MYSQL_HOME="`pwd`/mysql/server"
export MYSQL_BASE="`pwd`/mysql"
-export MY_CNF="$MYSQL_BASE/my.cnf"
+export MY_CNF="$MYSQL_HOME/my.cnf"
export BINDIR="$MYSQL_HOME/bin"
export DATADIR="$MYSQL_HOME/data"
export MYSQLD_PID="$DATADIR/mysqld.pid"
-if [ ! -d "$DATADIR" ]; then
+if [ ! -d $DATADIR ]; then
$MYSQL_BASE/mysql_install.sh $MYSQL_BASE
fi
diff --git a/tomcat64/tomcat_install.sh b/tomcat64/tomcat_install.sh
index f6fea93..ed70864 100755
--- a/tomcat64/tomcat_install.sh
+++ b/tomcat64/tomcat_install.sh
@@ -26,10 +26,11 @@ if [ ! -d "$CATALINA_BIN_DIR" ]; then
TOMCAT_MINOR_VERSION=0
TOMCAT_PATCH_VERSION=76
TOMCAT_VERSION="${TOMCAT_MAJOR_VERSION}.${TOMCAT_MINOR_VERSION}.${TOMCAT_PATCH_VERSION}"
- TOMCAT_DEST = "apache-tomcat-${TOMCAT_VERSION}"
+ TOMCAT_DEST="apache-tomcat-${TOMCAT_VERSION}"
TOMCAT_TAR_GZ_FILE="${TOMCAT_DEST}.tar.gz"
- cd "$CATALINA_HOME"
+ mkdir -p $CATALINA_HOME
+ cd $CATALINA_HOME
wget "https://archive.apache.org/dist/tomcat/tomcat-${TOMCAT_MAJOR_VERSION}/v${TOMCAT_VERSION}/bin/${TOMCAT_TAR_GZ_FILE}"
tar -xvf ${TOMCAT_TAR_GZ_FILE} -C "$CATALINA_HOME"
cd "$CATALINA_HOME/${TOMCAT_DEST}"
@@ -41,23 +42,33 @@ if [ ! -d "$CATALINA_BIN_DIR" ]; then
fi
if [ ! -d "${SCADA_LTS_HOME}" ]; then
+
+ CATALINA_CONTEXT_XML=${SCADA_LTS_HOME}/META-INF/context.xml
cd "${CATALINA_BASE}"
unzip "Scada-LTS.war" -d ${SCADA_LTS_HOME}
- cp -rf context.xml ${SCADA_LTS_HOME}/META-INF/context.xml
+ cp -rf context.xml ${CATALINA_CONTEXT_XML}
cp -rf ${CATALINA_BASE}/lib/*.jar ${CATALINA_LIB}
- if [${CATALINA_PORT} == -1]; then
- echo -n "Port: "
+ if [[ ${CATALINA_PORT} -eq -1 ]]; then
+ echo -n "[Apache Tomcat Server] Enter port: "
read -r CATALINA_PORT
- sed -i "s/'port="8080"'/'port=${CATALINA_PORT}'/" ${CATALINA_SERVER_XML}
+ sed -i "s/8080/${CATALINA_PORT}/" ${CATALINA_SERVER_XML}
+ fi
+
+ DATABASE_PORT=-1
+
+ if [[ ${DATABASE_PORT} -eq -1 ]]; then
+ echo -n "[Apache Tomcat Server] Enter server database port: "
+ read -r DATABASE_PORT
+ sed -i "s/localhost:3308/localhost:${DATABASE_PORT}/" ${CATALINA_CONTEXT_XML}
fi
- if [-z ${CATALINA_USERNAME}] || [-z ${CATALINA_PASSWORD}]; then
- echo -n "User: "
- read -r ${CATALINA_USERNAME}
- echo -n "Password: "
- read -r ${CATALINA_PASSWORD}
- sed -i "s/''/''/" ${CATALINA_TOMCAT_USERS_XML}
+ if [ -z ${CATALINA_USERNAME} ] || [ -z ${CATALINA_PASSWORD} ]; then
+ echo -n "[Apache Tomcat Server] Enter username: "
+ read -r CATALINA_USERNAME
+ echo -n "[Apache Tomcat Server] Enter password: "
+ read -r CATALINA_PASSWORD
+ sed -i "s/<\/tomcat-users>/<\/tomcat-users>/" ${CATALINA_TOMCAT_USERS_XML}
fi
echo "Tomcat version ${TOMCAT_VERSION} configured"
fi
diff --git a/tomcat_start.sh b/tomcat_start.sh
index 6f7c839..e3550f4 100755
--- a/tomcat_start.sh
+++ b/tomcat_start.sh
@@ -3,7 +3,7 @@ JAVA_BASE="`pwd`/java"
CATALINA_BASE="`pwd`/tomcat64"
if [ ! -d "${SCADA_LTS_HOME}" ]; then
- $CATALINA_BASE/tomcat_config.sh ${JAVA_BASE} ${CATALINA_BASE}
+ $CATALINA_BASE/tomcat_install.sh ${JAVA_BASE} ${CATALINA_BASE}
fi
$CATALINA_HOME/bin/catalina.sh run