Dans l'un de nos précédents articles de blog, nous avions expliqué comment installer ownCloud sur un VPS CentOS 6, aujourd'hui nous verrons comment installer ownCloud sur un serveur Ubuntu 12.04 à l'aide d'un script bash automatisé.
#!/bin/bash # # Install owncloud # This script assumes you already have installed Apache & MySQL # # Change me MYSQL_ROOT_PASSWD="YOUR MYSQL ROOT PASSWORD" # Path to your localhost www="/var/www" # Apache User wwwdata="www-data" # Make sure only root can run our script if [ "$(id -u)" != "0" ]; then echo "This script must be run as root" 1>&2 exit 1 fi # Check arguments if [ $# -ne 1 ]; then echo "Usage $0 domainName" exit 1 fi # Create MySQL database MYSQL_OC_PASSWD=$(</dev/urandom tr -dc A-Za-z0-9 | head -c 8) Q1="CREATE DATABASE IF NOT EXISTS owncloud;" Q2="GRANT ALL PRIVILEGES ON owncloud.* TO 'owncloud'@'localhost' IDENTIFIED BY '$MYSQL_OC_PASSWD';" Q3="FLUSH PRIVILEGES;" SQL="${Q1}${Q2}${Q3}" mysql -uroot -p$MYSQL_ROOT_PASSWD -e "$SQL" > /dev/null 2>&1 # Check if the database is created if [ $? -ne 0 ]; then echo "Cannot connect to the MySQL database server" exit 1 fi # Create the file with VirtualHost configuration echo "<VirtualHost *:80> DocumentRoot $www/owncloud ServerName $1 ServerAlias $1 <Directory $www/owncloud> Options Indexes FollowSymLinks MultiViews +Includes AllowOverride All Order allow,deny allow from all </Directory> </VirtualHost>" > /etc/apache2/sites-available/$1 # Update System apt-get -y update > /dev/null 2>&1 # Install PHP modules apt-get -y install php5 php5-json php-xml php-mbstring php5-zip php5-gd php5-sqlite php5-mysql curl libcurl3 libcurl3-dev php5-curl php-pdo > /dev/null 2>&1 # Download and extract the latest version wget -qO- -O tmp.tar.bz2 http://owncloud.org/releases/owncloud-latest.tar.bz2 && tar -C $www -xjf tmp.tar.bz2 && rm tmp.tar.bz2 # Set owner chown $www-data: -R $www/owncloud # Enable the site a2ensite $1 > /dev/null 2>&1 # Reload Apache2 /etc/init.d/apache2 restart > /dev/null 2>&1 # Output clear echo "Open your web browser and navigate to your ownCloud instance" echo "Url: $1" echo "Database: owncloud" echo "Database user: owncloud" echo "Database user password: $MYSQL_OC_PASSWD"
Que fera le script ?
- Vérifier si le script est exécuté en tant que root
- Vérifier si le nombre d'arguments est correct
- Créer une base de données MySQL
- Vérifier si la base de données est créée
- Créer le fichier avec la configuration VirtualHost
- Installer les modules PHP nécessaires
- Télécharger et extraire la dernière version d'ownCloud
- Définissez le propriétaire, activez le site et redémarrez Apache
- Vous montrer le nom de la base de données, l'utilisateur et le mot de passe
Enregistrez le script ci-dessus sous installOwncloud.sh
(si vous ne l'avez pas déjà fait), remplacez "VOTRE MOT DE PASSE RACINE MYSQL" par votre mot de passe root MySQL, puis tapez les commandes suivantes :
a+x installOwncloud.sh ./installOwncloud.sh your.domainname.com
Enfin, ouvrez votre navigateur Web et accédez à votre instance ownCloud
Ce script devrait également fonctionner sur Debian.
PS. Si vous avez aimé cet article, partagez-le avec vos amis sur les réseaux sociaux en utilisant les boutons à gauche ou laissez simplement une réponse ci-dessous. Merci.