diff options
Diffstat (limited to 'solr-8.1.1/bin/init.d')
| -rw-r--r-- | solr-8.1.1/bin/init.d/solr | 78 | 
1 files changed, 78 insertions, 0 deletions
| diff --git a/solr-8.1.1/bin/init.d/solr b/solr-8.1.1/bin/init.d/solr new file mode 100644 index 000000000..e73e0d683 --- /dev/null +++ b/solr-8.1.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 | 
