Installer la plateforme de favoris collaboratifs Akarru sur Debian
Akarru est une plateforme de partage de liens similaire à Digg, Reddit et autre Delicious. Ce guide vous aide à l'installer sur Debian GNU/Linux.
Ce guide a été testé avec les distributions suivantes :
- Debian 5.0 Lenny
- Debian 6.0 Squeeze
Information importante
Ce logiciel n'est disponible qu'en langue espagnole.
Pré-requis
Ce guide nécessite un serveur MySQL disposant du script mysql-tools disponible dans le guide Installer et configurer MySQL sur Debian.
Ce guide nécessite un serveur HTTP avec support du PHP disposant au choix d'un des scripts suivant :
- Le script a2tools disponible dans mon guide Installer Apache 2 sur Debian.
- Le script lighty-tools disponible dans mon guide Installer Lighttpd et PHP 5 sur Debian.
Paramètres
Renseignez le nom de domaine ou sera disponible l'application :
DOMAIN="liens.domaine-exemple.fr"
Renseignez le nom d'hôte de votre serveur MySQL (si vous ne savez pas de quoi il s'agit, ne modifiez pas cette valeur) :
MYSQL_HOST="localhost"
Si votre serveur MySQL n'est pas local, ce guide effectuera une connexion SSH pour y créer la base de données.
Installation
Installez les locigiels nécessaires au bon fonctionnement de l'application :command apt-get install php5-mysql
Redémarrez votre serveur HTTP pour prendre en compte les modifications :
test -x /etc/init.d/apache2 && /etc/init.d/apache2 force-reload test -x /etc/init.d/lighttpd && /etc/init.d/lighttpd force-reload
Récupérez l'URL de téléchargement des sources de l'application :
SOURCE_URL="$(command wget --quiet --output-document=- \ 'http://sourceforge.net/projects/akarru/' \ | command grep 'title="Download' \ | command sed -e 's|.*href="\([^"]*\)".*|\1|')" VERSION="$(echo "${SOURCE_URL}" \ | command sed -e 's/.*akarru-\(.*\).tgz.*/\1/g')"Téléchargez les sources :
command wget "${SOURCE_URL}" \ --output-document="/tmp/akarru-${VERSION}.tar.gz"
Décompressez l'archive obtenue :
command tar --directory '/tmp' -xzf "/tmp/akarru-${VERSION}.tar.gz"
Déplacez le dossier obtenu vers son emplacement final :
command mv "/tmp/akarru-${VERSION}" "/opt/${DOMAIN}"
Supprimez le fichier téléchargé :
command rm "/tmp/akarru-${VERSION}.tar.gz"
Configuration
Créez la base de données :
if [ "${MYSQL_HOST}" = "localhost" ]; then MYSQL_PARAMS=$(command mysql-tools create-domain-db "${DOMAIN}") else command echo "Saisissez le mot de passe de l'utilisateur root MySQL :" command read PASSWORD MYSQL_PARAMS=$(command ssh "root@${MYSQL_HOST}" "command mysql-tools create-domain-db '${DOMAIN}' '$(command cat /etc/mailname)' '${PASSWORD}'") fi
Récupérez les paramètres de la nouvelle base de données :
MYSQL_DB="$(echo "${MYSQL_PARAMS}" | command grep -e "^MYSQL_DB" \ | cut --delimiter="=" --fields="2-")" MYSQL_USER="$(echo "${MYSQL_PARAMS}" | command grep -e "^MYSQL_USER" \ | cut --delimiter="=" --fields="2-")" MYSQL_PASSWORD="$(echo "${MYSQL_PARAMS}" | command grep -e "^MYSQL_PASSWORD" \ | cut --delimiter="=" --fields="2-")" echo "${MYSQL_PARAMS}"
Initialisez le contenu de la base de données :
command mysql --user="${MYSQL_USER}" --password="${MYSQL_PASSWORD}" \ --host="${MYSQL_HOST}" "${MYSQL_DB}" \ < "/opt/${DOMAIN}/blogmemes.sql"
Générez une clef de chiffrement des mots de passe :
AES_KEY="$(command apg -m 40 -x 63 -n 1 -a 1 -M SNCL -E "'\"/&\\")"
Créez le fichier de configuration de la base de données :
command echo "<?php define('DATABASE_USER', '${MYSQL_USER}'); define('DATABASE_PASS', '${MYSQL_PASSWORD}'); define('DATABASE_HOST', '${MYSQL_HOST}'); define('DATABASE_NAME', '${MYSQL_DB}'); define('AES_KEY', '${AES_KEY}');" \ > "/opt/${DOMAIN}/public_html/db_conf.php"
Déplacez certains dossiers afin de mieux correspondre aux recommandations de la LSB :
command mkdir --parent "/var/cache/akarru/${DOMAIN}" command mv "/opt/${DOMAIN}/public_html/cache" "/var/cache/akarru/${DOMAIN}/cache" command mv "/opt/${DOMAIN}/public_html/templates_c" "/var/cache/akarru/${DOMAIN}/templates_c" command ln -s "/var/cache/akarru/${DOMAIN}/cache" "/opt/${DOMAIN}/public_html/cache" command ln -s "/var/cache/akarru/${DOMAIN}/templates_c" "/opt/${DOMAIN}/public_html/templates_c" command chown -R www-data:www-data "/var/cache/akarru/${DOMAIN}"
Créez la configuration du serveur HTTP pour votre domaine :
if [ -x "/usr/bin/a2tools" ]; then command a2tools add-vhost "${DOMAIN}" "/opt/${DOMAIN}/public_html/" fi if [ -x "/usr/bin/lighty-tools" ]; then command lighty-tools add-vhost "${DOMAIN}" "/opt/${DOMAIN}/public_html/" fi
L'application devrait maintenant être disponible sur le nom de domaine que vous avez choisi.
Sauvegardes
Pour sauvegarder votre installation, je vous propose d'utiliser Backup Manager. Pour l'installer, vous pouvez suivre mon guide:
Installer et configurer Backup Manager sur Debian
Une fois Backup Manager installé, configurer la sauvegarde des fichiers de l'application :
command update-bm-folders add "/opt/${DOMAIN}"
Important: Sauvegarder les fichiers ne suffit pas ! Il faut aussi sauvegarder la base de données. La procédure pour ce faire est disponible dans mon article MySQL sur Debian.
Remerciements
- Merci aux développeurs d'Akarru.