/usr/share/pegasus/common.sh is in pegasus-wms 4.4.0+dfsg-5.
This file is owned by root:root, with mode 0o755.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 | #!/bin/bash
#
# Common structure to all shell wrappers. This file
# is sourced from the shell wrapper scripts.
# $Id$
#
# If JAVA_HOME is not set, try some system defaults. This is useful for
# RPMs and DEBs which have explicit Java dependencies
if [ "X${JAVA_HOME}" = "X" ]; then
for TARGET in \
/usr/lib/jvm/java-1.6.0-openjdk-1.6.0.0.x86_64/jre \
/usr/lib/jvm/java-1.6.0-openjdk-1.6.0.0/jre \
/usr/lib/jvm/java-6-openjdk/jre \
; do
if [ -e "${TARGET}" -a -x "${TARGET}/bin/java" ]; then
JAVA_HOME="${TARGET}"
export JAVA_HOME
break
fi
done
# macos
if [ "X${JAVA_HOME}" = "X" -a -x /usr/libexec/java_home ]; then
JAVA_HOME=`/usr/libexec/java_home -version 1.6`
fi
fi
# Find Java
if [ "X${JAVA_HOME}" != "X" ]; then
JAVA="${JAVA_HOME}/bin/java"
fi
if [ ! -x "${JAVA}" ]; then
JAVA="`which java`"
fi
if [ ! -e "${JAVA}" ]; then
echo "ERROR: java not found. Please set JAVA_HOME or PATH."
exit 1
fi
# start with empty arguments
addon=''
# pegasus will figure out java heap min/max unless the user has set
# JAVA_HEAPMIN/JAVA_HEAPMIN
if [ "X${JAVA_HEAPMIN}" = "X" -a "X${JAVA_HEAPMAX}" = "X" ]; then
# default - should be ok on most systems
heap_max=512
# Linux: use /proc/meminfo to determine better defaults
if [ -e /proc/meminfo ]; then
mem_total=`(cat /proc/meminfo | grep MemTotal: | awk '{print $2;}') 2>/dev/null`
if [ "X$mem_total" != "X" -a $mem_total -gt 0 ]; then
heap_max=$(($mem_total / 1024 / 3))
fi
fi
# MacOSX: sysctl
if [ -e /Library -a -e /usr/sbin/sysctl ]; then
mem_total=`/usr/sbin/sysctl -n hw.memsize 2>/dev/null`
if [ "X$mem_total" != "X" -a $mem_total -gt 0 ]; then
heap_max=$(($mem_total / 1024 / 1024 / 3))
fi
fi
# upper limit - useful for large memory systems
if [ $heap_max -gt 16384 ]; then
heap_max=16384
fi
# upper limit - ulimit
memulimit=`(ulimit -m | grep -v -i unlimited) 2>/dev/null` || true
if [ "X$memulimit" != "X" ]; then
if [ $memulimit -gt 128 ]; then
heap_max=$(($memulimit / 1024 / 2))
fi
else
memulimit=`(ulimit -v | grep -v -i unlimited) 2>/dev/null` || true
if [ "X$memulimit" != "X" ]; then
if [ $memulimit -gt 128 ]; then
heap_max=$(($memulimit / 1024 / 2))
fi
fi
fi
# min is 1/2 of max - should provide good performance
heap_min=$(($heap_max / 2))
addon="$addon -Xms${heap_min}m -Xmx${heap_max}m"
else
test "X${JAVA_HEAPMIN}" = "X" || addon="$addon -Xms${JAVA_HEAPMIN}m"
test "X${JAVA_HEAPMAX}" = "X" || addon="$addon -Xmx${JAVA_HEAPMAX}m"
fi
JAVA_VERSION=`${JAVA} $addon -version 2>&1 | awk '/^java version/ {gsub(/"/,""); print $3}'`
if [ `echo ${JAVA_VERSION} | cut -c1,3` -lt 16 ]; then
echo "ERROR: Java 1.6 or later required. Please set JAVA_HOME or PATH to point to a newer Java."
exit 1
fi
while [ true ]; do
case "$1" in
-[XD][_a-zA-Z]*)
addon="$addon $1"
shift
;;
-D)
shift
addon="$addon -D$1"
shift
;;
*)
break
;;
esac
done
|