Astuces Mysql

Migrer une base de latin 1 en UTF-8

MABASE=mabase
mysqldump --add-drop-table -u root -p $MABASE > /tmp/$MABASE.sql  
iconv -f latin1 -t utf8 /tmp/$MABASE.sql > /tmp/$MABASE.utf8.sql 
sed -e 's/CHARSET=latin1/CHARSET=utf8/g' -i /tmp/$MABASE.utf8.sql
mysql -u root -p $MABASE < /tmp/$MABASE.utf8.sql

Et voilà :-) dans certains cas, genre xwiki même si l’interclassement est en latin1 les données sont déjà en UTF-8 donc pour ne pas déformer les données il suffit de supprimer l’étape iconv.

#Mediawiki

SSL avec CAcert.org

Comme le titre le laisse pensé, j’utilise CAcert.org comme tiers de confiance. Pour Installer de nouveaux certificats, voici ce que je fais.

génération de la paire de clés :

HOST=tcweb.org
openssl genrsa -out $HOST.key 2048
openssl req -new -key $HOST.key -out $HOST.csr

aller sur le site de CAcert.org y copier coller le contenu du fichier .csr, le résultat sera enregistré dans un fichier .cert pour certaines applications il faut concaténer la clé et le certificat dans un même fichier pem

#Mediawiki

Exim

Quelques notes

  • forcer à renvoyer les mails bloqué en queue : exim -qf
  • chercher un motif dans la queue : exiqgrep -ir email@domain.com
  • supprimer un message dans la queue : exim -Mrm EXIM_MESSAGEG_ID
  • forcer à renvoyer les mails “frozen” : exim -qff

Erreurs connue

SMTP error from remote mail server after RCPT TO:<xxxxx@xxxx.fr>:
host host.fqsn [YY.YY.YY.YY]: 504 5.5.2 <host>:
Helo command rejected: need fully-qualified hostname

Il faut modifier le nom de la machine dans les fichiers /etc/hostname et /etc/hosts puis lancer dpkg-reconfigure exim4-config

#Mediawiki

Jabber

Messagerie instantanée

Jabber est un système de messagerie instantanée : il permet aux personnes de communiquer en temps réel par Internet, et de voir quand leurs contacts sont en ligne. Jabber est un protocole, et non un logiciel : de nombreux clients vous permettent de vous connecter au réseau Jabber. Jabber a beaucoup d’avantages par rapport aux autres systèmes de messagerie instantanée. Il existe entre autre des passerelles entre le réseau Jabber et d’autres réseaux de messagerie instantanée comme MSN, ICQ, Yahoo messenger, etc. Grace à ces passerelles, si vous disponsez d’un identifiant sur ces réseaux, vous pourrez utiliser tous ces réseaux depuis votre client Jabber.

#Mediawiki

Jabber sur TcWeb

Pour utiliser le serveur jabber sur le réseau TcWeb c’est très simple. Suivez pas à pas la démonstration si dessous ou rendez-vous sur le wiki de jabberFR

Eléments technique

  • serveur jabber : tcweb.org
  • ports : 5222 et 5223 pour la version ssl

#Documentation Tcweb #Mediawiki

Rails 3 et cucumber

quelques notes sur la création d’un projet rails 3 avec des tests en cucumber.

L’objectif c’est de transformer ces notes en un magifique Tutorial.

Générer un projet sans tests

 rails new projet -T

vi Gemfile
group :development, :test do
  gem 'rspec-rails'
  gem 'cucumber-rails'
  gem 'database_cleaner'
end
bundle install
rails generate cucumber:install --rspec --capybara

 vi features/browse_users.feature
 Feature: Browse users
  So that I can browse through users
  As an administrator
  I want to be able to see choose a user from a full list of users and update it

  Scenario: Browsing a list of users
    Given a user with the name "Prénom Nom" and email "prenom.nom@gmail.com"
    And a user with the name "Test Cumcuber" and email "test.cucumber@example.com"
    When I am on the users page
    Then I should see "Prénom Nom"
    And I should see "Test Cumcuber"

vi features/step_definitions/appl.rb
Given /^a user with the name "([^"]*)" and email "([^"]*)"$/ do |name, email|
  User.create!(:name => name, :email => email)
end

rake features

rails generate scaffold User name:string email:string
rake db:migrate
rake features

#Mediawiki

Lxc kimsufi

Quelques notes sur la création de containers linux (lxc) sur un serveur kimsufi ça marche aussi très bien avec les dedibox

Controling Host

Quelques paquets

Le “controling host” en lxc est en quelques sorte l’hyperviseur de xen, kvm ou vmware.

Installer une debian 64 (debian 6.0 en ce moment) avec juste un / de 3G et un petit swap, l’espace restant sera utilisé par le LVM. Ne pas oublier de changer les mots de passes. Installer lxc, lvm et reiserfs :

#Mediawiki

Puppet

Prise de note sur l’ajout d’une machine dans le “nuage” puppet

grep search /etc/resolv.conf 
search azae.net

apt-get install puppet
puppetd --test

Sur le master puppet

puppetca --list
puppetca --sign nom_de_machine

#Mediawiki

Debian java ssl

dans toutes les docs java pour ajouter un certificats racine dans le keystore de java il faut faire :

keytool -import -trustcacerts -alias 'mon_alias' -file mon_alias.pem

Seulement sous debian et ubuntu, cette action à une durée de vie limité. En effet à la mise à jour du paquet ca-certificates l’ensemble des portes clés des différentes applications de la machine sont reconstruit … enfin quand la commande “update-ca-certificates -f” est lancé. C’est le packet ca-certificates-java qui s’occupe de ça.

#Mediawiki

Backup-manager et debian

Introduction

Quelques notes sur la configuration de backup-manager pour faire les sauvegardes d’une debian par exemple les domU de la dedibox sur une communauté dl.free.fr

La communauté

une fois créé la communauté va avoir une URL du genre http://dl.free.fr/A012345/mes_backups l’identifiant de la communauté c’est le hash entre dl.free.fr et le nom de la communauté ici : A012345. Le login d’upload sera donc : backup@A012345

#Mediawiki

Postgres

Quelques astuces postgresql :

Copy une base sur un autre host à travers ssh :

HOST=machine2
DB=madb
ssh $HOST "pg_dump -U postgres -d $DB -Fc" | pg_restore -Fc -U postgres -c -d $DB

#Mediawiki

Ssh

Quelques astuces ssh

Une prison sftp

/etc/ssh/sshd_config

Subsystem       sftp    internal-sftp
 
Match Group ftpusers
         ChrootDirectory /home/%u
         ForceCommand internal-sftp
         AllowTCPForwarding no
         X11Forwarding no

ajouter un user

adduser foo
adduser foo ftpusers
chown root:root ~foo
mkdir ~foo/ftp
chown foo:foo ~foo/ftp

#Mediawiki