PL en toute liberté

Tag :

Serveur

Fil des billets

Mise à jour Statusnet 0.9.1

Voici mes notes pour mettre à jour Statusnet de la version 0.9.0 à la 0.9.1. Pour la mise à jour de 0.8.3 vers la 0.9.0 voir ce billet. Le ReadMe officiel est ici.

Cette mise à jour est beaucoup plus simple que ma dernière, car en fait on n'a qu'à remplacer les fichiers par les nouveaux et ça fonctionne. Pas de modification à la base de données à faire. Donc en résumé (voir ce billet pour les lignes de commandes complètes):

  1. Arrêter tous les services (pour ne pas avoir de modifications dans la BDD et dans le répertoire).
  2. Faire une copie du répertoire et de la BDD.
  3. Déposer les nouveaux fichiers sur le serveur (je n'écrase pas les anciens, ça m'a déjà causé des problèmes).
  4. Récupérer les fichiers config.php et .htaccess de la version 0.9.0 et les répertoires avatar, background, file.
  5. Voilà, ça fonctionne pour moi sauf pour des mots non traduits. Je ne sais trop pourquoi, donc je continuerai à fouiller un peu avant de traduire à la dure.

Configuration

La configuration pour que Statusnet importe les statuts des amis Twitter a changé (je crois) depuis la version 0.8.3. On doit écrire cette ligne dans config.php:

$config['twitterimport']['enabled'] = true;

La ligne $config['twitterbridge']['enabled'] = true; n'est plus présente.

J'ai mis cette fois cette ligne pour sauver un peu de bande passante (selon les notes du fichier config.php):

$config['site']['indent'] = false;

Installation et configuration de Memcached

