Fix bug for ubuntu 22.04.
This commit is contained in:
parent
56147289d5
commit
5543796f1e
|
@ -3,6 +3,10 @@ function escape_str(){
|
||||||
echo $1|sed -E 's/\\+//g' |sed -E 's/[\/\.\*]/\\\0/g'
|
echo $1|sed -E 's/\\+//g' |sed -E 's/[\/\.\*]/\\\0/g'
|
||||||
}
|
}
|
||||||
ubuntu_ver="$(lsb_release -rs)"
|
ubuntu_ver="$(lsb_release -rs)"
|
||||||
|
if [[ -e "/etc/needrestart/needrestart.conf" ]]; then
|
||||||
|
sudo sed -E -i "s/(^|#)\\\$nrconf\{restart\}\s*=.*/\$nrconf\{restart\} = 'a';/g" /etc/needrestart/needrestart.conf
|
||||||
|
sudo sed -E -i "s/(^|#)\\\$nrconf\{kernelhints\}\s*=.*/\$nrconf\{kernelhints\} = -1;/g" /etc/needrestart/needrestart.conf
|
||||||
|
fi
|
||||||
sudo apt-get install -y linux-kernel-headers build-essential
|
sudo apt-get install -y linux-kernel-headers build-essential
|
||||||
org_pwd="$(pwd)"
|
org_pwd="$(pwd)"
|
||||||
cpu_cores="$(nproc --all)"
|
cpu_cores="$(nproc --all)"
|
||||||
|
@ -21,7 +25,7 @@ if [[ "$openssl_ver" < "1.1.1" ]] || [[ "$force_reinstall_openssl" == "1" ]]; th
|
||||||
target_openssl_ver="1.1.1m"
|
target_openssl_ver="1.1.1m"
|
||||||
sudo bash -l -c "
|
sudo bash -l -c "
|
||||||
cd /root &&
|
cd /root &&
|
||||||
wget https://www.openssl.org/source/openssl-$target_openssl_ver.tar.gz --no-check-certificate &&
|
wget https://www.openssl.org/source/openssl-$target_openssl_ver.tar.gz --no-check-certificate -O openssl-$target_openssl_ver.tar.gz &&
|
||||||
tar xzvf openssl-$target_openssl_ver.tar.gz &&
|
tar xzvf openssl-$target_openssl_ver.tar.gz &&
|
||||||
cd openssl-$target_openssl_ver &&
|
cd openssl-$target_openssl_ver &&
|
||||||
./config no-ssl2 no-ssl3 zlib-dynamic -fPIC shared --prefix=/opt/openssl &&
|
./config no-ssl2 no-ssl3 zlib-dynamic -fPIC shared --prefix=/opt/openssl &&
|
||||||
|
@ -41,7 +45,7 @@ fi
|
||||||
if [[ "$ubuntu_ver" < "16" ]]; then #Need update ca-certificates manual
|
if [[ "$ubuntu_ver" < "16" ]]; then #Need update ca-certificates manual
|
||||||
sudo bash -l -c "
|
sudo bash -l -c "
|
||||||
cd /root &&
|
cd /root &&
|
||||||
wget https://launchpad.net/ubuntu/+archive/primary/+sourcefiles/ca-certificates/20210119~20.04.2/ca-certificates_20210119~20.04.2.tar.xz --no-check-certificate &&
|
wget https://launchpad.net/ubuntu/+archive/primary/+sourcefiles/ca-certificates/20210119~20.04.2/ca-certificates_20210119~20.04.2.tar.xz --no-check-certificate -O ca-certificates_20210119~20.04.2.tar.xz &&
|
||||||
tar -xJf ca-certificates_20210119~20.04.2.tar.xz &&
|
tar -xJf ca-certificates_20210119~20.04.2.tar.xz &&
|
||||||
cd ca-certificates-20210119~20.04.1 &&
|
cd ca-certificates-20210119~20.04.1 &&
|
||||||
make -j$cpu_cores && make install &&
|
make -j$cpu_cores && make install &&
|
||||||
|
@ -110,7 +114,7 @@ if [[ "$nginx_ver" < $nginx_target_ver ]] || [[ "$1" == '--force' ]] || [[ "$ins
|
||||||
#Build nginx and install
|
#Build nginx and install
|
||||||
sudo bash -l -c "
|
sudo bash -l -c "
|
||||||
cd /root && \
|
cd /root && \
|
||||||
wget http://nginx.org/download/nginx-$nginx_target_ver.tar.gz && \
|
wget http://nginx.org/download/nginx-$nginx_target_ver.tar.gz -O nginx-$nginx_target_ver.tar.gz && \
|
||||||
tar -zxvf nginx-$nginx_target_ver.tar.gz && \
|
tar -zxvf nginx-$nginx_target_ver.tar.gz && \
|
||||||
cd nginx-$nginx_target_ver && \
|
cd nginx-$nginx_target_ver && \
|
||||||
apt remove nginx --purge -y && \
|
apt remove nginx --purge -y && \
|
||||||
|
|
|
@ -1,5 +1,9 @@
|
||||||
#!/bin/bash
|
#!/bin/bash
|
||||||
ubuntu_version=$(lsb_release -rs)
|
ubuntu_version=$(lsb_release -rs)
|
||||||
|
if [[ -e "/etc/needrestart/needrestart.conf" ]]; then
|
||||||
|
sudo sed -E -i "s/(^|#)\\\$nrconf\{restart\}\s*=.*/\$nrconf\{restart\} = 'a';/g" /etc/needrestart/needrestart.conf
|
||||||
|
sudo sed -E -i "s/(^|#)\\\$nrconf\{kernelhints\}\s*=.*/\$nrconf\{kernelhints\} = -1;/g" /etc/needrestart/needrestart.conf
|
||||||
|
fi
|
||||||
sudo apt update
|
sudo apt update
|
||||||
sudo apt install -y git
|
sudo apt install -y git
|
||||||
sudo apt install -y linux-kernel-headers build-essential
|
sudo apt install -y linux-kernel-headers build-essential
|
||||||
|
@ -32,10 +36,51 @@ function write_messages(){
|
||||||
echo "$messages_logs" > install_orbit_environment.log
|
echo "$messages_logs" > install_orbit_environment.log
|
||||||
echo "Logs stored in install_orbit_environment.log!"
|
echo "Logs stored in install_orbit_environment.log!"
|
||||||
}
|
}
|
||||||
|
if [[ $ubuntu_version > '21' ]]; then
|
||||||
|
function apt_add_key_func(){
|
||||||
|
url="$1"
|
||||||
|
base_name="$(basename $url)"
|
||||||
|
file_path="/etc/apt/trusted.gpg.d/$base_name"
|
||||||
|
sudo wget "$url" -q -O "$file_path"
|
||||||
|
if [[ -e "$file_path" ]]; then
|
||||||
|
mime_type=`file -b --mime-type "$file_path"`
|
||||||
|
if [[ $mime_type == "application/pgp-keys" ]]; then
|
||||||
|
new_file_path=`echo "$file_path"| sed -E 's/(\.[^.]+$|$)/\.gpg/g'`
|
||||||
|
cat $file_path|sudo gpg --dearmor -o $new_file_path
|
||||||
|
rm -f $file_path
|
||||||
|
file_path="$new_file_path"
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
else
|
||||||
|
function apt_add_key_func(){
|
||||||
|
wget -qO - "$1" | sudo apt-key add -
|
||||||
|
}
|
||||||
|
fi
|
||||||
if [ $nginx_status != "0" ]; then
|
if [ $nginx_status != "0" ]; then
|
||||||
sudo sed -i 's/\([^#]include \/etc\/nginx\/sites-enabled\/*\)/\#\1/g' /etc/nginx/nginx.conf
|
sudo sed -i 's/\([^#]include \/etc\/nginx\/sites-enabled\/*\)/\#\1/g' /etc/nginx/nginx.conf
|
||||||
fi
|
fi
|
||||||
sudo service nginx restart
|
sudo service nginx restart
|
||||||
|
openssl_dir=""
|
||||||
|
need_export_apt_key="0"
|
||||||
|
if [[ $ubuntu_version > '21' ]]; then # ruby must use openssl <= 1.1.1. Not support openssl 3.0 yet.
|
||||||
|
need_export_apt_key="1"
|
||||||
|
if [[ ! -d "/opt/openssl" ]]; then
|
||||||
|
target_openssl_ver="1.1.1q"
|
||||||
|
sudo bash -l -c "
|
||||||
|
cd /root &&
|
||||||
|
wget https://www.openssl.org/source/openssl-$target_openssl_ver.tar.gz --no-check-certificate -O openssl-$target_openssl_ver.tar.gz &&
|
||||||
|
tar xzvf openssl-$target_openssl_ver.tar.gz &&
|
||||||
|
cd openssl-$target_openssl_ver &&
|
||||||
|
./config no-ssl2 no-ssl3 zlib-dynamic -fPIC shared --prefix=/opt/openssl &&
|
||||||
|
make depend -j$cpu_cores && make install"
|
||||||
|
openssl_ver="$target_openssl_ver"
|
||||||
|
cd "$org_pwd"
|
||||||
|
openssl_dir="/opt/openssl"
|
||||||
|
openssl_source_dir="/root/openssl-$target_openssl_ver"
|
||||||
|
fi
|
||||||
|
sudo mkdir -p /etc/apt/trusted.gpg.d/
|
||||||
|
fi
|
||||||
cd /etc/nginx/
|
cd /etc/nginx/
|
||||||
sudo mkdir orbit_sites/
|
sudo mkdir orbit_sites/
|
||||||
if [ -z "$(grep 'orbit_sites' nginx.conf)" ]; then
|
if [ -z "$(grep 'orbit_sites' nginx.conf)" ]; then
|
||||||
|
@ -44,7 +89,7 @@ fi
|
||||||
cd $org_pwd
|
cd $org_pwd
|
||||||
sudo apt-get install gnupg -y
|
sudo apt-get install gnupg -y
|
||||||
if [[ $ubuntu_version =~ '14' ]]; then
|
if [[ $ubuntu_version =~ '14' ]]; then
|
||||||
wget -qO - https://www.mongodb.org/static/pgp/server-3.2.asc | sudo apt-key add -
|
apt_add_key_func https://www.mongodb.org/static/pgp/server-3.2.asc
|
||||||
echo "deb http://repo.mongodb.org/apt/ubuntu trusty/mongodb-org/3.2 multiverse" | sudo tee /etc/apt/sources.list.d/mongodb-org-3.2.list
|
echo "deb http://repo.mongodb.org/apt/ubuntu trusty/mongodb-org/3.2 multiverse" | sudo tee /etc/apt/sources.list.d/mongodb-org-3.2.list
|
||||||
sudo apt-get update
|
sudo apt-get update
|
||||||
sudo apt-get install -y mongodb-org=3.2.22 mongodb-org-server=3.2.22 mongodb-org-shell=3.2.22 mongodb-org-mongos=3.2.22 mongodb-org-tools=3.2.22
|
sudo apt-get install -y mongodb-org=3.2.22 mongodb-org-server=3.2.22 mongodb-org-shell=3.2.22 mongodb-org-mongos=3.2.22 mongodb-org-tools=3.2.22
|
||||||
|
@ -70,7 +115,7 @@ if [[ $ubuntu_version =~ '14' ]]; then
|
||||||
fi
|
fi
|
||||||
else
|
else
|
||||||
# install mongod 6.0
|
# install mongod 6.0
|
||||||
wget -qO - https://www.mongodb.org/static/pgp/server-6.0.asc | sudo apt-key add -
|
apt_add_key_func https://www.mongodb.org/static/pgp/server-6.0.asc
|
||||||
if [[ $ubuntu_version =~ '20' ]] || [[ $ubuntu_version =~ '21' ]]; then
|
if [[ $ubuntu_version =~ '20' ]] || [[ $ubuntu_version =~ '21' ]]; then
|
||||||
sudo wget -nc http://archive.ubuntu.com/ubuntu/pool/main/o/openssl1.0/libssl1.0-dev_1.0.2n-1ubuntu5_amd64.deb
|
sudo wget -nc http://archive.ubuntu.com/ubuntu/pool/main/o/openssl1.0/libssl1.0-dev_1.0.2n-1ubuntu5_amd64.deb
|
||||||
sudo dpkg -i libssl1.0-dev_1.0.2n-1ubuntu5_amd64.deb
|
sudo dpkg -i libssl1.0-dev_1.0.2n-1ubuntu5_amd64.deb
|
||||||
|
@ -105,7 +150,7 @@ else
|
||||||
sudo apt-get purge mongodb-org* -y
|
sudo apt-get purge mongodb-org* -y
|
||||||
sudo rm -rf /var/log/mongodb
|
sudo rm -rf /var/log/mongodb
|
||||||
sudo rm -rf /var/lib/mongodb
|
sudo rm -rf /var/lib/mongodb
|
||||||
wget -qO - https://www.mongodb.org/static/pgp/server-5.0.asc | sudo apt-key add -
|
apt_add_key_func https://www.mongodb.org/static/pgp/server-5.0.asc
|
||||||
# install mongod 5.0
|
# install mongod 5.0
|
||||||
if [[ $ubuntu_version =~ '20' ]] || [[ $ubuntu_version =~ '21' ]]; then
|
if [[ $ubuntu_version =~ '20' ]] || [[ $ubuntu_version =~ '21' ]]; then
|
||||||
sudo wget -nc http://archive.ubuntu.com/ubuntu/pool/main/o/openssl1.0/libssl1.0-dev_1.0.2n-1ubuntu5_amd64.deb
|
sudo wget -nc http://archive.ubuntu.com/ubuntu/pool/main/o/openssl1.0/libssl1.0-dev_1.0.2n-1ubuntu5_amd64.deb
|
||||||
|
@ -139,7 +184,7 @@ else
|
||||||
sudo apt-get purge mongodb-org* -y
|
sudo apt-get purge mongodb-org* -y
|
||||||
sudo rm -rf /var/log/mongodb
|
sudo rm -rf /var/log/mongodb
|
||||||
sudo rm -rf /var/lib/mongodb
|
sudo rm -rf /var/lib/mongodb
|
||||||
wget -qO - https://www.mongodb.org/static/pgp/server-4.4.asc | sudo apt-key add -
|
apt_add_key_func https://www.mongodb.org/static/pgp/server-4.4.asc
|
||||||
if [[ $ubuntu_version =~ '20' ]] || [[ $ubuntu_version =~ '21' ]]; then
|
if [[ $ubuntu_version =~ '20' ]] || [[ $ubuntu_version =~ '21' ]]; then
|
||||||
echo "deb [ arch=amd64,arm64 ] https://repo.mongodb.org/apt/ubuntu focal/mongodb-org/4.4 multiverse" | sudo tee /etc/apt/sources.list.d/mongodb-org-4.4.list
|
echo "deb [ arch=amd64,arm64 ] https://repo.mongodb.org/apt/ubuntu focal/mongodb-org/4.4 multiverse" | sudo tee /etc/apt/sources.list.d/mongodb-org-4.4.list
|
||||||
elif [[ $ubuntu_version =~ '18' ]] || [[ $ubuntu_version =~ '19' ]]; then
|
elif [[ $ubuntu_version =~ '18' ]] || [[ $ubuntu_version =~ '19' ]]; then
|
||||||
|
@ -220,8 +265,13 @@ if [ -z $(which rvm) ]; then
|
||||||
fi
|
fi
|
||||||
source "/etc/profile.d/rvm.sh"
|
source "/etc/profile.d/rvm.sh"
|
||||||
# install ruby 2.7.6
|
# install ruby 2.7.6
|
||||||
rvm install 2.7.6
|
if [[ -z "$openssl_dir" ]]; then
|
||||||
|
rvm install 2.7.6
|
||||||
|
else
|
||||||
|
rvm install 2.7.6 --with-openssl-dir="$openssl_dir"
|
||||||
|
fi
|
||||||
rvm --default use 2.7.6
|
rvm --default use 2.7.6
|
||||||
|
gem install bundler -v 2.1.4
|
||||||
gem install zip
|
gem install zip
|
||||||
gem install nokogiri -v 1.8.5 #for ruby 2.7.6
|
gem install nokogiri -v 1.8.5 #for ruby 2.7.6
|
||||||
#gem install nokogiri -v 1.7.0.1 #for ruby 2.1.10
|
#gem install nokogiri -v 1.7.0.1 #for ruby 2.1.10
|
||||||
|
|
Loading…
Reference in New Issue