From c321dc2acf3507bdf2f22dac26c653b904c67b2d Mon Sep 17 00:00:00 2001 From: cedricAbonnel <64610571+cedricAbonnel@users.noreply.github.com> Date: Sun, 10 May 2020 16:28:32 +0200 Subject: [PATCH] create install-phpmyadmin --- scripts/install-phpmyadmin | 81 ++++++++++++++++++++++++++++++++++++++ 1 file changed, 81 insertions(+) create mode 100644 scripts/install-phpmyadmin diff --git a/scripts/install-phpmyadmin b/scripts/install-phpmyadmin new file mode 100644 index 0000000..2b1fd0d --- /dev/null +++ b/scripts/install-phpmyadmin @@ -0,0 +1,81 @@ +#!/bin/bash + +####################################### +# Bash script to install an AMP stack and PHPMyAdmin plus tweaks. For Debian based systems. French version. +# +# Script bash pour installer Apache / MariaDB / PHP 7.4 / PHPMyAdmin pour Linux Debian et dérivées. +# Écrit par Cédric Abonnel / https://abonnel.fr + +# In case of any errors (e.g. MySQL) just re-run the script. Nothing will be re-installed except for the packages with errors. +####################################### + +printMessage () { + echo -e "\n$Yellow$1$Cyan" +} + +# Regular Colors +Red='\033[0;31m' # Red +Green='\033[0;32m' # Green +Yellow='\033[0;33m' # Yellow +Purple='\033[0;35m' # Purple +Cyan='\033[0;36m' # Cyan +Color_Off='\033[0m' # Text Reset + +printMessage "\n[NFO] Avant de commencer j'ai quelques questions à poser." + +# Demander les informations nécessaires +read -p "Emplacement du dossier webapp pour phpMyAdmin [/usr/share/phpmyadmin]: " pmaDir +pmaDir=${pmaDir:-/usr/share/phpmyadmin} + +read -p "Emplacement du dossier des données temporaires pour phpMyAdmin [/var/lib/phpmyadmin/tmp]: " pmaDirTmp +pmaDirTmp=${pmaDirTmp:-/var/lib/phpmyadmin/tmp} + +read -p "Groupe Linux utilisé par le serveur Web [www-data]: " wwwGroup +wwwGroup=${wwwGroup:-www-data} + +read -p "URL de l'archive phpMyAdmin [https://files.phpmyadmin.net/phpMyAdmin/5.0.2/phpMyAdmin-5.0.2-all-languages.tar.gz]: " pmaUrlDownload +pmaUrlDownload=${pmaUrlDownload:-https://files.phpmyadmin.net/phpMyAdmin/5.0.2/phpMyAdmin-5.0.2-all-languages.tar.gz} +# extraire le nom de l'archive du chemin URL +pmaArchiveName=$(basename -- "$pmaUrlDownload") +# extraire le nom de l'archive sans extension tar.gz +pmaDirVer="${pmaArchiveName%%.*}" + + +printMessage "\n[NFO] Début de l'installation" + +# ajouter le user courant au projet Web +sudo chow + +# install php modules pour phpMyAdmin +# list des dépendances sur https://debian.pkgs.org/sid/debian-main-amd64/phpmyadmin_4.9.5+dfsg1-2_all.deb.html +sudo apt install php7.4-mysql php7.4-mbstring php-google-recaptcha php-json + +# récupérer l'archive +cd /tmp +wget $pmaUrlDownload + +# décompresser l'archive +tar xvf $pmaArchiveName + +# copier le contenu de l'archive dans la cible +sudo mv $pmaDirVer $pmaDir + +# création du dossier des données temporaires +sudo mkdir -p $pmaDirTmp + +# Donner les droits d'accès au serveur Web sur le dossier +sudo chown -R root:$wwwGroup $pmaDir + +# Création du fichier de configuration +pmaConfigFile=$pmaDir/config.inc.php +touch $pmaDir/config.inc.php +chgrp $wwwGroup $pmaDir/config.inc.php +chmod 640 $pmaDir/config.inc.php +cat >> $pmaDir/config.inc.php <