Archives du tag ◊ bidouillage ◊

Auteur :
• 26 mai 2012

Je viens tout juste de passer à LinuxMint Maya et la technique que j’avais publié en octobre 2011 afin d’installer Antidote RX v8 pour Ubuntu 11.10 est également valide pour Maya (et probablement aussi pour Ubuntu 12.04, mais je n’ai pas testé).

Voici donc un gigantesque copié/collé……..

Antidote n’est certainement pas un logiciel libre, mais je me permet quand même de publier dans le Planet Libre puisque le message est destiné aux utilisateurs d’un système d’exploitation libre…..

Alors, voici ce que j’ai appliqué afin de pouvoir utiliser ma version d’Antidote RX v8 (la H60).

Les manipulations qui suivent nécessitent des manipulations à effectuer avec des droits superutilisateurs (root) dont le mauvais usage peut engendrer des effets néfastes pour votre système. Je ne suis donc pas responsable de vos erreurs.

Tout d’abord, j’ai installé normalement Antidote v7 et ensuite j’ai appliqué le patch pour la v8. Jusqu’à 10.10 c’était terminé, un sudo antidote et on pouvait utiliser la chose.

LinuxMint Maya

Sous LinuxMint Maya on obtient le message d’erreur suivant:

antidote: error while loading shared libraries: libssl.so.6: cannot open shared object file: No such file or directory

La librairie libssl.so.6 semble avoir été remplacée par la libssl.so.1.0.0, pour y remédier j’ai crée le lien symbolique suivant dans les dossiers d’Antidote:

sudo ln -s /lib/i386-linux-gnu/libssl.so.1.0.0 /usr/local/Druide/Antidote/lib/libssl.so.6

Mais un problème semblable existe aussi pour le fichier libcrypto.so.6 puisqu’on obtient le message d’erreur suivant:

antidote: error while loading shared libraries: libcrypto.so.6: cannot open shared object file: No such file or directory

La librairie libcrypto.so.6 semble aussi avoir été remplacée par la libcrypto.so.1.0.0, pour y remédier j’ai également crée le lien symbolique suivant dans les dossiers d’Antidote:

sudo ln -s /lib/i386-linux-gnu/libcrypto.so.1.0.0 /usr/local/Druide/Antidote/lib/libcrypto.so.6

Il faut maintenant remédier à l’erreur suivante:

antidote: symbol lookup error: /usr/lib/i386-linux-gnu/libdbus-glib-1.so.2: undefined symbol: dbus_watch_get_unix_fd

Nous aurons besoin d’une version de libdbus-glib datant de l’époque de la sortie d’Antidote. Il faudra télécharger cette version (ne pas l’installer), la décompresser et ensuite copier les fichiers vétustes dans les répertoires d’Antidote.