Afin de pouvoir utiliser cette fonction de Statusnet (celle de pouvoir utiliser Memcached pour mettre en cache des infos, donc accélérer un peu l'application) voici ce que j'ai dû faire.

  1. Installer memcached et memcache sur mon serveur Ubuntu Hardy: «apt-get install memcached » et «pecl install Memcache»
  2. Ajouter extension=memcache.so dans mon fichier php.ini
  3. Ajouter ces lignes dans le config.php de statusnet:

$config['memcached']['enabled'] = true;
$config['memcached']['server'] = 'localhost';
$config['memcached']['port'] = 11211;

Conclusion

Tout semble fonctionner, difficile pour l'instant de dire si Memcached améliore quelque chose, mais j'aime bien le concept de mettre en cache de l'information afin d'optimiser les actions serveurs.

Voilà donc la version 0.9.1 fonctionnelle sur mon serveur. En espérant que ça tienne le coup.


Mise à jour Statusnet

Statusnet est l'application derrière le microblogue pédagogique EnDirect. L'application vient de passer en version 0.9, et ajoute pas mal d'améliorations, donc...

Voici ma procédure de mise à jour de Statusnet (de la version 0.8.3 à 0.9).

D'abord la documentation sur la mise à jour se trouve, selon le site de documentation de Statusnet, dans le fichier Readme. OK, on trouve des indications. Mais pour moi ce n'était pas suffisant :o(

L'accès à l'application

Tout arrêter le site afin que la base de données et le répertoire de l'application ne soient modifiés (j'ai renommé le répertoire) durant la mise à jour. Si vous utilisez les services xmpp, IM, etc, arrêter le tout (voir le fichier readme).

Le répertoire

Renommer le répertoire de l'application (disons /statusnet par /statusnet_083), ce qui devient notre dossier de sauvegarde.

Créer un nouveau répertoire /statusnet.

Transférer les nouveaux fichiers (version 0.9) dans ce nouveau répertoire /statusnet, comme pour une nouvelle installation (ne pas écraser les anciens fichiers par les nouveaux, ça cause des problèmes).

Copier dans le nouveau /statusnet les répertoires /avatar, /background et /file de notre sauvegarde (/statusnet_083) ainsi que le fichier config.php.

La base de données

Faire une sauvegarde de la base de données avec cette ligne de commande (action ++++importante):

/usr/bin/mysqldump --user=utilisateur --password=motpasse --opt statusnet > /home/qqpart/back.sql

Ceci crée un fichier back.sql (dans le répertoire /home/qqpart) qui contient votre base de données «statusnet» complète. Note: une copie du répertoire /var/lib/mysql/statusnet n'est pas suffisante, car utilisation de innodb. Pour récupérer cette sauvegarde on utilise la commande (ceci peut prendre plusieurs minutes):

mysql -u root -p statusnet < back.sql

Réaliser maintenant les modifications à la base de données pour la mise à jour. Ces modifications de trouvent dans le fichier db/08to09.sql. On utilise cette commande (où statusnet est le nom de la base de données de votre installation et utilisateur est le nom de l'utilisateur de la base de données) à partir de la racine de l'application version 0.9:

mysql -u utilisateur -p statusnet < db/08to09.sql

Ceci peut prendre plusieurs minutes.

Lien avec Twitter

Afin de pouvoir utiliser le «pont Twitter», j'ai dû ajouter cette ligne dans le fichier config.php:

addPlugin('TwitterBridge');

Interface pour les mobiles

On doit ajouter cette ligne dans le fichier config.php (la ligne $config'site''mobile' = true; ne suffit ou ne marche pas):

addPlugin('MobileProfile');

Interface admin

Afin d'avoir accès à l'interface d'administration Web, j'ai dû populer la table «profile_role» en y insérant 3 entrées avec la commande SQL suivante (où le 1 est mon profile ID):

INSERT INTO `profile_role` (`profile_id`, `role`, `created`) VALUES
(1, 'administrator', '2010-03-10 20:24:43'),
(1, 'moderator', '2010-03-10 20:24:43'),
(1, 'owner', '2010-03-10 20:24:43');

Conclusion

Bien que tout semble bien fonctionner après cette mise à jour assez longue (à cause de la taille de la BDD) et complexe (la documentation n'était pas claire pour moi), il reste encore, tout comme pour une installation fraîche, des détails à ajuster comme des éléments non traduits et des CSS (si on n'utilise pas le thème default) à peaufiner. On doit donc se mettre un peu les mains dans le code.

La documentation du wiki est très sommaire (et périmé dans bien des cas) pour un bizounneux comme moi. L'application est un peu trop complexe pour que je puisse aider à documenter :o( Par exemple, la gestion des plugins est un mystère pour moi.

Le forum est un endroit pas mal pour trouver si d'autres ont eu les même problèmes.


Serveur déconnecté

Juste un petit message pour signaler que le serveur recitmst.qc.ca, recit.org, robot-tic.qc.ca, sympa-tic.qc.ca, cyberfolio.org, est déconnecté (pour raison de déménagement).

Ne vous inquiétez pas, nous reviendrons sous peu ;o)


Gobby, quelques tests

Gobby, un outil «texte» de collaboration, est pas mal du tout pour ceux qui comprennent qu'on n'a pas besoin de fonctions de mise en page quand on prépare un texte, ordre du jour, présentation, formation... Pour les autres, utilisez Google Document.

Donc, j'ai testé l'application pendant quelques minutes aujourd'hui, question de voir si ça peut être utile. Oui = ma réponse.

En mode réseau local ça fonctionne très bien, donc ça pourrait être une alternative fort intéressante au clavardage et Google doc quand on veut ne pas trop utiliser la bande passante vers l'Internet.

On peut installer un serveur, Sobby, et se connecter via l'internet. Ça fonctionne bien aussi, sauf pour ceux qui ont un proxy à passer pour se rendre sur Internet. Il faut donc que le serveur Sobby utilise un port comme 443 par exemple (s'il n'est pas déjà utilisé par le https de votre serveur). J'ai donc installé un serveur permanent (port 6522) sur recitmst.qc.ca (avec un mot de passe, si vous désirez essayer avec moi, donnez-moi rendez-vous et je vous donnerai les informations nécessaire pour me rejoindre) et un autre temporaire (que je démarre au besoin) avec le port 443 (pour contourner un peu les proxy).

Il peut être tentant de comparer cet outil avec un wiki ou Google Document par exemple, mais je crois que Gooby répond à d'autres besoins.

Bon ok, voici les + et - de Gooby.

Avantages:

  • très synchrone par rapport à Google document (le wiki n'est pas synchrone), on voit instantanément ce que l'autre écrit;
  • chaque utilisateur a sa couleur, donc on sait qui écrit quoi dans la page;
  • un outil de clavardage est intégré dans la page;
  • mode texte, donc pas de flafla (on fera une mise en page après la composition, méthode de travail efficace);
  • mode réseau local (pas de bande passante Internet, plus rapide) fort impressionnant, on trouve les autres utilisateurs facilement;
  • multi OS.

Désavantages:

  • Mode texte pur seulement, donc rébarbatif pour les adeptes des outils de mise en page en cours de création;
  • pas d'historique du document.

Je laisse la conclusion à Gilles (il m'a autoriser la citation) qui a écrit cette phrase dans un Gobby lors de nos tests:

les outils de travail sont vraiment bien faits. Mais personne ne veut travailler... :-)

Ça se discute, mais il est vrai que nous sommes qu'au début de la collaboration à distance. En tout cas en éducation.


C'était si simple

Par choix, je gère les serveurs pour mon travail au RÉCIT MST. Ce sont de beaux petits vservers (technologie créée par Jacques Gélinas il y a déjà quelques temps).

Comme mes adresses courriels @recitmst et celles de mon collègue sont inscrites partout, du SPAM on en reçoit plusieurs centaines par jour. Spamassassin est installé sur notre serveur de courriel et fait bien son travail: filtrer les courriels et évaluer la probabilité que ces courriels soient des SPAM, si = SPAM on ajoute ****POURRIEL**** dans le sujet du message pour pouvoir traiter avec notre client de courriel.

Le problème ici est que les pourriels entrent quand même dans notre boite et donc il peut y avoir plus de 1000 courriels à télécharger le lundi matin par exemple. Arrrrgggg!!!!

J'ai cherché sur le Web comment Spamassassin pourrait supprimer (je sais il peut y avoir des faut positifs, mais bon comme je supprime de toute façon les pourriels détectés par Spamassassin...) les SPAM au lieu de seulement les «tager». Quelques recettes mais rien qui s'adaptent à ma configuration ou d'assez simple pour ma cellule. On parle de procmail ou amavis ou...

Et voilà que je trouve une page où on parle de header_checks. Ho! Postix pourrait agir sur les courriels pour les supprimer? Et bien oui! Comme Spamassassin inscrit ce type de chose dans l'entête du message:

X-Spam-Level: ******, où plus il y a d'étoiles plus Spamassassin pense que c'est un pourriel

on peut dire à Postfix de supprimer le courriel qui a plus de 5 étoiles par exemple. Comment? Dans le fichier /etc/postfix/main.cf on ajoute cette ligne:

header_checks = regexp:/etc/postfix/header_checks

et créer le fichier /etc/postfix/header_checks avec comme contenu:

/^X-Spam-Level: \*{5,}.*/ DISCARD

On restart postfix.

Et voilà, c'est fait! Mon serveur de courriel ne place plus les pourriels dans ma boite de courriels, ce qui diminue de beaucoup les courriels à télécharger le matin.

Sources:


My name is Suse

Afin de combler les désirs d'un technicien j'ai installé la distribution Suse sur un ordinateur qui servira de serveur web. Comme vous le savez probablement moi j'aime beaucoup (je fais tout ce que j'ai besoin avec) Mandriva. Installation, gestion, stabilité... sont des qualités de Mandriva.

Et bien après avoir taponner des heures pour faire fonctionner apache/php/mysql sur Suse, je peux vous confirmer que je ne changerai pas de distribution aujourd'hui! Surtout pas pour Suse! Niet!

Mandriva powered!