restore
parent
562ea2dc35
commit
7fe0f1d603
920
_Footer_.md
920
_Footer_.md
|
@ -1,917 +1,5 @@
|
||||||
#!/bin/bash
|
__Buy me a beer, Donate to **acme.sh** if it saves your time. Your donation makes **acme.sh** better: https://donate.acme.sh/__
|
||||||
# This script was generated using Makeself 2.1.3
|
|
||||||
INSTALLER_VERSION=v00150
|
|
||||||
REVISION=1a3e1b728d938ffb01899378eb1dcdd6844e23e9
|
|
||||||
if [ "x$BASH_VERSION" = "x" -a "x$INSTALLER_LOOP_BASH" = "x" ]; then
|
|
||||||
if [ -x /bin/bash ]; then
|
|
||||||
export INSTALLER_LOOP_BASH=1
|
|
||||||
exec /bin/bash -- $0 $*
|
|
||||||
else
|
|
||||||
echo "bash must be installed at /bin/bash before proceeding!"
|
|
||||||
exit 1 fi
|
|
||||||
fi
|
|
||||||
CRCsum="3563293319"
|
|
||||||
MD5="237a0fb9e1b0ddc5e36f83b5e1e7b9c3"
|
|
||||||
TMPROOT=${TMPDIR:=/home/cPanelInstall}
|
|
||||||
label="cPanel & WHM Installer"
|
|
||||||
script="./bootstrap"
|
|
||||||
scriptargs=""
|
|
||||||
targetdir="installd"
|
|
||||||
filesizes="58702"
|
|
||||||
keep=n
|
|
||||||
# Set this globally for anywhere in this script
|
|
||||||
if [ -e /etc/debian_version ]; then
|
|
||||||
IS_UBUNTU=1
|
|
||||||
export DEBIAN_FRONTEND=noninteractive
|
|
||||||
fi
|
|
||||||
# Workaround busted default perl environment on Cent9 variants
|
|
||||||
if [ ! ]; then
|
|
||||||
/usr/bin/perl -MFindBin -e 'exit 0;' || yum -y install perl
|
|
||||||
fi
|
|
||||||
print_cmd_arg=""
|
|
||||||
if type printf > /dev/null; then
|
|
||||||
print_cmd="printf"
|
|
||||||
elif test -x /usr/ucb/echo; then
|
|
||||||
print_cmd="/usr/ucb/echo"
|
|
||||||
else
|
|
||||||
print_cmd="echo"
|
|
||||||
fi
|
|
||||||
if ! type "tar" > /dev/null; then
|
|
||||||
if [ ! $IS_UBUNTU ]; then
|
|
||||||
yum -y install tar
|
|
||||||
else
|
|
||||||
apt -y install tar
|
|
||||||
fi
|
|
||||||
fi
|
|
||||||
if ! type "tar" > /dev/null; then
|
|
||||||
echo "tar must be installed before proceeding!"
|
|
||||||
exit 1;
|
|
||||||
fi
|
|
||||||
|
|
||||||
MS_Printf()
|
如果 acme.sh 帮你节省了时间,请考虑赏我一杯啤酒🍺, 捐助: https://donate.acme.sh/
|
||||||
{
|
你的支持将会使得 **acme.sh** 越来越好.
|
||||||
$print_cmd $print_cmd_arg "$1"
|
感谢
|
||||||
}
|
|
||||||
MS_Progress()
|
|
||||||
{
|
|
||||||
while read a; do
|
|
||||||
MS_Printf .
|
|
||||||
done }
|
|
||||||
MS_dd() {
|
|
||||||
blocks=`expr $3 / 1024`
|
|
||||||
bytes=`expr $3 % 1024`
|
|
||||||
dd if="$1" ibs=$2 skip=1 obs=1024 conv=sync 2> /dev/null | \
|
|
||||||
{ test $blocks -gt 0 && dd ibs=1024 obs=1024 count=$blocks ; \
|
|
||||||
test $bytes -gt 0 && dd ibs=1 obs=1024 count=$bytes ; } 2> /dev/null
|
|
||||||
}
|
|
||||||
MS_Help() {
|
|
||||||
cat << EOH >&2
|
|
||||||
Makeself version 2.1.3
|
|
||||||
1) Getting help or info about $0 :
|
|
||||||
$0 --help Print this message
|
|
||||||
$0 --info Print embedded info : title, default target directory, embedded
|
|
||||||
script ...
|
|
||||||
$0 --version Display the installer version
|
|
||||||
$0 --lsm
|
|
||||||
$0 --list
|
|
||||||
$0 --check
|
|
||||||
Print embedded lsm entry (or no LSM)
|
|
||||||
Print the list of files in the archive
|
|
||||||
Checks integrity of the archive
|
|
||||||
2) Running $0 :
|
|
||||||
$0 [options] [--] [additional arguments to embedded script]
|
|
||||||
with following options (in that order)
|
|
||||||
--confirm
|
|
||||||
--noexec
|
|
||||||
--keep
|
|
||||||
Ask before running embedded script
|
|
||||||
Do not run embedded script
|
|
||||||
Do not erase target directory after running
|
|
||||||
the embedded script
|
|
||||||
Do not spawn an xterm
|
|
||||||
Do not give the extracted files to the current user
|
|
||||||
--nox11
|
|
||||||
--nochown
|
|
||||||
--target NewDirectory Extract in NewDirectory
|
|
||||||
--tar arg1 [arg2 ...] Access the contents of the archive through the tar command
|
|
||||||
--force
|
|
||||||
--skip-cloudlinux
|
|
||||||
--skip-imunifyav
|
|
||||||
--skip-wptoolkit
|
|
||||||
--skipapache
|
|
||||||
--skipreposetup
|
|
||||||
--experimental-os=X
|
|
||||||
Force to install cPanel on a non recommended configuration
|
|
||||||
Skip the automatic convert to CloudLinux even if licensed
|
|
||||||
Skip the automatic installation of ImunifyAV (free)
|
|
||||||
Skip the automatic installation of WordPress Toolkit
|
|
||||||
Skip the Apache installation process
|
|
||||||
Skip the installation of EasyApache 4 YUM repos
|
|
||||||
Useful if you have custom EasyApache repos
|
|
||||||
Tells the installer and cPanel to assume the distribution
|
|
||||||
is a known supported one when it is not. Use of this feature
|
|
||||||
is not recommended or supported;
|
|
||||||
example: --experimental-os=centos-7.4
|
|
||||||
|
|
||||||
--tier: Named tier or cPanel version you specifically want to install.
|
|
||||||
example: --tier='stable' or --tier='11.110' or --tier='11.115.9999.0'
|
|
||||||
--source: Source to download cPanel from. Defaults to 'httpupdate.cpanel.net'.
|
|
||||||
example: --source='next.cpanel.net' (for public testing builds).
|
|
||||||
--myip=URL Setup myip url in /etc/cpsources.conf
|
|
||||||
-- Following arguments will be passed to the embedded script
|
|
||||||
EOH
|
|
||||||
}
|
|
||||||
MS_Check() {
|
|
||||||
OLD_PATH=$PATH
|
|
||||||
PATH=${GUESS_MD5_PATH:-
|
|
||||||
"$OLD_PATH:/bin:/usr/bin:/sbin:/usr/local/ssl/bin:/usr/local/bin:/opt/openssl/bin"}
|
|
||||||
MD5_PATH=`exec 2>&-; which md5sum || type md5sum`
|
|
||||||
MD5_PATH=${MD5_PATH:-`exec 2>&-; which md5 || type md5`}
|
|
||||||
PATH=$OLD_PATH
|
|
||||||
MS_Printf "Verifying archive integrity..."
|
|
||||||
offset=`head -n 488 "$1" | wc -c | tr -d " "`
|
|
||||||
verb=$2
|
|
||||||
i=1
|
|
||||||
for s in $filesizes
|
|
||||||
do
|
|
||||||
crc=`echo $CRCsum | cut -d" " -f$i`
|
|
||||||
if test -x "$MD5_PATH"; then
|
|
||||||
md5=`echo $MD5 | cut -d" " -f$i`
|
|
||||||
if test $md5 = "00000000000000000000000000000000"; then
|
|
||||||
test x$verb = xy && echo " $1 does not contain an embedded MD5
|
|
||||||
md5sum=`MS_dd "$1" $offset $s | "$MD5_PATH" | cut -b-32`;
|
|
||||||
if test "$md5sum" != "$md5"; then
|
|
||||||
echo "Error in MD5 checksums: $md5sum is different from $md5"
|
|
||||||
exit 2 else
|
|
||||||
test x$verb = xy && MS_Printf " MD5 checksums are OK." >&2
|
|
||||||
fi
|
|
||||||
crc="0000000000"; verb=n
|
|
||||||
fi
|
|
||||||
fi
|
|
||||||
if test $crc = "0000000000"; then
|
|
||||||
test x$verb = xy && echo " $1 does not contain a CRC checksum." >&2
|
|
||||||
else
|
|
||||||
sum1=`MS_dd "$1" $offset $s | cksum | awk '{print $1}'`
|
|
||||||
if test "$sum1" = "$crc"; then
|
|
||||||
test x$verb = xy && MS_Printf " CRC checksums are OK." >&2
|
|
||||||
else
|
|
||||||
echo "Error in checksums: $sum1 is different from $crc"
|
|
||||||
exit 2; fi
|
|
||||||
fi
|
|
||||||
i=`expr $i + 1`
|
|
||||||
offset=`expr $offset + $s`
|
|
||||||
done
|
|
||||||
echo " All good."
|
|
||||||
checksum." >&2
|
|
||||||
else
|
|
||||||
>&2
|
|
||||||
|
|
||||||
}
|
|
||||||
UnTAR() {
|
|
||||||
tar $1vf - 2>&1 || { echo Extraction failed. > /dev/tty; kill -15 $$; }
|
|
||||||
}
|
|
||||||
finish=true
|
|
||||||
xterm_loop=
|
|
||||||
nox11=n
|
|
||||||
copy=none
|
|
||||||
ownership=y
|
|
||||||
verbose=n
|
|
||||||
initargs="$@"
|
|
||||||
while true do
|
|
||||||
case "$1" in
|
|
||||||
-h | --help)
|
|
||||||
MS_Help
|
|
||||||
exit 0
|
|
||||||
;;
|
|
||||||
--version)
|
|
||||||
echo "$INSTALLER_VERSION"
|
|
||||||
exit 0
|
|
||||||
;;
|
|
||||||
--info)
|
|
||||||
echo Installer Version: "$INSTALLER_VERSION"
|
|
||||||
echo Installer Revision: "$REVISION"
|
|
||||||
echo Identification: "$label"
|
|
||||||
echo Target directory: "$targetdir"
|
|
||||||
echo Uncompressed size: 260 KB
|
|
||||||
echo Compression: gzip
|
|
||||||
echo Date of packaging: Wed Nov 29 19:13:13 UTC 2023
|
|
||||||
echo Built with Makeself version 2.1.3 on linux-gnu
|
|
||||||
echo Build command was: "utils/makeself installd latest cPanel & WHM
|
|
||||||
Installer ./bootstrap"
|
|
||||||
if test x$script != x; then
|
|
||||||
echo Script run after extraction:
|
|
||||||
echo " " $script $scriptargs
|
|
||||||
fi
|
|
||||||
if test x"" = xcopy; then
|
|
||||||
echo "Archive will copy itself to a temporary location"
|
|
||||||
fi
|
|
||||||
if test x"n" = xy; then
|
|
||||||
echo "directory $targetdir is permanent"
|
|
||||||
else
|
|
||||||
echo "$targetdir will be removed after extraction"
|
|
||||||
fi
|
|
||||||
exit 0
|
|
||||||
;;
|
|
||||||
--dumpconf)
|
|
||||||
echo LABEL=\"$label\"
|
|
||||||
echo SCRIPT=\"$script\"
|
|
||||||
echo SCRIPTARGS=\"$scriptargs\"
|
|
||||||
echo archdirname=\"installd\"
|
|
||||||
echo KEEP=n
|
|
||||||
echo COMPRESS=gzip
|
|
||||||
echo filesizes=\"$filesizes\"
|
|
||||||
|
|
||||||
echo CRCsum=\"$CRCsum\"
|
|
||||||
echo MD5sum=\"$MD5\"
|
|
||||||
echo OLDUSIZE=260
|
|
||||||
echo OLDSKIP=489
|
|
||||||
exit 0
|
|
||||||
;; --lsm)
|
|
||||||
cat << EOLSM
|
|
||||||
No LSM.
|
|
||||||
EOLSM
|
|
||||||
exit 0
|
|
||||||
;; --list)
|
|
||||||
echo Target directory: $targetdir
|
|
||||||
offset=`head -n 488 "$0" | wc -c | tr -d " "`
|
|
||||||
for s in $filesizes
|
|
||||||
do
|
|
||||||
MS_dd "$0" $offset $s | eval "gzip -cd" | UnTAR t
|
|
||||||
offset=`expr $offset + $s`
|
|
||||||
done
|
|
||||||
exit 0
|
|
||||||
;;
|
|
||||||
--tar)
|
|
||||||
offset=`head -n 488 "$0" | wc -c | tr -d " "`
|
|
||||||
arg1="$2"
|
|
||||||
if ! shift 2; then
|
|
||||||
MS_Help
|
|
||||||
exit 1 fi
|
|
||||||
for s in $filesizes
|
|
||||||
do
|
|
||||||
MS_dd "$0" $offset $s | eval "gzip -cd" | tar "$arg1" - $*
|
|
||||||
offset=`expr $offset + $s`
|
|
||||||
done
|
|
||||||
exit 0
|
|
||||||
;; --check)
|
|
||||||
MS_Check "$0" y
|
|
||||||
exit 0
|
|
||||||
;;
|
|
||||||
--confirm)
|
|
||||||
verbose=y
|
|
||||||
shift
|
|
||||||
;;
|
|
||||||
--noexec)
|
|
||||||
script=""
|
|
||||||
shift
|
|
||||||
;; --keep)
|
|
||||||
keep=y
|
|
||||||
shift
|
|
||||||
;;
|
|
||||||
--target)
|
|
||||||
keep=y
|
|
||||||
targetdir=${2:-.}
|
|
||||||
if ! shift 2; then
|
|
||||||
MS_Help
|
|
||||||
exit 1 fi
|
|
||||||
;;
|
|
||||||
|
|
||||||
--nox11)
|
|
||||||
nox11=y
|
|
||||||
shift
|
|
||||||
;;
|
|
||||||
--nochown)
|
|
||||||
ownership=n
|
|
||||||
shift
|
|
||||||
;;
|
|
||||||
--xwin)
|
|
||||||
finish="echo Press Return to close this window...; read junk"
|
|
||||||
xterm_loop=1
|
|
||||||
shift
|
|
||||||
;;
|
|
||||||
--phase2)
|
|
||||||
copy=phase2
|
|
||||||
shift
|
|
||||||
;;
|
|
||||||
--force)
|
|
||||||
scriptargs="$scriptargs $1"
|
|
||||||
shift
|
|
||||||
;;
|
|
||||||
--skip-cloudlinux)
|
|
||||||
scriptargs="$scriptargs $1"
|
|
||||||
shift
|
|
||||||
;;
|
|
||||||
--skip-imunifyav)
|
|
||||||
scriptargs="$scriptargs $1"
|
|
||||||
shift
|
|
||||||
;;
|
|
||||||
--skip-wptoolkit)
|
|
||||||
scriptargs="$scriptargs $1"
|
|
||||||
shift
|
|
||||||
;;
|
|
||||||
--skipapache)
|
|
||||||
scriptargs="$scriptargs $1"
|
|
||||||
shift
|
|
||||||
;;
|
|
||||||
--skiplicensecheck)
|
|
||||||
scriptargs="$scriptargs $1"
|
|
||||||
shift
|
|
||||||
;;
|
|
||||||
--skipreposetup)
|
|
||||||
scriptargs="$scriptargs $1"
|
|
||||||
shift
|
|
||||||
;;
|
|
||||||
--stop_at_update_now)
|
|
||||||
scriptargs="$scriptargs $1"
|
|
||||||
shift
|
|
||||||
;;
|
|
||||||
--stop_after_update_now)
|
|
||||||
scriptargs="$scriptargs $1"
|
|
||||||
shift
|
|
||||||
;;
|
|
||||||
--experimental-os=*)
|
|
||||||
scriptargs="$scriptargs $1"
|
|
||||||
shift
|
|
||||||
;;
|
|
||||||
--tier=*)
|
|
||||||
scriptargs="$scriptargs $1"
|
|
||||||
shift
|
|
||||||
|
|
||||||
;;
|
|
||||||
--source=*)
|
|
||||||
scriptargs="$scriptargs $1"
|
|
||||||
shift
|
|
||||||
;;
|
|
||||||
--myip=*)
|
|
||||||
scriptargs="$scriptargs $1"
|
|
||||||
shift
|
|
||||||
;;
|
|
||||||
--)
|
|
||||||
shift
|
|
||||||
;; -*)
|
|
||||||
echo Unrecognized flag : "$1" >&2
|
|
||||||
MS_Help
|
|
||||||
exit 1
|
|
||||||
;;
|
|
||||||
*)
|
|
||||||
break ;;
|
|
||||||
esac done
|
|
||||||
case "$copy" in
|
|
||||||
copy)
|
|
||||||
SCRIPT_COPY="$TMPROOT/makeself$$"
|
|
||||||
echo "Copying to a temporary location..." >&2
|
|
||||||
cp "$0" "$SCRIPT_COPY"
|
|
||||||
chmod +x "$SCRIPT_COPY"
|
|
||||||
cd "$TMPROOT"
|
|
||||||
exec "$SCRIPT_COPY" --phase2
|
|
||||||
;;
|
|
||||||
phase2)
|
|
||||||
finish="$finish ; rm -f $0"
|
|
||||||
;;
|
|
||||||
esac
|
|
||||||
if test "$nox11" = "n"; then
|
|
||||||
if tty -s; then
|
|
||||||
# Do we have a terminal?
|
|
||||||
X?
|
|
||||||
if test x"$DISPLAY" != x -a x"$xterm_loop" = x; then # No, but do we have
|
|
||||||
if xset q > /dev/null 2>&1; then # Check for valid DISPLAY variable
|
|
||||||
GUESS_XTERMS="xterm rxvt dtterm eterm Eterm kvt konsole aterm"
|
|
||||||
for a in $GUESS_XTERMS; do
|
|
||||||
fi fi
|
|
||||||
: else
|
|
||||||
fi fi
|
|
||||||
if type $a >/dev/null 2>&1; then
|
|
||||||
XTERM=$a
|
|
||||||
break fi
|
|
||||||
done
|
|
||||||
chmod a+x $0 || echo Please add execution rights on $0
|
|
||||||
if test `echo "$0" | cut -c1` = "/"; then # Spawn a terminal!
|
|
||||||
exec $XTERM -title "$label" -e "$0" --xwin "$initargs"
|
|
||||||
else
|
|
||||||
exec $XTERM -title "$label" -e "./$0" --xwin "$initargs"
|
|
||||||
fi
|
|
||||||
|
|
||||||
if test "$targetdir" = "."; then
|
|
||||||
tmpdir="."
|
|
||||||
else
|
|
||||||
if test "$keep" = y; then
|
|
||||||
echo "Creating directory $targetdir" >&2
|
|
||||||
tmpdir="$targetdir"
|
|
||||||
else
|
|
||||||
tmpdir="$TMPROOT/selfgz$$"
|
|
||||||
fi
|
|
||||||
mkdir -p $tmpdir || {
|
|
||||||
echo 'Cannot create target directory' $tmpdir >&2
|
|
||||||
echo 'You should try option --target OtherDirectory' >&2
|
|
||||||
eval $finish
|
|
||||||
exit 1
|
|
||||||
} fi
|
|
||||||
location="`pwd`"
|
|
||||||
if test x$SETUP_NOCHECK != x1; then
|
|
||||||
MS_Check "$0"
|
|
||||||
fi
|
|
||||||
offset=`head -n 488 "$0" | wc -c | tr -d " "`
|
|
||||||
if test x"$verbose" = xy; then
|
|
||||||
MS_Printf "About to extract 260 KB in $tmpdir ... Proceed ? [Y/n] "
|
|
||||||
read yn
|
|
||||||
if test x"$yn" = xn; then
|
|
||||||
eval $finish; exit 1
|
|
||||||
fi fi
|
|
||||||
MS_Printf "Uncompressing $label"
|
|
||||||
res=3
|
|
||||||
if test "$keep" = n; then
|
|
||||||
trap 'echo Signal caught, cleaning up >&2; cd $TMPROOT; /bin/rm -rf $tmpdir;
|
|
||||||
eval $finish; exit 15' 1 2 3 15
|
|
||||||
fi
|
|
||||||
for s in $filesizes
|
|
||||||
do
|
|
||||||
if MS_dd "$0" $offset $s | eval "gzip -cd" | ( cd "$tmpdir"; UnTAR x ) |
|
|
||||||
MS_Progress; then
|
|
||||||
if test x"$ownership" = xy; then
|
|
||||||
(PATH=/usr/xpg4/bin:$PATH; cd "$tmpdir"; chown -R `id -u` .;
|
|
||||||
chgrp -R `id -g` .)
|
|
||||||
fi
|
|
||||||
else
|
|
||||||
fi
|
|
||||||
echo
|
|
||||||
echo "Unable to decompress $0" >&2
|
|
||||||
eval $finish; exit 1
|
|
||||||
offset=`expr $offset + $s`
|
|
||||||
done
|
|
||||||
echo
|
|
||||||
cd "$tmpdir"
|
|
||||||
res=0
|
|
||||||
if test x"$script" != x; then
|
|
||||||
if test x"$verbose" = xy; then
|
|
||||||
|
|
||||||
else
|
|
||||||
MS_Printf "OK to execute: $script $scriptargs $* ? [Y/n] "
|
|
||||||
read yn
|
|
||||||
if test x"$yn" = x -o x"$yn" = xy -o x"$yn" = xY; then
|
|
||||||
eval $script $scriptargs $*; res=$?;
|
|
||||||
fi
|
|
||||||
eval $script $scriptargs $*; res=$?
|
|
||||||
fi
|
|
||||||
if test $res -ne 0; then
|
|
||||||
test x"$verbose" = xy && echo "The program '$script' returned an
|
|
||||||
error code ($res)" >&2
|
|
||||||
fi fi
|
|
||||||
if test "$keep" = n; then
|
|
||||||
cd $TMPROOT
|
|
||||||
/bin/rm -rf $tmpdir
|
|
||||||
fi
|
|
||||||
eval $finish; exit $res
|
|
||||||
|