Le TwiBlog

The one with Twidi

Aller au contenu | Aller au menu | Aller à la recherche

mardi 18 octobre 2011

Django 1.3 et postgresql (problème lié à pysocopg sous ubuntu oneiric)

Vous utilisez django ? En version <= 1.3.1 ?

Vous utilisez postgresql ? (qui utiliserait encore mysql...)

Vous venez de mettre à jour votre (k)unbutu en oneiric ?

Jusque là, tout va bien.

mais d'un coup soudain votre navigateur vous affichera un méchant message au lieu de votre belle page :

 Exception Value: current transaction is aborted, commands ignored until end of transaction block

Ou alors (car ce n'est pas systématique) un jour vous allez lancer un test de votre application django.

Et là c'est le drame :

 psycopg2.ProgrammingError: autocommit cannot be used inside a transaction

MAIS !!??

Le coupable est identifié : psycopg2 qui, en version 2.4.2, casse plus ou moins django.

Le bug est référencé sur le tracker django : https://code.djangoproject.com/ticket/16250

Il est "fixé" mais comme indiqué dans le dernier commentaire, le fix n'est pas dans django 1.3.1 et ne sera donc disponible qu'à partir de django 1.4.

Comment faire ?

Simple.

Il faut donc utiliser psycopg 2.4.1 au lieu de psycopg 2.4.2 fourni avec la dernière ubuntu. Malheureusement le paquet n'est pas disponible.

Pas grave, nous allons le faire à la main !

Avant tout cela vous voudrez peut-être supprimer la version 2.4.2 de psycopg de votre système, dans ce cas :

 sudo apt-get --purge remove python-psycopg2

Puis on commence par installer dans le système les paquets nécessaires à la compilation (n'ayez pas peur) de psycopg2 :

 sudo apt-get build-dep python-psycopg2

Et enfin on va installer la version voulue via pip (mettez sudo si vous n'êtes pas dans un virtualenv) :

 pip install psycopg2==2.4.1

Et voilà tout remarche comme avant !

lundi 5 octobre 2009

Connexion linux/ubuntu avec passphrase ssh (pam-ssh), suite

Les nouvelles version de libpam-ssh (1.92.6 pour moi, sous Ubuntu 09-10 Karmic) ne fonctionnent plus de la même façon que celle décrite dans le précédent billet que j'avais écrit sur le sujet.

Maintenant, la ou les clés valides doivent être présentes dans le répertoire .ssh/login-keys.d :

ln -s  ~/.ssh/id_rsa ~/.ssh/login-keys.d/

Quant aux options dans le répertoire /etc/pam.d/, elles changent.

Tout d'abord, plus de fichier pam-ssh-* (ni ssh-* pour les versions intermédiaires).

Puis dans le fichier /etc/pam.d/common-auth, il faut mettre, avant la première ligne commençant par auth :

 auth sufficient pam_ssh.so try_first_pass

Et enfin dans le fichier /etc/pam.d/common-password, il faut mettre, avant la première ligne commençant par password :

session optional pam_ssh.so

Et voilà, cela fonctionne comme avant

mercredi 6 juin 2007

Ubuntu / Kubuntu : problèmes d'extensions avec le firefox intégré : firebug et sylish

A chaque fois que je me remet à utiliser le firefox intégré à ubuntu (ou kubuntu dans mon cas), je me retrouve avec une ou deux extensions qui ne marchent pas.

Actuellement il s'agit de stylish et du très connu firebug.

Bref, n'ayant pas envie de chercher trois ans la solution, j'ai choisi simplement d'installer la version officielle de Mozilla Firefox.

1) Commencer par télécharger Firefox

2) Le décompresser dans un répertoire quelconque (par exemple /home/moi/bin, ce qui va créer un répertoire /home/moi/bin/firefox)

3) Dire au système d'utiliser cette version :

sudo mv /usr/bin/firefox /usr/bin/firefox.orig
sudo ln -s /home/moi/bin/firefox/firefox /usr/bin/firefox

(Notez bien le firefox/firefox, qui est donc l'exécutable firefox dans le répertoire du même nom)

4) Empêcher les mises à jour automatiques d'écraser ce nouveau lien symbolique... on va simplement interdire de mettre à jour le firefox intégré à ubuntu (le notre se mettra à jour tout seul). Pour cela on va utiliser la technique que j'ai décrit dans mon article debian / ubuntu / apt / dpkg : Comment empêcher la mise à jour d'un paquet :

