Click here to check if anything new just came in.
February 29 2012
Tamponne moi un barbu
Un petit tutoriel vidéo mettant en scène pas mal de logiciels libres pour créer des tampons à l’aide d’une fraiseuse numérique.
Avant le tutoriel en vidéo, voici la liste des outils utilisés:
- Inkscape: Logiciel de dessin vectoriel utilisé ici pour vectoriser un fichier PNG.
- LibreCad: Logiciel de CAD qui sert juste pour éditer le fichier DXF sortant d’inkscape.
- F-engrave: L’outil indispensable pour la gravure numérique.
- EMC: Le logiciel de pilotage de la fraiseuse.
Ne pas oublier le logo de @lagrottedubarbu
Le tutoriel en vidéo:
February 05 2012
Speed your life, Linux & SSD
Je viens de monter un SSD à la place de mon ancien disque classique sur mon macbook vieux de 3 ans. Voici un bref retour d’expérience.
Afin d’avoir quelques chiffres, avant d’installer le SSD, j’ai installé bonnie++ qui est un logiciel de benchmark de disque.
Pour le lancer, voici une commande permettant de prendre en compte facilement la quantité de RAM disponible sur votre PC ( je ne sais plus trop d’où elle vient, merci à son auteur en tout cas
sudo bonnie++ -n 0 -u 0 -r `free -m | grep 'Mem:' | awk '{print $2}'` -s $(echo "scale=0;`free -m | grep 'Mem:' | awk '{print $2}'`*2" | bc -l) -f -b -d /home
Cette commande nous donne un résultat brut assez peu lisible.
Using uid:0, gid:0.
Writing intelligently...done
Rewriting...done
Reading intelligently...done
start 'em...done...done...done...
Version 1.03e ------Sequential Output------ --Sequential Input- --Random-
-Per Chr- --Block-- -Rewrite- -Per Chr- --Block-- --Seeks--
Machine Size K/sec %CP K/sec %CP K/sec %CP K/sec %CP K/sec %CP /sec %CP
EquinoxeFR 7366M 40652 5 18250 2 61482 4 70.7 0
EquinoxeFR,7366M,,,40652,5,18250,2,,,61482,4,70.7,0,,,,,,,,,,,,,Heureusement, bonnie++ est fourni avec des scripts permettant de mettre en forme les données.
echo "EquinoxeFR,7366M,,,40652,5,18250,2,,,61482,4,70.7,0,,,,,,,,,,,,," | bon_csv2html > bonnie_results.html
Ce qui nous donne un tableau HTML de ce type.

Maintenant que nous avons les chiffres de notre disque classique, nous pouvons installer le SSD. Afin de faciliter la migration des données, j’ai monté le SSD dans le portable et placé l’ancien DD dans un boitier USB. La copie des partitions existantes a été faite à l’aide de Clonezilla lancé depuis le LiveCD « parted magic« .
Voilà, les données sont copiés, nous redémarrons la machine en à peine 10 sec !!! ( de grub à l’invite de login GDM )
Visiblement le gain de performance est bien là et le silence est absolu, pas une pièce en mouvement, quel plaisir.
Afin d’améliorer encore l’utilisation du SSD, voici quelques optimisations:
Tout d’abord, changeons le « I/O Scheduler » qui est contre productif en mode « cfq » avec un disque SSD. Dans /boot/grub/menu.lst, il faut placer elevator=deadline dans les paramètres du kernel.
# (0) Arch Linux title Arch Linux root (hd0,0) kernel /boot/vmlinuz-linux root=/dev/sda1 elevator=deadline ro quiet vga=773 initrd /boot/initramfs-linux.img
Ce qui après un redémarrage nous donne
[pierre@EquinoxeFR ~]$ cat /sys/block/sda/queue/scheduler noop [deadline] cfq [pierre@EquinoxeFR ~]$
Ensuite, réglons quelques paramètres pour le montage de nos partitions:
[pierre@EquinoxeFR ~]$ cat /etc/fstab # # /etc/fstab: static file system information # # devpts /dev/pts devpts defaults 0 0 shm /dev/shm tmpfs nodev,nosuid 0 0 /dev/sda1 / ext4 noatime,discard,data=writeback,errors=remount-ro 0 1 /dev/sda2 swap swap defaults 0 0 /dev/sda3 /home ext4 noatime,discard,data=writeback,errors=remount-ro 0 1
- noatime: désactive la mise à jour de l’heure d’accès aux fichiers. Ca n’a que peu d’intérêt et ça use le SSD inutilement.
- discard: active le TRIM pour préserver au maximum la durée de vie du SSD
- data=writeback: journalise uniquement les métadatas avec EXT4. Attention il faut faire un tune2fs -o journal_data_writeback /dev/sda1 depuis un CD bootable sur la partition root sous peine de ne pas pouvoir redémarrer…
Voilà, après ces quelques optimisations, nous avons un système très réactif ( le jour et la nuit
même si je suis un peu étonné que les chiffres ne soit pas plus parlants. J’ai un SSD SATA III alors que mon portable ne supporte que le SATA II mais qui peut le plus, peut le moins… Ceci dit, j’ai quand même l’impression d’avoir des résultats en dessous de ce que l’on peut trouver sur le net. Peut-être que ça vient du contrôleur du macbook… sur OSX, beaucoup ont des problèmes de « link speed » sur le bus SATA avec de nombreux SSD.
Update 5/02:
Les résultats avec le scheduleur sur noop
February 02 2012
rp_filter et maux de tête
Je viens de passer un certain temps à régler un problème avec une machine fraîchement migrée de CENTOS 5.7 à CENTOS 6.2
J’ai une machine dans un réseau A qui tente de contacter mon serveur qui dispose d’une interface (1) dans le réseau A et une interface (2) dans le réseau B.
Plusieurs cas de figure:
- La machine ping l’adresse de l’interface (1) du serveur. C’est sur le même réseau, tout va bien.
- La machine ping l’adresse de l’interface (2) du serveur. Ce n’est pas le même réseau, le routeur joue son rôle, le paquet ICMP arrive bien sur l’interface (2) comme l’atteste tcmdump, mais il n’y a jamais de ECHO REPLY… WTF ?!?
Ce cas de figure marchait parfaitement avec CENTOS 5.x. C’était sans compter l’arrivée du noyau 2.6.31 qui a modifié le fonctionnement du « Reverse path filtering »
Extrait Release notes Redhat 6x:
A change in the 2.6.31 Linux kernel made thenet.ipv4.conf.default.rp_filter = 1 more strict in the I/O that is accepted. Consequently, in Red Hat Enterprise Linux 6, if there are multiple interfaces on the same subnet and I/O is sent to the one that is not the default route, the I/O will be dropped. Note that this applies to iSCSI iface binding when multiple interfaces are on the same subnet. To work around this, set the net.ipv4.conf.default.rp_filter parameter in /etc/sysctl.conf to 0 or 2, and reboot the machine.
Quand la machine contacte le serveur sur l’interface (2), le serveur voit un paquet provenant du réseau A, il ne va pas comme avec CENTOS 5 (en vert) répondre par la même interface en routant le paquet mais va tenter de répondre avec l’interface (1) (en rouge sur le schéma) qui est sur le réseau A. Or, c’est la qu’intervient le rp_filter qui va détruire la paquet !
Pour se sortir de cette situation il suffit d’éditer /etc/sysctl.conf et de changer net.ipv4.conf.default.rp_filter = 1 pour net.ipv4.conf.default.rp_filter = 2 ou éventuellement net.ipv4.conf.default.rp_filter = 0
January 21 2012
Flux de création de fichiers GCODE avec des outils libres
Après le petit tutoriel de ce matin, voici un post qui résume le « flux de production » de mes fichiers GCODE.
- La base
Tout commence par l’objet indipensable à la prise de mesure: le pied à coulisse.
- Les matériaux
Une fois l’objet à créer correctement dimensionné, il faut trouver le matériau dans lequel on va le créer. J’utilise principalement des bois et plastiques, les métaux étant (à par pour de la gravure) trop difficiles à fraiser avec mon matériel (il manque un refroidissement liquide ou un moteur de broche avec une faible vitesse et un gros couple).
- Pour le bois, je prends en général du MDF ou du contreplaqué qui peuvent faire entre 3 et 15 mm.
- Pour le plastique j’utilise beaucoup le PVC qui a un bon rapport qualité / prix ainsi que du PEHD ( c’est ce qui est utilisé pour les plaques à découper dans votre cuisine
ou encore du DELRIN (qui est excellent mais cher)
Le choix du matériau est fait, maintenant les logiciels ! Ne soyez pas effrayés, il y en a un certain nombre mais chacun est très performant dans son domaine.
- Les logiciels de CAO
Pour dessiner des pièces à usiner, celui que j’utilise le plus, c’est LibreCAD. C’est un fork libre du projet QCAD. Avec un peu d’habitude, vous dessinerez en quelques minutes des pièces relativement complexes en 2D. Vous pouvez commencer par regarder le tutoriel d’Andre PASCUAL, il parle de QCAD mais c’est la même chose, à part les icones qui changent, le principe est identique et le tutoriel est excellent.
Quand il s’agit de graver des dessins ou du texte, rien de vaut inkscape qui n’est plus à présenter. Il est préférable lorsque vous utilisez inkscape pour créer des fichiers DXF, nécessaires dans la suite du flux de production, d’enregistrer avec le greffon « Better DXF Output ». Pour certains dessins contenant des courbes de bezier ( splines ), je suis obligé d’ouvrir les DXF de LibreCAD avec Inkscape puis de les réenregistrer pour qu’il convertisse tout en polyline. Sinon, j’ai des plantages lors de la génération du GCODE avec HeeksCNC. Un bug qui sera surement corrigé par les développeurs, mais en attendant…
Dans un autre cadre très particulier, celui de la création de circuits imprimés, j’utilise KiCAD, un concurrent du très connu EagleCAD. Avec ce logiciel, je génère des fichiers GERBER qui seront ensuite convertis en GCODE.
- Les logiciels de création du GCODE
Ici, seulement deux logiciels sont utilisés:
HeeksCAD / HeeksCNC vont permettre de transformer le fichier DXF 2D en un fichier permettant de piloter la machine CNC. On renseigne au logiciel le diamètre de l’outil, son positionnement par rapport à la pièce, la vitesse d’avance… Bien qu’assez jeune, ce logiciel donne de très bon résultats.
En dehors des DXF, il y a les fichiers GERBER de Kicad. Là j’utilise pcb2gcode qui est un logiciel en ligne de commande.
pcb2gcode --metric --zsafe 2 --zwork -0.06 --offset 0.2 --zchange 25 --mill-feed 100 --mill-speed 5000 --back $back
- Pilotage de la CNC
Ici, un seul choix et non des moindres: EMC (LinuxCNC). Il prend en entrée les fichiers gcode et pilote la machine au travers d’un support temps réel du noyau linux. Il est préférable d’ailleurs de lui dédier une ancienne machine.
Et voilà après 2 heures de travail une manette de coinceur pour un voilier. L’originale en rouge est fendue, la nouvelle en DELRIN est très solide
et identique à l’originale (les économies de plastique en moins), elle parait plus épaisse mais ce n’est qu’un effet d’optique sur la photo.
Diagramme du flux de production
Si vous connaissez, utilisez d’autres outils, mettez les en commentaire c’est toujours intéressant !
January 05 2012
Archlinux: J’ai cassé mon kernel !
A la suite d’une fausse manip lors d’une mise à jour, mon PC ne démarre plus avec archlinux. Après expertise, il s’avère que l’installation du paquet de mise à jour du noyau n’est pas allée à son terme. Le noyau ( Vmlinuz ) est à jour mais le initrd lui est trop ancien.
Pour s’en sortir, rien de très compliqué:
Démarrer l’installable d’Archlinux sur un CD ou une clef USB.
Réglez votre clavier correctement avec la commande km, c’est plus facile ensuite
Montez votre partition root
mkdir /recup mount /dev/sda1 /recup
Mettez à jour le mtab de la partition root
grep -v rootfs /proc/mounts > /recup/etc/mtab
Montez ensuite les filesystem spéciaux
mount -o bind /proc /recup/proc mount -o bind /dev /recup/dev mount -o bind /sys /recup/sys
Un petit chroot
chroot /recup mount -a
Vous pouvez retrouver les derniers paquets installés dans /var/cache/pacman/pkg/ et en réinstaller un avec pacman -U XXX.pkg.tar.gz, pour moi se sera linux-3.1.7-1-x86_64.pkg.tar.xz
Bingo ! Un redémarrage plus tard, tout refonctionne. J’ai trouvé après coup une doc similaire ici http://wiki.archlinux.fr/Install_chroot
January 04 2012
Compilation de RPM et erreur « *** ERROR: No build ID note found »
Si vous avez des erreurs « *** ERROR: No build ID note found » lors de la construction de paquets RPM ( J’utilise ici une Centos 6.2 x64 ) ça vient du script find-debuginfo.sh
+ /usr/bin/install -d /home/build/rpm/BUILDROOT/vmware-vsphere-sdk-4.0.0.161974-2.el6.x86_64/usr/local/vmware-sdk-install
+ /bin/cp -R ./FILES ./Makefile.PL ./apps ./bin ./doc ./etc ./installer ./lib ./man ./resources ./vmware-install.pl ./yes /home/build/rpm/BUILDROOT/vmware-vsphere-sdk-4.0.0.161974-2.el6.x86_64/usr/local/vmware-sdk-install
+ /usr/lib/rpm/find-debuginfo.sh --strict-build-id /home/build/rpm/BUILD/vmware-vsphere-sdk-4.0.0.161974
*** ERROR: No build ID note found in /home/build/rpm/BUILDROOT/vmware-vsphere-sdk-4.0.0.161974-2.el6.x86_64/usr/local/vmware-sdk-install/lib/XML-LibXML-1.63/lib/auto/XML/LibXML/LibXML.so
erreur: Mauvais status de sortie pour /home/build/rpm/tmp/rpm-tmp.3M3FWw (%install)
Mauvais status de sortie pour /home/build/rpm/tmp/rpm-tmp.3M3FWw (%install)
Exécution_de(%prep): /bin/sh -e /home/build/rpm/tmp/rpm-tmp.ilG9fLVous pouvez passer outre en ajoutant la directive
%undefine _missing_build_ids_terminate_build
au début de votre fichier SPEC. Voici un extrait de mon fichier:
%undefine _missing_build_ids_terminate_build Name: vmware-vsphere-sdk Version: 4.0.0.161974 Release: 2%{?dist} Summary: Vmware SDK for Perl
L’erreur précédente devient qu’un simple Warning sans incidence.
+ /usr/bin/install -d /home/build/rpm/BUILDROOT/vmware-vsphere-sdk-4.0.0.161974-2.el6.x86_64/usr/local/vmware-sdk-install + /bin/cp -R ./FILES ./Makefile.PL ./apps ./bin ./doc ./etc ./installer ./lib ./man ./resources ./vmware-install.pl ./yes /home/build/rpm/BUILDROOT/vmware-vsphere-sdk-4.0.0.161974-2.el6.x86_64/usr/local/vmware-sdk-install + /usr/lib/rpm/find-debuginfo.sh /home/build/rpm/BUILD/vmware-vsphere-sdk-4.0.0.161974 *** WARNING: No build ID note found in /home/build/rpm/BUILDROOT/vmware-vsphere-sdk-4.0.0.161974-2.el6.x86_64/usr/local/vmware-sdk-install/lib/XML-LibXML-1.63/lib/auto/XML/LibXML/LibXML.so *** WARNING: No build ID note found in /home/build/rpm/BUILDROOT/vmware-vsphere-sdk-4.0.0.161974-2.el6.x86_64/usr/local/vmware-sdk-install/lib/Compress-Raw-Zlib-2.005/lib/auto/Compress/Raw/Zlib/Zlib.so *** WARNING: No build ID note found in /home/build/rpm/BUILDROOT/vmware-vsphere-sdk-4.0.0.161974-2.el6.x86_64/usr/local/vmware-sdk-install/lib/Data-Dumper-2.121/lib/auto/Data/Dumper/Dumper.so *** WARNING: No build ID note found in /home/build/rpm/BUILDROOT/vmware-vsphere-sdk-4.0.0.161974-2.el6.x86_64/usr/local/vmware-sdk-install/lib/UUID-0.03/lib/auto/UUID/UUID.so *** WARNING: No build ID note found in /home/build/rpm/BUILDROOT/vmware-vsphere-sdk-4.0.0.161974-2.el6.x86_64/usr/local/vmware-sdk-install/lib/bin/libcrypto.so.0.9.8 *** WARNING: No build ID note found in /home/build/rpm/BUILDROOT/vmware-vsphere-sdk-4.0.0.161974-2.el6.x86_64/usr/local/vmware-sdk-install/lib/bin/libssl.so.0.9.8 *** WARNING: No build ID note found in /home/build/rpm/BUILDROOT/vmware-vsphere-sdk-4.0.0.161974-2.el6.x86_64/usr/local/vmware-sdk-install/lib/Class-MethodMaker-2.10/lib/auto/Class/MethodMaker/MethodMaker.so *** WARNING: No build ID note found in /home/build/rpm/BUILDROOT/vmware-vsphere-sdk-4.0.0.161974-2.el6.x86_64/usr/local/vmware-sdk-install/lib/XML-LibXML-Common-0.13/lib/auto/XML/LibXML/Common/Common.so
July 25 2011
[METEO] Fichiers GRIB sous Linux avec ZyGrib
Les fichiers GRIB sont des fichiers contenant des données météo librement téléchargeable (GRIB (GRIdded Binary) is a mathematically concise data format commonly used in meteorology to store historical and forecast weather data. Source wikipedia). Ils sont souvent utilisés pour la navigation. Certains sites web comme Windguru permettent de visualiser ces données en ligne. Mais il peut s’avérer utile de disposer d’un logiciel permettant de télécharger et d’utiliser ces données hors ligne. Il existe ZyGrib disponible pour Linux, Windows et MacOS.
L’installation est simple:
- Pour Archlinux: yaourt -S zygrib zygrib-maps (Avec les dépots AUR activés)
- Pour Ubuntu / Debian: Les paquets sont disponibles ici
Des cartes plus détaillées sont disponibles sur le site de zygrib.
Sélectionnez à l’aide de la souris la zone pour laquelle vous souhaitez télécharger les données météo.
Cliquez ensuite sur l’icône représentant une « terre ». Une boite de dialogue permettant d’affiner les données à télécharger va s’ouvrir.
Réglez les différents paramètres comme vous le souhaitez. Pensez aussi à changer la durée des prévisions, qui peut aller de 1 à 8 jours.
Pour ceux qui le souhaitent, des informations sur les vagues sont aussi disponibles dans le dernier onglet.
Lancez le téléchargement et patientez quelques instants. Vous avez ensuite une magnifique carte des données météo. Vous pouvez afficher les informations précises concernant une zone à l’aide de la souris.
Un clic droit sur une zone de la carte permet d’afficher les prévisions sous forme de tableau, ce qui est très utile.
Le menu « Données » permet d’afficher différentes données sur la carte.
- La couverture nuageuse
- Les précipitations
- Le vent
Comble du raffinement, on peut afficher les données météo de la période sous forme d’animation. Cette animation peut même être exportée sous forme de série d’images. Vous pourrez alors les convertir en video avec ffmpeg.
ffmpeg -r 3 -i test_%03d.jpg -b 2000k -r 25 -vcodec mpeg4 -sameq test.mp4
Ce qui donne ceci: test
Créez des « routes » pour GPS Garmin avec Viking sous Linux
Sous linux, la véritable trousse à outil du GPS c’est l’excellent gpsbabel. Il permet de transférer, transformer, filtrer toutes sortes de données provenant de nos GPS. Par contre, pour préparer un trajet et créer une route ou pour visualiser ses données sur une carte « hors ligne » ce n’est pas le bon outil. C’est là qu’intervient Viking, il permet d’afficher les informations provenant de votre GPS sur des fonds de carte openstreetmap et surtout de préparer vos trajets en planifiant des routes.
Ces 2 logiciels sont fournis avec de nombreuses distribution. L’installation se résume à:
- pour Archlinux: yaourt -S viking gpsbabel
- pour Ubuntu: apt-get install viking gpsbabel
- pour Fedora: yum -y install viking gpsbabel
Viking est très simple d’emploi, son usage essentiel se résume à l’import / export de données GPS et à l’ajout de calques représentant des fonds cartographiques.
Une fois le logiciel lancé, ajoutons un fond de carte avec le menu « Nouveau calque « Map »"
Le logiciel propose différents fonds de cartes, la plupart basés sur les données openstreetmap. Nous choisirons ici le type de carte par défaut et nous demanderons le « téléchargement automatique » des cartes.
Nous avons maintenant une carte à l’écran. Pour la manipuler, on peut utiliser la routette de la souris pour zoomer et les touches CTRL + Flèches pour se déplacer sur la carte. Des outils de recherche de lieux sont aussi disponibles dans le menu « Vue » / « Aller à la position ».
Nous allons maintenant ajouter une couche avec les données GPS. Pour cela allez dans le menu « Nouveau calque « GPS »".
Sélectionnez alors votre marque de GPS (ici Garmin) avec le protocole de communication (ici USB:).
Dans la liste des calques sur la gauche, sélectionnez la couche « traces ». Vous avez alors 2 icônes pour dessiner des traces sur le fond de carte.
Utilisez l‘icone verte ou orange, peu importe, pour commencer votre trace. Donnez un nom à la route que vous souhaitez charger dans votre GPS.
A chaque changement de direction important, cliquez avec le bouton gauche sur la carte pour tracer votre route. Un clic droit efface le dernier point de la trace.
Une fois votre trajet défini, vous pouvez exporter cette trace au format GPX.
Maintenant que notre trace est exportée, nous avons un fichier GPX compatible avec notre GPS. Nous aurions pu l’exporter vers le GPS directement depuis Viking mais le fichier est au format « trace » et non « route », notre GPS ne gérera donc pas le routage ! C’est là que le génialissime gpsbabel est utile. Nous allons appliquer un filtre au fichier GPX qui va transformer la trace en route et l’envoyer directement au GPS.
gpsbabel -w -r -t -i gpx -f test.gpx -x transform,rte=trk \
-x simplify,count=500 -o garmin -F usb:
« count=500″ permet de « simplifier » la route en limitant le nombre de points pour les traces très longues.
Si jamais vous trouviez les cartes d’openstreetmap incomplètes, rien ne vous empêche de participer au projet en les complétant !
November 10 2010
Installer le client Oracle pour PHP sur Centos 5.x
Si vous souhaitez utiliser une base de données depuis PHP sur une Centos 5.x, voilà la procédure à suivre.
On partira du principe que vous avez déjà installé PHP et apache.
Vous devez aussi installer les outils de développement afin de pouvoir compiler PECL:
yum -y groupinstall "development tools"
Sur Centos 5.4 X64, les paquets suivants sont installés:
flex-2.5.4a-41.fc6.x86_64 gcc-4.1.2-48.el5.x86_64 redhat-rpm-config-8.0.45-32.el5.centos.noarch strace-4.5.18-5.el5_5.5.x86_64 rpm-build-4.4.2.3-20.el5_5.1.x86_64 1:make-3.81-3.el5.x86_64 1:pkgconfig-0.21-2.el5.x86_64 gettext-0.14.6-4.el5.x86_64 gettext-0.14.6-4.el5.i386 automake-1.9.6-2.3.el5.noarch gdb-7.0.1-23.el5_5.2.x86_64 bison-2.3-2.1.x86_64 libtool-1.5.22-7.el5_4.x86_64 autoconf-2.59-12.noarch gcc-c++-4.1.2-48.el5.x86_64 binutils-2.17.50.0.6-14.el5.x86_64 ltrace-0.5-13.45svn.el5.x86_64 diffstat-1.41-1.2.3.el5.x86_64 splint-3.1.1-16.el5.x86_64 1:valgrind-3.5.0-1.el5.x86_64 1:valgrind-3.5.0-1.el5.i386 systemtap-1.1-3.el5_5.2.x86_64 subversion-1.4.2-4.el5_3.1.x86_64 subversion-1.4.2-4.el5_3.1.i386 texinfo-4.8-14.el5.x86_64 python-ldap-2.2.0-2.1.x86_64 patchutils-0.2.31-2.2.2.x86_64 byacc-1.9-29.2.2.x86_64 gcc-gfortran-4.1.2-48.el5.x86_64 elfutils-0.137-3.el5.x86_64 rcs-5.7-30.1.x86_64 automake16-1.6.3-8.el5.1.noarch automake17-1.7.9-7.el5.2.noarch automake14-1.4p6-13.el5.1.noarch automake15-1.5-16.el5.2.noarch ctags-5.6-1.1.x86_64 dogtail-0.6.1-3.el5.noarch swig-1.3.29-2.el5.x86_64 dev86-0.16.17-2.2.x86_64 1:doxygen-1.4.7-1.1.x86_64 indent-2.2.9-14.fc6.x86_64 cvs-1.11.22-7.el5.x86_64 pstack-1.2-7.2.2.x86_64 oprofile-0.9.4-15.el5.x86_64 cscope-15.5-15.1.el5_3.1.x86_64
Sur le site d’oracle, télécharger les paquets suivants (en RPM):
- oracle-instantclient11.2-basic
- oracle-instantclient11.2-sqlplus (optionnel)
- oracle-instantclient11.2-devel
Installer les paquets fraîchement téléchargés:
rpm -Uvh oracle-instantclient11.2-basic-11.2.0.2.0.x86_64.rpm oracle-instantclient11.2-devel-11.2.0.2.0.x86_64.rpm oracle-instantclient11.2-sqlplus-11.2.0.2.0.x86_64.rpm
Il est nécessaire d’indiquer au système le chemin des nouvelles librairies:
echo "/usr/lib/oracle/11.2/client64/lib/" > /etc/ld.so.conf.d/oracle_lib.conf ldconfig
Vous pouvez tester votre installation d’oracle en lançant /usr/bin/sqlplus64.
SQL*Plus: Release 11.2.0.2.0 Production on Wed Nov 10 14:41:50 2010 Copyright (c) 1982, 2010, Oracle. All rights reserved. Enter user-name:
Ensuite on va installer OCI8 à l’aide de PECL:
Si vous passez par un proxy HTTP, configurez PECL comme suit:
pear config-set http_proxy http://proxy.xxx:3128
Lancez l’installation proprement dite.
pecl install oci8
L’installation se lance. A la question « Please provide the path to the ORACLE_HOME directory. Use ‘instantclient,/path/to/instant/client/lib’ if you’re compiling with Oracle Instant Client [autodetect] :« , donnez le chemin où est installé le client oracle, ici: instantclient,/usr/lib/oracle/11.2/client64/lib
downloading oci8-1.4.3.tgz ... Starting to download oci8-1.4.3.tgz (153,515 bytes) ............done: 153,515 bytes 10 source files, building running: phpize Configuring for: PHP Api Version: 20041225 Zend Module Api No: 20050922 Zend Extension Api No: 220051025 Please provide the path to the ORACLE_HOME directory. Use 'instantclient,/path/to/instant/client/lib' if you're compiling with Oracle Instant Client [autodetect] : instantclient,/usr/lib/oracle/11.2/client64/lib building in /var/tmp/pear-build-root/oci8-1.4.3 running: /tmp/tmppNXlUK/oci8-1.4.3/configure --with-oci8=instantclient,/usr/lib/oracle/11.2/client64/lib checking for egrep... grep -E checking for a sed that does not truncate output... /bin/sed checking for gcc... gcc checking for C compiler default output file name... a.out checking whether the C compiler works... yes checking whether we are cross compiling... no checking for suffix of executables... checking for suffix of object files... o checking whether we are using the GNU C compiler... yes checking whether gcc accepts -g... yes checking for gcc option to accept ANSI C... none needed checking whether gcc and cc understand -c and -o together... yes ... Build complete. (It is safe to ignore warnings about tempnam and tmpnam). running: make INSTALL_ROOT="/var/tmp/pear-build-root/install-oci8-1.4.3" install Installing shared extensions: /var/tmp/pear-build-root/install-oci8-1.4.3/usr/lib64/php/modules/ running: find "/var/tmp/pear-build-root/install-oci8-1.4.3" -ls 4149348 4 drwxr-xr-x 3 root root 4096 nov 10 13:38 /var/tmp/pear-build-root/install-oci8-1.4.3 4149377 4 drwxr-xr-x 3 root root 4096 nov 10 13:38 /var/tmp/pear-build-root/install-oci8-1.4.3/usr 4149378 4 drwxr-xr-x 3 root root 4096 nov 10 13:38 /var/tmp/pear-build-root/install-oci8-1.4.3/usr/lib64 4149379 4 drwxr-xr-x 3 root root 4096 nov 10 13:38 /var/tmp/pear-build-root/install-oci8-1.4.3/usr/lib64/php 4149380 4 drwxr-xr-x 2 root root 4096 nov 10 13:38 /var/tmp/pear-build-root/install-oci8-1.4.3/usr/lib64/php/modules 4149376 476 -rwxr-xr-x 1 root root 481338 nov 10 13:38 /var/tmp/pear-build-root/install-oci8-1.4.3/usr/lib64/php/modules/oci8.so Build process completed successfully Installing '/var/tmp/pear-build-root/install-oci8-1.4.3//usr/lib64/php/modules/oci8.so' install ok: channel://pecl.php.net/oci8-1.4.3 You should add "extension=oci8.so" to php.ini
Comme indiqué, il faut maintenant configurer php pour utiliser le module OCI8.
echo "extension=oci8.so" > /etc/php.d/oci8.ini
redémarrez apache pour prendre en compte les modifications ( /etc/init.d/httpd restart ) . Vous pouvez vérifier la prise en compte d’OCI en utilisant la fonction PHP phpinfo();
Vous pouvez maintenant profiter d’ORACLE au travers du couple PHP / APACHE.
La doc officielle d’installation d’OCI8 est ici
July 10 2010
Calibrer son écran sous Linux (Ubuntu 10.4)
Afin de traiter au mieux ses photos en RAW, il vaut mieux disposer d’un moniteur calibré. Pour cela il est nécessaire d’utiliser une sonde: c’est un petit périphérique USB ( On en trouve autour de 80€ ) qui vient se placer sur l’écran et qui va analyser le rendu des couleurs afin de déterminer le profil colorimétrique correspondant à votre écran. Ce profil, un fichier ICC, sera utilisé par le système pour avoir un rendu de couleur très proche de la réalité et ainsi permettre de traiter au mieux ses photos. Autant avant avec des photos JPG en 8bits l’intérêt était très limité, autant maintenant avec des fichiers RAW de 14 bits, la calibration prend tout son sens.
Sous linux, on commence à voir apparaitre des outils pour calibrer les écrans. Parmi ces logiciels, 3 vont nous intéresser ici:
- Argyll: Logiciel permettant de gérer un grand nombre de sondes colorimétriques. Il est indispensable au calibrage de l’écran. Son utilisation est par contre peu aisée pour les novices.
- dispcalGUI:Logiciel permettant de gérer la calibration de son écran. Il utilise Argyll pour piloter les sondes colorimétriques.
- Gnome Color Manager: Permet de charger un profil colorimétrique dans gnome.
Première étape: Installer Argyll
Cette suite logicielle est fournie de base dans Ubuntu Lucid, il n’y a donc aucun soucis d’installation.
sudo apt-get install argyll
Suivant le modèle de votre sonde, il faudra ou non importer le firmware du fabricant. Pour cela, reportez vous à la documentation officielle d’argyll.
Deuxième étape: installer dispcalGUI
Ce petit logiciel n’est malheureusement pas disponible dans les dépots officiels. Par contre, l’auteur nous fourni un système d’installation fort simple basé sur autopackage.
Il suffit de se rendre à cette addresse et de télécharger le fichier .package (Linux Autopackage)
ensuite dans une console rendez ce fichier exécutable:
chmod +x dispcalGUI-0.4.9.2.package
puis lancez l’installation:
./dispcalGUI-0.4.9.2.package
Suivez les étapes.
Le mot de passe peut vous être demandé plusieurs fois au cours de l’installation afin de copier les fichiers dans les répertoires système.
Les pré-requis sont vérifiés puis l’installation est lancée
Ca y est, dispcalGUI est installé sur votre système. Il peut être lancé depuis la console avec un « dispcalGUI » ou depuis le menu « Graphisme » de gnome.
Troisième étape: Installer Gnome Color Manager
La paquet fait partie des dépôts de base dans Ubuntu Lucid, il n’y a donc aucun soucis d’installation.
sudo apt-get install gnome-color-manager
Maintenant que toute notre chaine de calibrage est prête, lançons nous !
Le calibrage
- Branchez votre sonde (J’utilise une Spyder 3 Express)
- Lancez dispcalGUI
- Allez dans le menu « options » puis cliquez sur « Détecter les périphériques d’affichage est les instruments »
Vous devez alors voir le nom de votre sonde dans la fenêtre principale. Ici la Spyder 3.
Ne connaissant pas encore la signification de toutes les options du logiciel, j’ai préféré laisser les options par défaut. La seule modification apportée concerne la qualité du profil que j’ai poussé au maximum.
- Cliquez alors sur « calibrer et caractériser ». Une fenêtre s’ouvre et vous invite à placer la sonde sur la croix. Faites le et cliquez sur « lancer la mesure ».
- Dans le menu qui s’ouvre sur le côté, choisissez « Calibrer » en appuyant sur 7. Pour améliorer la qualité vous pouvez cocher « Arrière-plan noir » mais ce n’est pas très pratique, les derniers choix avant la calibration se faisant en aveugle.
- Vous pouvez aller vous préparer un café, l’opération dure de longues minutes…
Vous disposez maintenant d’un fichier ICC prêt à être utilisé dans votre logiciel de traitement de photos. Vous pouvez aussi l’utiliser dans « gnome color manager » afin qu’il soit chargé au lancement de votre session. Pour cela allez dans les préférences de gnome est lancez « Gestion des couleurs ».
Si vous trouvez votre écran légèrement « jaune », ne vous inquiétez pas c’est qu’il est calibré correctement !
J’utilise BibblePro 5 ( Oui, je sais ce n’est pas Opensource, mais… ) paramétré comme suit:
- Profil de l’écran: Le profil fraichement créé par la sonde
- Epreuvage à l’écran: Encore le profil fraichement créé par la sonde
- Gestion des couleurs: Profil ICC
- Espace de travail: Pro Photo RGB
Pour ceux qui n’ont pas de sonde et qui ont comme moi un MacBook Unibody (5.1) voilà le fichier de calibration de l’écran.
Maybe Soup is currently being updated? I'll try again automatically in a few seconds...




