wget http://security.ubuntu.com/ubuntu/pool/main/d/dbus-glib/libdbus-glib-1-2_0.74-2ubuntu0.1_i386.deb
dpkg -x libdbus-glib-1-2_0.74-2ubuntu0.1_i386.deb .
sudo cp usr/lib/* /usr/local/Druide/Antidote/lib/.

Et pour terminer, nous aurons à gérer l’erreur suivante:
D-Bus library appears to be incorrectly set up; failed to read machine uuid: Failed to open "/usr/local/var/lib/dbus/machine-id": Aucun fichier ou dossier de ce type

Le fichier machine-id existe dans /var/lib/dbus/. Il nous faudra donc créer un lien, mais d’abord assurons-nous que l’arborescence existe.

cd /usr/local/
sudo mkdir var
cd var/
sudo mkdir lib
cd lib/
sudo mkdir dbus
sudo ln -s /var/lib/dbus/machine-id /usr/local/var/lib/dbus/machine-id

Et voilà, ça devrait fonctionner…..

Bonne erreur de grammaire…

Auteur :
• 9 octobre 2011

Le correcteur d’orthographe Antidote dans sa version huit n’est officiellement supporté que pour Ubuntu 8.04. Mais jusqu’à la version 10.10, je n’ai eu aucun souci avec l’installation de celui-ci. Je n’avais même pas remarqué le problème avec 11.04 (ma 11.04 était une 10.10 mises à jour), mais lors d’une nouvelle installation de 11.04, pas possible d’y arriver sans bidouiller un brin.

Antidote n’est pas un logiciel libre, j’aurais pu aussi intituler ce billet : « c’est compliqué quand ce n’est pas libre », mais puisque que ça se passe dans Ubuntu, je publie.

Alors, voici ce que j’ai appliqué afin de pouvoir utiliser ma version d’Antidote RX v8 (la H60).

Les manipulations qui suivent nécessitent des manipulations à effectuer avec des droits superutilisateurs (root) dont le mauvais usage peut engendrer des effets néfastes pour votre système. Je ne suis donc pas responsable de vos erreurs.

Tout d’abord, j’ai installé normalement Antidote v7 et ensuite j’ai appliqué le patch pour la v8. Jusqu’à 10.10 c’était terminé, un sudo antidote et on pouvait utiliser la chose.

Depuis Ubuntu 11.10

Sous 11.10 on obtient le message d’erreur suivant:

antidote: error while loading shared libraries: libssl.so.6: cannot open shared object file: No such file or directory

La librairie libssl.so.6 semble avoir été remplacée par la libssl.so.1.0.0, pour y remédier j’ai crée le lien symbolique suivant dans les dossiers d’Antidote:

sudo ln -s /lib/i386-linux-gnu/libssl.so.1.0.0 /usr/local/Druide/Antidote/lib/libssl.so.6

Mais un problème semblable existe aussi pour le fichier libcrypto.so.6 puisqu’on obtient le message d’erreur suivant:

antidote: error while loading shared libraries: libcrypto.so.6: cannot open shared object file: No such file or directory

La librairie libcrypto.so.6 semble aussi avoir été remplacée par la libcrypto.so.1.0.0, pour y remédier j’ai également crée le lien symbolique suivant dans les dossiers d’Antidote:

sudo ln -s /lib/i386-linux-gnu/libcrypto.so.1.0.0 /usr/local/Druide/Antidote/lib/libcrypto.so.6

Il faut maintenant remédier à l’erreur suivante:

antidote: symbol lookup error: /usr/lib/i386-linux-gnu/libdbus-glib-1.so.2: undefined symbol: dbus_watch_get_unix_fd

Nous aurons besoin d’une version de libdbus-glib datant de l’époque de la sortie d’Antidote. Il faudra télécharger cette version (ne pas l’installer), la décompresser et ensuite copier les fichiers vétustes dans les répertoires d’Antidote.

wget http://security.ubuntu.com/ubuntu/pool/main/d/dbus-glib/libdbus-glib-1-2_0.74-2ubuntu0.1_i386.deb
dpkg -x libdbus-glib-1-2_0.74-2ubuntu0.1_i386.deb .
sudo cp usr/lib/* /usr/local/Druide/Antidote/lib/.

Et pour terminer, nous aurons à gérer l’erreur suivante:
D-Bus library appears to be incorrectly set up; failed to read machine uuid: Failed to open "/usr/local/var/lib/dbus/machine-id": Aucun fichier ou dossier de ce type

Le fichier machine-id existe dans /var/lib/dbus/. Il nous faudra donc créer un lien, mais d’abord assurons-nous que l’arborescence existe.

cd /usr/local/
sudo mkdir var
cd var/
sudo mkdir lib
cd lib/
sudo mkdir dbus
sudo ln -s /var/lib/dbus/machine-id /usr/local/var/lib/dbus/machine-id

Et voilà, ça devrait fonctionner…..

Bonne erreur de grammaire…

Auteur :
• 20 octobre 2010

Voici un petit hack permettant d’ajouter votre propre réducteur d’URL à la liste déjà présente dans Gwibber. Le but étant seulement d’utiliser votre propre réducteur, ou simplement d’en utiliser un alternatif.

La méthode qui suit a été testée sur le réducteur utilisant lilURL, un clone libre de TinyURL. Personnellement, j’ai installé mon propre réducteur et j’ai choisi Bilbolinks, qui utilise cette même bibliothèque. Ce qui nous intéresse sera d’appeler l’API de notre réducteur à partir de Gwibber. L’API de lilURL et de Bilbolinks est de la forme:

/api.php?longurl=http://www.uneurltrestreslongue.com

Puisque mon réducteur n’est pas encore public, j’ai fait une courte recherche et j’ai trouvé un réducteur qui utilise le Bilbolinks et qui fera l’affaire pour notre exemple http://joo.li.

Les manipulations qui suivent nécessitent des manipulations à effectuer avec des droits superutilisateurs (root) dont le mauvais usage peut engendrer des effets néfastes pour votre système. Je ne suis donc pas responsable de vos erreurs

Nous allons nous déplacer dans le répertoire qui gère les réducteurs.

cd /usr/share/pyshared/gwibber/microblog/urlshorter

Et nous allons créer un fichier de configuration nommé jooli.py

sudo nano jooli.py

Que nous allons renseigner comme suit (remplacer joo.li par votre réducteur (3x)) :

import urllib2

PROTOCOL_INFO = {

  "name": "joo.li",
  "version": 0.1,
  "fqdn" : "http://joo.li",

}

class URLShorter:

  def short(self, text):
    short = urllib2.urlopen("http://joo.li/api.php?longurl=%s" % urllib2.quote(text)).read()
    return short

Ensuite on doit modifier le fichier __init__.py

sudo nano __init__.py

en ajoutant:

@import jooli

Et dans la commande PROTOCOLS

"joo.li": jooli,

Ce qui donnerait au final:

import cligs, isgd, tinyurlcom, ur1ca
#import snipurlcom, zima
import jooli

PROTOCOLS = {
  "cli.gs": cligs,
  "is.gd": isgd,
  #"snipurl.com": snipurlcom,
  "tinyurl.com": tinyurlcom,
  "joo.li": jooli,
  "ur1.ca": ur1ca,
  #"zi.ma": zima,
}

On enregistre et il nous reste plus qu’à créer un lien symbolique vers notre nouveau fichier jooli.py

cd /usr/lib/python2.6/dist-packages/gwibber/microblog/urlshorter
sudo ln -s /usr/share/pyshared/gwibber/microblog/urlshorter/jooli.py

Voilà on redémarre Gwiber, et on choisit notre nouveau réducteur dans les préférences.

Pour info, le hack est le fruit d’une conversation dans #ubuntu-qc entre moi et @deuxpi.

Ma version de Gwibber est 2.32.0.1

Auteur :
• 5 octobre 2010

Juste une petite info au passage. Dernièrement j’ai travaillé avec les droits des fichier d’un site web fonctionnant sous ubuntu-server 10.0.4.1.  En voulant rétablir l’état initial, je voulais donc changer les droit des fichier pour 755 et les droits des fichiers pour 644.

Bien sur, je pouvais dans un terminal faire un:

chmod -R 644 /var/www/profnoel

et ensuite retravailler chaque dossiers individuellement. Mais , bof…

J’ai donc trouvé cette petite astuce:

Pour agir uniquement sur les fichiers

find /var/www/profnoel -type f -exec chmod 644 {} \;

Pour agir sur les dossiers

find /var/www/profnoel -type d -exec chmod 755 {} \;

C’est la façon de faire ou bien il y a plus simple ?

Catégorie : Du code | Tags : , ,  | 5 commentaires
Auteur :
• 25 septembre 2010

Un disque

Plus tôt cette semaine, je publiais un billet concernant l’installation d’un RAID logiciel (RAID 1) dans une Ubuntu 10.04.1 server. Sans vouloir revenir sur la définition d’un RAID 1, rappelons simplement que cette solution permet une redondance des données en disques en miroir et peut tolérer la panne d’un disque.

En fin de billet, je précisais qu’une prochaine étape serait les procédures à suivre dans le cas de la panne d’un disque, ce billet d’aujourd’hui en discutera donc.

Tout d’abord, précisons que la configuration proposée dans le billet précédant comporte une lacune majeure (voir la discussion à la fin du billet) compliquant grandement la récupération des données. En effet, puisque la partition boot (nécessaire au démarrage) n’est présente que sur le premier disque, la perte du second disque est facilement récupérable, le système pouvant quand même démarrer. Alors que la panne du premier disque empercherait le système de démarrer.

Lire ce billet dans son intégralité…

Auteur :
• 23 septembre 2010

Comme je le disais dans un billet précédant, j’ai récemment mis en production mon nouveau serveur. En inspectant l’ancienne machine, je réalise que j’avais un deuxième disque dur identique à celui-ci quelque part. Deux disques identiques, et pourquoi ne pas expérimenter un RAID logiciel?

RAID vous dite?

Pour mieux se situer, voici un extrait de Wikipédia.

En informatique, le mot RAID (Redundant Array of Independent Disks) désigne les techniques permettant de répartir des données sur plusieurs disques durs afin d’améliorer soit la tolérance aux pannes, soit la sécurité, soit les performances de l’ensemble, ou une répartition de tout cela.

Dans le cas du RAID matériel, une carte ou un composant est dédié à la gestion des opérations

En RAID logiciel, le contrôle du RAID est intégralement assuré par une couche logicielle du système d’exploitation. Cette couche s’intercale entre la couche d’abstraction matérielle (pilote) et la couche du système de fichiers.

Lire ce billet dans son intégralité…

Auteur :
• 19 mars 2009

J’aime bien utiliser Virtualbox afin de tester/utiliser de nouvelles versions/distributions de Linux. Un des problèmes de cette virtualisation avec les alpha de Jaunty Jackalope est que celle-ci utilise la version 1.6.0 de X, non reconnu par les « guest addition » de VirtualBox, nous confinant ainsi à un écran de 800 par 600 (ce qui est très peu ergonomique).

Voici donc comment faire afin de pouvoir les installer et de profiter, entre autres, d’une plus grande souplesse concernant l’affichage (et autres trucs).

Tout d’abord, je présume que vous avez la dernière version de Virtualbox (2.1.4). Si ce n’est pas le cas, téléchargez ici le paquet relatif à votre distribution ou bien utilisez synaptic.

Le problème est que l’installeur des additions invitées ne reconnaît que la version 1.6 de X, alors que Jaunty retourne 1.6.0 comme version (X -version). Assez triviale comme problème. Le régler le sera tout autant.

Première chose que nous ferons sera de copier le fichier VBoxLinuxAdditions-x86.run dans notre répertoire. La deuxième chose sera d’extraire la source de l’installateur des additions vers le dossier de travail add.

sh VBoxLinuxAdditions-*.run --target add

Nous devrons ensuite allez dans le répertoire add afin de modifier le fichier install.sh

cd add/
sudo nano install.sh

Nous chercherons (ctrl-w) l’expression 1.6 dans le fichier. Nous allons trouver 1.5.99.* | 1.6 ). Il faut changer le 1.6 pour un 1.6.0, on enregistre (ctrl-o) et on quitte nano (ctrl-x). Si vous utilisez un éditeur texte, c’est vers la ligne 415 que ça se passe.

Maintenant nous pouvons installer les additions invitées

sudo ./install.sh

On redémarre et les addition devraient être installés.

edit

Via nixternal et le forum de Virtualbox

Auteur :
• 3 mars 2009

wordpress-iconAvec toute mes manipulations d’un nouveau serveur et l’intégration des pages web éparpillées que j’ai un peu partout, j’en suis venu à me poser la question comment déménager complètement un blog créé sous WordPress.

Les manipulations que je présente ici ont été réalisées avec la version 2.6. Tout d’abord, je présume que vous avez un accès FTP et un accès à votre base de données MySQL (via phpmyadmin) dans votre ancien et votre nouvel hébergeur. Ces solutions ont fonctionnés pour moi, je ne pourrait être tenu responsable de ce que vous allez faire.

Voici les deux cas :

1. Sans changement de nom de domaine (http://mondomaine.com –> http://mondomaine.com).

C’est le cas le plus facile, c’est un simple déménagement d’hébergeur. Le transfert du blogue peut se faire en quelques étapes :

  1. Tout d’abord, on se connecte en FTP à notre ancien hébergeur et on télécharge tout le répertoire racine de notre blogue.
  2. Dans le répertoire que l’on vient de télécharger, on édite le fichier wp-config.php que l’on renseigne avec les nouvelles informations de connexion (DB_NAME, DB_USER, DB_PASSWORD et DB_HOST).
  3. Ensuite on se connecte à phpmyadmin de notre ancien hébergeur, on se positionne dans la bonne base de données, on clique sur exporter, on coche en bas sur transmettre, on donne un nom significatif et on sélectionne un format de compression (moi j’ai utilisé bzippé) puis exécuter.
  4. Dans notre nouvel hébergeur, on se connecte en FTP et on télécharge en amont le répertoire racine que l’on avait téléchargé dans notre ordinateur.
  5. Ensuite on se connecte à phpmyadmin de notre nouvel hébergeur, on se positionne dans la bonne base de données, on clique sur importer, on sélectionne le fichier compressé de la base de données dans notre ordinateur, puis exécuter.

Et voilà!

2. Avec changement de nom de domaine (ex. : http://www.mondomaine.com/blogue –> http//:blogue.mondomaine.com).

Ici la difficulté réside dans le fait que WordPress utilise des url absolues, plutot que relatives. Nous devrons donc au préalable modifier toutes les adresses contenues dans la base de données. Voici les étapes :

  • Tout d’abord, on se connecte en FTP à notre ancien hébergeur et on télécharge tout le répertoire racine de notre blogue.
  • Dans le répertoire que l’on vient de télécharger, on édite le fichier wp-config.php que l’on renseigne avec les nouvelles informations de connexion (DB_NAME, DB_USER, DB_PASSWORD et DB_HOST).
  • Si vous avez la réécriture d’url, vous devait également éditer le fichier .htaccess afin qu’il ai la nouvelle adresse.
  • Dans notre nouvel hébergeur, on se connecte en FTP et on télécharge en amont le répertoire racine que l’on avait téléchargé dans notre ordinateur.

Pour la modification de l’adresse dans la base de données, plusieurs références proposent de modifier la base de données avec un éditeur de texte, ce qui implique un téléchargement sans compression.

J’ai du rejeter cette solution parce que mon fichier SQL nom compressé dépassait la limitation de 2 Mo d’importation d’un fichier SQL dans phpmayadmin. Nous allons donc régler notre problème par des requêtes SQL.

  • On se connecte à phpmyadmin de notre nouvel hébergeur, on se positionne dans la bonne base de données, on clique sur importer, on sélectionne le fichier compressé de la base de données dans notre ordinateur, puis exécuter.
  • Toujours dans notre base de données de phpmyadmin on sélectionne SQL. Il suffira de copier les requêtes modifiées dans la zone de texte puis choisir exécuter.

On modifie afin que la nouvelle adresse soit prise en compte :

UPDATE wp_options SET option_value = replace(option_value, 'http://ancien.domaine.com', 'http://nouv.domaine.com') WHERE option_name = 'home' OR option_name = 'siteurl';

Ensuite on modifie l’adresse de tous les billets et de toutes les pages

UPDATE wp_posts SET guid = replace(guid, 'http://ancien.domaine.com','http://nouv.domaine.com');

Ensuite on modifie le contenu des billets et des pages afin que les liens pointant vers notre blogue soient modifiés.

UPDATE wp_posts SET post_content = replace(post_content, 'http://ancien.domaine.com', 'http://nouv.domaine.com');

Voilà

Page 1 sur 3123