sudo echo "firefox hold" | dpkg --set-selections

Et voilà, firefox est pleinement fonctionnel !

samedi 26 mai 2007

Connexion linux/ubuntu avec passphrase ssh (pam-ssh)

Un petit billet pour expliquer comment se logguer dans sa session ubuntu avec sa passphrase ssh au lieu de son mot de passe classique.

L'avantage principal est notamment de valier votre passphrase ssh et ainsi pouvoir vous logguer sur tout compte ssh autorisé sans saisir votre passphrase à nouveau, ni lancer un ssh-add.

Dans le meilleur des cas vous économisez une saisie de mot de passe : on le fait au début une fois pour toute.

Voici les étapes à suivre :

1) Installer pam-ssh :

sudo aptitude install libpam-ssh

2) Créer une clé ssh si vous n'en avez pas déjà une (je pense que si vous lisez ce topic, vous l'avez déjà)

ssh-keygen

3) Modifier la séquence de validation du login.

Ci-dessous, remplacez $EDITOR par votre éditeur texte favori, ou faîtes un

export EDITOR=votre_editeur_favori

Il faut donc modifier deux fichiers lié à pam :

sudo $EDITOR /etc/pam.d/common-auth

Avant la première ligne commençant par "auth", ajouter

@include pam-ssh-auth

Puis :

sudo $EDITOR /etc/pam.d/common-password

Avant la première ligne commençant par "password", ajouter

@include pam-ssh-session

Vous pourrez toujours vous logguer avec votre mot de passe, dans quel cas il vous faudra saisir ultérieurement votre passphrase ssh en cas de besoin.

Note : si vous vérouillez votre session, pour revenir, tapez également votre clé ssh.

lundi 21 mai 2007

Passage (temporaire ou non) de Kubuntu à Ubuntu (les deux en Feisty)

Et bien oui des fois des envies prennent sans qu'on s'y attende...

J'ai donc décidé de retester Gnome via Ubuntu, après l'avoir quitté il y a quelques temps déjà pour Kde via Kubuntu.

En vrac :

D'abord les "moins" :

1) nautilus à pas de système d'onglet, ca craint (et je parle pas de la possibilité de konqueror de partager la fenetre)

2) pour les notifications evolution (mail) et gaim (messagerie instantanée), faut se battre :

  • il faut le paquet "mail-notification-evolution" pour evolution (et le configurer dossier par dossier dont on veut etre notifié)
  • il faut le paquet "gaim-libnotify" pour gaim, et le configurer

bon avec ça on a des notifications sympathiques, toutes sur le meme thème. pas évidant

3) le orange, c'est MOCHE, personnellement j'ai mis le theme "glider". Mais quoi qu'il en soit, la personnalisation est extrèmement moins poussée que pour KDE

4) pas possibile dans la "tray barre" (appelée "zone de notification" dans gnome") de choisir de masquer tel ou tel icone

5) il manque un "centre de configuration" à la kde... toujours passer par le menu, c'est lourd (oui je sais il y a gnome-control-center, mais il n'est pas proposé dans le menu ubuntu)

6) les bureaux :

  • il faut installer brightside pour passer d'un bureau à l'autre en amenant la souris au bord de l'écran
  • avec ctrl-alt-droite/gauche, quand on est "au bout", on revient pas au premier.. j'hallucine...

7) un petit manque de personnalisation d'evolution par rapport à kontact (je garde le tout-intégré-gnome pour utiliser beagle plus tard)

8) contrairement au gestionnaire de session de kde, celui de gnome ne considère par firefox comme une appli qu'il peut relancer... dommage, il faut le spécifier à la main

Ensuite les "plus" :

1) la "deskbar", c'est top, une sorte de katapult en mieux/différent (j'ai encore le malheureux reflexe du alt-space)

