forked from Sophia/thelinuxlist
47 lines
1.6 KiB
Bash
47 lines
1.6 KiB
Bash
#!/usr/bin/env bash
|
|
trap 'exit 130' INT
|
|
|
|
# Confirmation prompt
|
|
while true; do
|
|
read -r -p "Would you like to Update phpMyAdmin? [Y/n] " input
|
|
|
|
case $input in
|
|
[yY][eE][sS]|[yY])
|
|
break
|
|
;;
|
|
[nN][oO]|[nN])
|
|
echo "phpMyAdmin update aborted."
|
|
exit 0
|
|
;;
|
|
*)
|
|
echo "That wasn't an option..."
|
|
;;
|
|
esac
|
|
done
|
|
|
|
# Dependency check
|
|
if ! command -v curl &>/dev/null; then
|
|
echo "Installing curl..."
|
|
sudo apt install -y curl
|
|
fi
|
|
|
|
# Update process
|
|
echo "Updating phpMyAdmin..."
|
|
sudo apt update && sudo apt upgrade -y
|
|
sudo rm -rf /usr/share/phpmyadmin.bak
|
|
sudo mv /usr/share/phpmyadmin/ /usr/share/phpmyadmin.bak
|
|
sudo mkdir /usr/share/phpmyadmin/
|
|
sudo wget https://www.phpmyadmin.net/downloads/phpMyAdmin-latest-all-languages.tar.gz -P /usr/share/phpmyadmin/
|
|
sudo tar -xzf /usr/share/phpmyadmin/*.tar.gz -C /usr/share/phpmyadmin/
|
|
sudo mv /usr/share/phpmyadmin/phpMyAdmin-*-all-languages/* /usr/share/phpmyadmin
|
|
sudo mkdir /usr/share/phpmyadmin/tmp/ && sudo chmod -R 777 /usr/share/phpmyadmin/tmp/
|
|
randomBlowfishSecret=$(openssl rand -base64 22)
|
|
sudo sed -i "s|cfg\['blowfish_secret'\] = ''|cfg['blowfish_secret'] = '$randomBlowfishSecret'|" /usr/share/phpmyadmin/config.sample.inc.php
|
|
sudo mv /usr/share/phpmyadmin/config.sample.inc.php /usr/share/phpmyadmin/config.inc.php
|
|
sudo systemctl restart apache2 nginx
|
|
|
|
# Completion message
|
|
echo -e "=================================================================="
|
|
echo "phpMyAdmin has been updated!"
|
|
echo -e "=================================================================="
|