aboutsummaryrefslogtreecommitdiff
path: root/solr-8.3.1/bin/init.d/solr
diff options
context:
space:
mode:
Diffstat (limited to 'solr-8.3.1/bin/init.d/solr')
-rw-r--r--solr-8.3.1/bin/init.d/solr78
1 files changed, 78 insertions, 0 deletions
diff --git a/solr-8.3.1/bin/init.d/solr b/solr-8.3.1/bin/init.d/solr
new file mode 100644
index 000000000..e73e0d683
--- /dev/null
+++ b/solr-8.3.1/bin/init.d/solr
@@ -0,0 +1,78 @@
+#!/bin/sh
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements. See the NOTICE file distributed with
+# this work for additional information regarding copyright ownership.
+# The ASF licenses this file to You under the Apache License, Version 2.0
+# (the "License"); you may not use this file except in compliance with
+# the License. You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+### BEGIN INIT INFO
+# Provides: solr
+# Required-Start: $remote_fs $syslog
+# Required-Stop: $remote_fs $syslog
+# Default-Start: 2 3 4 5
+# Default-Stop: 0 1 6
+# Description: Controls Apache Solr as a Service
+### END INIT INFO
+
+# Example of a very simple *nix init script that delegates commands to the bin/solr script
+# Typical usage is to do:
+#
+# cp bin/init.d/solr /etc/init.d/solr
+# chmod 755 /etc/init.d/solr
+# chown root:root /etc/init.d/solr
+# update-rc.d solr defaults
+# update-rc.d solr enable
+
+# Where you extracted the Solr distribution bundle
+SOLR_INSTALL_DIR="/opt/solr"
+
+if [ ! -d "$SOLR_INSTALL_DIR" ]; then
+ echo "$SOLR_INSTALL_DIR not found! Please check the SOLR_INSTALL_DIR setting in your $0 script."
+ exit 1
+fi
+
+# Path to an include file that defines environment specific settings to override default
+# variables used by the bin/solr script. It's highly recommended to define this script so
+# that you can keep the Solr binary files separated from live files (pid, logs, index data, etc)
+# see bin/solr.in.sh for an example
+SOLR_ENV="/etc/default/solr.in.sh"
+
+if [ ! -f "$SOLR_ENV" ]; then
+ echo "$SOLR_ENV not found! Please check the SOLR_ENV setting in your $0 script."
+ exit 1
+fi
+
+# Specify the user to run Solr as; if not set, then Solr will run as root.
+# Running Solr as root is not recommended for production environments
+RUNAS="solr"
+
+# verify the specified run as user exists
+runas_uid="`id -u "$RUNAS"`"
+if [ $? -ne 0 ]; then
+ echo "User $RUNAS not found! Please create the $RUNAS user before running this script."
+ exit 1
+fi
+
+case "$1" in
+ start|stop|restart|status)
+ SOLR_CMD="$1"
+ ;;
+ *)
+ echo "Usage: $0 {start|stop|restart|status}"
+ exit
+esac
+
+if [ -n "$RUNAS" ]; then
+ su -c "SOLR_INCLUDE=\"$SOLR_ENV\" \"$SOLR_INSTALL_DIR/bin/solr\" $SOLR_CMD" - "$RUNAS"
+else
+ SOLR_INCLUDE="$SOLR_ENV" "$SOLR_INSTALL_DIR/bin/solr" "$SOLR_CMD"
+fi