2) beryl ca marche tout seul (inutile et désagréable à l'utilisation, mais beau et simple à faire marcher, faut par contre installer des paquets en plus pour la configuration)

3) le majhong est plus beau que celui de kde (bon ok, c'est un peu inutile comme remarque)

Bon, on verra à l'utilisation, je n'ai pas viré mon kubuntu, je suis juste sur une partition séparée (celle sur laquelle trainait le windows installé avec mon portable, utilisé trois ou quatre fois depuis l'achat il y a 14 mois). Il est possible que je reste sous ubuntu un certain temps, meme si je sais qu'au final il me manquera toujours la possibilité qu'a KDE de tout personnaliser au maximum.

lundi 23 avril 2007

Kubuntu : problème lors du passage de Edgy à Feisty (le "Kubuntu upgrade tool" ne s'ouvre pas)

En utilisant la procédure recommandée pour passer mon Kubuntu de Edgy au tout nouveau Feisty, j'ai eu un problème, que j'évoque ici afin de donner la solution.

Il est donc recommandé d'utiliser Adept Manager, de faire un "Fetch update", et que de là, un assistant va s'ouvrir. Jusque là tout va bien.

Cet assistant se termine par un clic sur un bouton "finish" à partir duquel est normalement censé s'ouvrir le "Kubuntu upgrade tool". Sauf que celui ne s'ouvrait pas.

Pour que cet outil de mise à jour s'ouvre, il faut deux conditions :

- TOUS les paquets doivent être à jour (j'avais un problème ave mon opera qui demandait une version de libc que je n'avais pas, solution : apt-get remove opera)

- TOUS les dépôts contenus dans /etc/apt/sources.list doivent être bon (ils doivent répondre et ne pas avoir de problème de clé), si un ne répond pas, il suffit de le commenter (en rajoutant un # devant)

Une fois ces petits problèmes résolus, l'upgrade se passe bien (téléchargement de 1004Mo en cours pour moi)

jeudi 3 août 2006

Vim 7 pour Ubuntu (Dapper)

Utilisateur intensif de vim depuis que je l'ai découvert il y a plusieurs mois, j'ai entendu parlé à de nombreuses reprises de la version 7.

Vim7 n'étant pas actuellement disponible sous Ubuntu Dapper que j'utilise (en fait Kubuntu), j'ai cherché et... trouvé !

Il suffit d'inclure la ligne suivante dans son fichier /etc/apt/sources.list :

deb http://www.freshnet.org/debian/dapper /

Le tout suivi d'un petit sudo apt-get update && sudo apt-get upgrade

Liens :

lundi 27 mars 2006

Un portable, plusieurs réseaux, sous Linux (debian / ubuntu)

J'utilise chez moi et au travail le même pc portable (que je trimballe, mais c'est pas lourd, ca fera l'objet d'un autre billet).

Or bien sur les réseaux sont différents

  • à la maison, wifi protégé en dhcp
  • au boulot, reseau ethernet sans dhcp
  • au boulot toujours, quand le reseau marche pas, le wifi du voisin, dhcp, non protégé

Le soucis : a chaque fois jouer avec les ifup, ifdown, changer le resolv.conf (car le dhcp ecrase le fichier, et le reseau sans dhcp a besoin qu'on spécifie les dns)

L'envie : une simple commande très courte à taper à chaque fois que j'ai besoin de changer de reseau.

La solution : deux paquets (debian) à installer : ifscheme et resolvconf

ifsheme se charge de gérer des profils réseaux. Quant à resolvconf, il se charge de gérer, comme son nom l'indique, le fichier resolv.conf

Configuration :

Auparavant, j'avais une zone du type "iface eth0 inet static" et une "iface ath0 inet dhcp" (ath0 c'est mon interface wifi), avec des lignes commentées, que je modifiais pour chaque changement. En effet, je trouvais ça plus rapide que d'utiliser les outils de gnome/kde pour gérer les profils réseaux. Et j'avais un fichier "resolv.conf.taf" que je copiais à la place de resolv.conf dès que j'arrivais au boulot.

Maintenant, voici ce que j'ai dans mon fichier /etc/network/interfaces (je saute le début du fichier concernant l0, et je remplace les infos (ip, cle...) par des lettres) :

mapping eth0
        script ifscheme-mapping
  
iface eth0-taf inet static
        address 192.168.xxx.yy
        netmask 255.255.255.0
        gateway 192.168.xxx.1
        dns-nameservers aa.bb.cc.dd ee.ff.gg.hh

mapping ath0
        script ifscheme-mapping
 
iface ath0-taf inet dhcp
  
iface ath0-home inet dhcp
        wireless-essid MONESSID
        wireless-key MACLEWEP

On le voit, pour eth0, je ne gère que le scheme (profil) "taf", alors que pour ath0 (wifi), je gère "taf" et "home". Les profils sont gérés par carte, en spécifiant interface-scheme, donc ath0-taf et ath0-home sont deux profils totalement séparés.

On remarquera la ligne dns-nameservers pour eth0-taf, où l'in indique les dns. Cette ligne est inutile pour les profils wifis car ils sont en dhcp.

Pour utiliser ces profils, il suffit d'utiliser en premier lieu la commande ifscheme nom-du-scheme, suivi du ifup de l'interface voulue.

Par exemple : ifscheme home; ifup ath0

C'est déjà très bien. Mais pour moi, cela faisait trop à taper.

Je me suis donc créé un petit script, que j'ai appelé "n" (pour network) et que j'ai placé dans mon répertoire ~/bin (répertoire placé dans le path grace à une configuration de mon bashrc).

Voici ce script "n"

#!/bin/sh

case "$1" in
        taf)
                sudo ifdown ath0
                sudo ifscheme taf
                sudo ifup eth0
        ;;

        taf2)
                sudo ifdown eth0
                sudo ifscheme taf
                sudo ifup ath0
        ;;

        home)
                sudo ifdown eth0
                sudo ifscheme home
                sudo ifup ath0
        ;;

        *)
        echo "Usage: n {taf|taf2|home}"
        exit 1
        ;;
esac

L'utilisation est alors ultra simple

  • n taf quand j'arrive au boulot
  • n taf2 quand je préfère utiliser la connexion wifi du boulot
  • n home quand j'arrive chez moi

C'est très simple et rapide.

Bien sûr, il existe d'autres solutions, notamment la reconnaissance et configuration/choix automatique du réseau (hotplug et consors), le choix du profil par interface graphique...

Je vous met ici ce qui m'a mis sur la piste de resolvconf et ifscheme, et qui propose tout un tas d'autres solutions : Banc d'essai : Un portable, plusieurs reseaux (probleme classique)

PS : pour faire marcher resolvconf, j'ai du effectuer une action lue dans la doc : remplacer le fichier /etc/resolv.conf par un lien symbolique vers /etc/resolvconf/run/resolv.conf

jeudi 13 octobre 2005

Ubuntu 5.10 - breezy - est sorti

Pile à l'heure, Ubuntu 5.10 (5 pour 2005, et 10 pour Octobre), de som petit nom "Breezy Badger", est dans les bacs.

Je trouvais déjà la première version (4.10) au delà de mes espérances. Je n'ai pas été déçu du tout lors de la seconde (5.04) et alors là, je me réjouis et attends avec impatience la suivante tant m'apporte chaque nouvelle version !

En effet, utilisant quotidiennement Ubuntu sur mon portable depuis maintenant un an, je suis comblé par le support toujours plus complet de mon "laptop", et les avancées indénombrables en ce qui concerne le "desktop"... Pour moi, linux est enfin prêt pour ce "desktop".

En utilisateur plus que satisfait, je ne peux que recommander d'installer sinon essayer (via le live-cd, qui n'installe rien sur le pc) cette nouvelle version. Vous pouvez-même, si vous ne souhaitez pas gâcher un cd (hum...) en commander un (ou plus) gratuitement sur le site.

lundi 19 septembre 2005

Easy Ubuntu 2.0 : Ubuntu enfin fonctionnel : (mp3, vidéos, plugins Firefox, P2P)

Pour les amateurs d'Ubuntu qui

  • veulent l'installer pour la première fois
  • le réinstallent régulièrement
  • l'installent à tout va sur tous les pc qu'ils trouvent

Keyes a écrit Easy Ubuntu qui permet d'installer tout ce qui manque au premier lancement d'Ubuntu...

  • dépots supplémentaires (de nombreux logiciels deviennent ainsi installables facilement)
  • multimedia (mp3, divx...)
  • plugins firefox (flash, java, videos...)
  • gestion des archives rar et ace
  • amule et skipe

Retrouvez la dernière version (2.2 beta actuellement) sur http://placelibre.ath.cx/keyes/downloads/