Catégories
Image Open-source Systeme

Convertir JPG vers PDF en ligne de commande

Sam2p (distribué par son auteur sous licence GPLv2) est un petit utilitaire très simple et pratique si vous avez à convertir des images d’un format vers un autre. Il est disponible sous GNU/Linux et Windows.

Liste des formats d’entré supportés:
PNM, PBM, PGM, PPM, XPM, GIF, LBM, TGA, PCX, JPEG, TIFF, PNG, PS, EPS, PDF

Liste des formats de sortie supportés:
XWD, BMP, PNG, TIFF6, JPEG, PNM, GIF89a, XPM, PS, EPS, PDF

Un fois le logiciel installé avec la commande suivante (exemple d’installation sous Ubuntu):

sudo apt-get install sam2p

la commande pour convertir le fichier image.jpg vers image.pdf est:

sam2p image.jpg image.pdf

Il est bien sûr possible de spécifier des options à cette ligne de commande notamment pour ajuster le taux de compression (-c), changer la résolution de l’image (-m) ou bien appliquer une rotation ou un redimensionnement (-e).

L’utilisation de la ligne de commande permet de pouvoir facilement inclure sam2p dans un script afin de faire un traitement par lot des images.

Catégories
Open-source Systeme Web

Installation de Chromium, la source de Google Chrome

Si il y a bien un sujet qui fait buzz dans le petit monde des navigateurs Internet, c’est bien Google Chrome. En attendant les versions pour GNU/Linux et Mac OS X qui ne devraient pas tarder, seul une version bêta pour Windows est disponible. Ce navigateur propriétaire se base sur un cœur open-source nommé Chromium (utilisant lui même le moteur Webkit) qui n’est ni plus ni moins qu’une version libre (licence BSD) de Google Chrome sans le verni de Google (interfaces avec les services types Gmail, Calendar, Reader…). Pour notre plus grand bonheur, Chromium est disponible sous GNU/Linux (et sous Windows et sous Mac OS X…).

Téléchargement de la version précompilée

On commence par récupérer le numéro de la dernière version alpha (nightly version 16851 au moment de l’écriture de ce billet) disponible en saisissant l’URL suivante dans notre navigateur Web:

http://build.chromium.org/buildbot/snapshots/chromium-rel-linux/LATEST
16851

Ensuite, dans un terminal, on tape les commandes suivantes:

wget http://build.chromium.org/buildbot/snapshots/chromium-rel-linux/16851/chrome-linux.zip
unzip chrome-linux.zip

On se retrouve avec un répertoire nommé chrome-linux.

Lancement de l’application

On doit lancer les commandes suivantes:

cd chrome-linux
./chrome

Si tout se passe bien, le navigateur devrait s’afficher.

Utilisateur de Firefox, j’ai été agréablement surpris par la rapidité de chargement du navigateur (moins de 2 secondes). A bien sûr tempérer par le fait que les fonctions de cette version alpha de Chromium sont assez réduites. Il n’y a, par exemple, pas de gestion des plugins.

Après quelques minutes d’utilisation, l’affichage des pages ne pose aucun problème et s’avère très rapide (environ 25% plus rapide que Firefox 3.0.10 sur des pages lourdes):

Mais c’est au niveau de la compatibilité avec les normes Web est vraiment surprenant, car même pour une version alpha, il arrive à obtenir 100% au test Acid 3 (alors que Firefox 3.0.10 plafonne à 71%). Seul une petite erreur référencé (LINKTEST FAILED) gâche le tableau.


Firefox 3.0.10 vs Chronium Alpha 16851

Conclusion

Ce navigateur me semble très prometteur. La qualité et la rapidité d’affichage sont excellentes, le moteur Webkit y est surement pour beaucoup (c’est également le moteur utilisé par Safari). Reste à voir comment va évoluer le projet. Espérons que les développeurs gardent une politique de navigateur libre et léger. Alors Chromium pourra se positionner comme une alternative au leader qu’est Firefox dans les navigateurs multi-plateformes.

Catégories
Open-source Systeme

Moblin un nouveau Linux pour les netbooks

Le 1er avril 2009, Intel a cédé à la Linux Fundation le développement de son système GNU/inux dédié aux terminaux mobiles (netbooks, MIDs: Mobile Internet devices). Nommé Moblin (contraction de mobile et Linux), ce système d’exploitation vise à exploiter le meilleur des performances des machines construites autour du processeur Intel® Atom™. Il avait fait parler de lui il y a maintenant quelques mois (le projet initial date de 2007) car une des caractérisques est un démarrage (boot) très rapide (inférieur à 5 secondes).

Actuellement disponible en version 2.0 bêta (image ISO du LiveCD téléchargeable ici), le projet propose également un environnement de développement permettant de créer des images ISO personnalisables à vos besoins (Moblin Image Creator) et bien sûr un SDK complet pour développer vos applications. Pour vous donner une idée des possibilités de l’interface graphique de Moblin, vous pouvez regarder cette vidéo.

La principale différence de Moblin par rapport à un projet comme Android est la cible des terminaux. En effet, alors qu’Android se focalise, pour l’instant sur les téléphons portables, Moblin s’attaque au marché des netbooks et MIDS (que l’on peut retrouver par exemple dans les voitures pour gérer les fonctions multimédia).

Le projet lance aujourd’hui un appel à la communauté pour découvrir, tester et développer Moblin. Un site spécialement dédié à été créé à cet effet: Moblinzone.

Intel

Après inscription, un espace privé vous donnera accès à un nombre important de ressources sur le projet et vous permettra entre autres de:

  • accéder aux vidéos, blogs et articles.
  • telecharger les applications disponibles sur Moblin.
  • profiter en avant première des dernières mises au point de Moblin.
  • partager vos compétences et bénéficier de celles des autres membres de la communauté Moblin.

 Ce projet prometteur est donc à suivre de très prêt aux vues de l’explosion des ventes des netbooks que l’on a connue en 2008 !

Note: ceci est un article sponsorisé, j’ai donc été rémunéré pour la rédaction de ce billet.

Catégories
Gstreamer Open-source Web

Mes marques ta-pages de la semaine

Main Page – PiTiViWiKi

Un éditeur de vidéo libre basé sur Gstreamer

SquidGuard : filtre d’URL et listes à jour (le plus dur) – Le blog de Michauko

Squid et Squidguard pour le filtrage d’URL via un proxy HTTP

Flavour Extended: The Ultimate Icon Set For Web Designers | Freebies | Smashing Magazine

420 icônes pour votre blog

Apprendre à faire une application iphone en 10 leçons

Tutos vidéo de l’université de Standford sur comment développer une application sur iPhone.

Migrer son site/blog WordPress chez un nouvel hébergeur | Jonasluthi.com | Blog officiel de Jonas Luthi

Comment migrer son blog WordPress d’un hébergeur à un autre.

100 Amazing Free WordPress Themes for 2009 | Developer’s Toolbox | Smashing Magazine

Idée de design de thème WordPress

Sortie de Cairo-Dock 2.0, les nouveautés – Génération Linux

Un dock à la Mac OS X sous GNU/Linux…

Catégories
Open-source Reseau

Tunnel HTTP pour faire du SSH depuis le bureau

Vous êtes coincé à votre bureau, derrière un beau Firewall qui bloque, mis à part le HTTP, tous les autres protocoles. Au même moment, le site Web hébergé sur votre serveur perso plante… Dans ce cas, il faut attendre le soir, rentrer chez vous pour enfin pouvoir se connecter en SSH sur votre serveur et résoudre le problème.

Il existe cependant une astuce qui moyennant un brin de préparation va vous permettre de faire passer le SSH à travers ce vilain Firewall…

Principe

La théorie est la suivante: nous allons créer un tunnel HTTP entre le PC du bureau et le PC de la maison. C’est possible car le tunnel est basé sur un protocole autorisé par le Firewall de votre entreprise (HTTP dans notre cas mais vous pouvez utiliser n’importe quel protocole TCP). Ensuite, il faudra rediriger sur votre PC de bureau le protocole SSH vers le tunnel HTTP. Une fois que les paquets SSH sont récupérés sur le PC maison, il n’a qu’a les envoyer vers votre serveur.

   

Préparation de la configuration maison

On commence par installer le logiciel HTTPtunnel sur notre PC maison (exemple d’installation sous Ubuntu):

sudo apt-get install httptunnel

Ensuite on lance la commande suivante:

sudo hts –forward-port A.B.C.D:22 80

Cette commande va écouter sur le port TCP/80 (comme c’est un port < 1024 on doit lancer cette commande en root, d’ou l’utilisation de sudo) et rediriger le trafic vers le serveur (d’adresse ip A.B.C.D dans mon exemple) et sur le port SSH (TCP/22).

Ensuite il faut penser à configurer votre *box pour:

  • autoriser les flux HTTP (TCP/80) entrant à destination de l’adresse publique de la *box votre maison (règle de Firewall)
  • rediriger les flux HTTP (TCP/80) à destination de l’adresse publique de la *box votre maison vers l’adresse privé de votre PC maison (règle de NAT/PAT)

Configuration du PC bureau

Si vous avez la chance de travailler sur un OS de type GNU/Linux à votre bureau, la prcédure est alors relative simple.

On commence par installer HTTPtunnel sur notre PC bureau (exemple d’installation sous Ubuntu):

sudo apt-get install httptunnel

Ensuite on lance la commande suivante:

htc –forward-port 2222 E.F.G.H:80

Cette commande va écouter sur le port TCP/2222 (comme c’est un port >
1024, il n’est pas nécessaire de lancer cette commande en root)
et rediriger le trafic vers le PC maison (d’adresse ip E.F.G.H dans mon
exemple) et sur le port HTTP (TCP/80).

Si votre entreprise oblige les flux Web à transiter par un proxy HTTP (d’adresse S.Q.U.I avec une authentification USER/PASSWORD), il faudra ajouter les paramètres suivants à la ligne de commande:

htc -P S.Q.U.I –proxy-authorization USER:PASSWORD –forward-port 2222 E.F.G.H:80

Dans le cas ou votre PC de bureau est sous Windows (snif), il va falloir passer par une configuration du client Putty par exemple en suivant cette procédure.

Lancement du client SSH

Il suffit de lancer la commande suivante à partir de votre PC de bureau:

ssh localhost -p 2222

Vous serez alors connecté sur votre serveur ! 🙂

Catégories
Blog Nagios Open-source

Et si on parlait supervision des blogs ?

Vous connaissez sans aucun doute les blogs Presse-Citron, Al-Kanz, Nowwhere else ou Le journal du Geek ? Ces derniers ont la caractéristique de faire, en partie, vivre leurs auteurs. Et oui le Web 2.0 entre dans la phase de « professionnalisation ». Ces blogs deviennent donc des points sensibles dont l’indisponibilité ou dis fonctionnement peut entrainer une image négative ainsi qu’une baisse des revenus (pas vrai Korben;)). Si l’on parle souvent de la qualité intrinsèque des offres des hébergements, on parle moins de la supervision des serveurs et des services qui la compose.

C’est quoi la supervision ?

C’est une matière à part entière dans l’informatique, elle permet d’anticiper et d’alerter un administrateur (le blogueur ou une personne mandatée) d’éventuel problèmes sur ses site.

Dans le cas précis d’un blog, on peut citer les fonctions de supervision suivantes:

  • le serveur est allumé et répond au niveau IP (on arrive bien à le pinguer…)
  • le serveur Web est lancé et répond bien aux requêtes dans un temps imparti
  • la base de donnée MySQL est lancée et répond bien aux requêtes
  • la charge CPU du serveur n’atteint pas un seuil critique
  • la mémoire libre du serveur ne descend pas sous un seuil critique
  • l’espace disque libre de descend pas en dessus d’un seuil critique
  • la charge réseau ne dépasse pas un seuil critique

L’archivage de ces informations, la présentation sous forme de rapports graphiques et l’expédition d’alertes (par mail, SMS, Twitter…) font également partie de cette supervision.

La supervision permet également d’anticiper les problèmes de dimensionnement des serveurs hébergeant les blogs. En effet, une trop faible fréquence de CPU ou une mémoire insuffisante pourront facilement être détectées. A l’inverse, on pourra facilement voir si un serveur est surdimensionné par rapport au besoin (et donc optimiser ses coûts d’hébergement).

Quels sont les solutions actuelles ?

Il est vrai qu’actuellement l’offre de services en ligne pour la supervision des blogs personnels (qu’ils soient professionnel ou non) n’est pas très riche. Certains services voient le jour (surtout de l’autre coté de la manche ou le nombre de blogueurs pro est plus important).

On peut citer par exemple Hyperic, Server Density ou Site24x7Server Density est le dernier que j’ai découvert, il permet un supervision simple de son serveur (gratuit pour 1 serveur puis compter $15 par serveur par mois si vous voulez superviser plusieurs serveurs à partir du même compte).

Une autre solution est de s’installer soit même un serveur de supervision open-source. Des logiciels comme Nagios sont maintenant intégré dans des distribution GNU/Linux de type live-cd (FAN par exemple). Je ne vous cache pas que ces outils demandent quand même une bonne connaissance système et réseau. Il faudra que le serveur  soit hébergé sur une machine dédié sur un réseau différent des serveurs à superviser (par exemple une machine à votre domicile allumée en permanence).

Conclusion

Je pense que nous sommes seulement au début de la prise en compte de cette problématique de supervision par les blogueurs. Les offres de service en ligne vont surement apparaître dans les prochains moins pour répondre à cette demande et je ne serais pas surpris qu’un mastodonte comme gOOgle propose une solution.

Et vous, vous en êtes ou avec la supervision de votre site/blog ?

Catégories
Nagios Open-source

Nagios et la notification Twitter

Mise à jour:
Une nouvelle version de ce billet est disponible ici

Twitter est un formidable outil de veille pour les geeks que nous sommes. Nous allons dans ce billet voir comment configurer Nagios (l’outil de supervision open-source) pour envoyer des alertes sur un compte Twitter. Il annule et remplace l’ancien billet que j’avais écris sur le sujet.

Avant de commencer

Je vous conseille fortement de créer un compte Twitter dédié à ce besoin. C’est sur ce dernier que les alertes seront envoyé. Il suffira ensuite aux administateurs de suivre (follow) ce compte Twitter pour être informé au plus vite des anomalies survenues sur le réseau.

Pour créer notre compte Twitter special Nagios, on va à l’adresse suivante:

Il faut bien retenir votre « username » (nagiosnicolargo dans mon cas) et « password ».

Il faut ensuite se rendre dans les « Settings » et cliquer sur le bouton « Protect my updates » pour forcer l’approbation des utilisateurs qui vont pouvoir suivre ce compte Twitter. Quand un des administrateurs fera une demande pour suivre ce compte Twitter, il faudra l’approuver:

Configuration du serveur Nagios

Maintenant que le compte Twitter est opérationnel, il faut configurer le serveur Nagios pour qu’il puisse y envoyer ces alertes. Pour envoyer les messages sur le compte Twitter nous allons utiliser la commande Curl avec la syntaxe suivante:

curl –connect-timeout 30 –max-time 60 -u nagiosnicolargo:monpw -d status= »Petit test depuis de Twist depuis Curl » http://twitter.com/statuses/update.xml


Si Curl n’est pas présent sur votre système, il faut l’installer (exemple pour un système Ubuntu):

sudo apt-get install curl


Passons maintenant aux fichiers de configuration de Nagios. Je pars sur le principe que vous avez un serveur Nagios en état de marche (en clair que vous avez suivi à la lettre les tutos PART 1 – Installation de Linux et des pré-requis système et PART 2 – Installation et configuration de Nagios 3). On commence par ajouter la commande twitit qui va permettre d’envoyer un message à notre compte Twitter via Curl:

# vi /usr/local/nagios/etc/objects/commands.cfg
define command{
command_name    notify-host-by-twitter
command_line    /usr/bin/curl –connect-timeout 30 –max-time 60 -u nagiosnicolargo:monpw -d status= »$HOSTNAME$ is $HOSTSTATE$ » http://twitter.com/statuses/update.xml
}
define command{
command_name    notify-service-by-twitter
command_line    /usr/bin/curl –connect-timeout 30 –max-time 60 -u nagiosnicolargo:monpw -d status= »$SERVICEDESC$@$HOSTNAME$ is $SERVICESTATE$ ** $SERVICEOUTPUT$ » http://twitter.com/statuses/update.xml
}


Ensuite on défini le contact (ou le groupe à vous de voir):

# vi /usr/local/nagios/etc/objects/templates.cfg
define contact{
name  nicolargoadmin
alias Admin Nicolargo
service_notification_period     24×7                   
host_notification_period        24×7                   
service_notification_options    w,u,c,r,f,s            
host_notification_options       d,u,r,f,s           
service_notification_commands   notify-service-by-twitter
host_notification_commands      notify-host-by-twitter
}

Puis enfin on associe le contact avec le service à surveiller (par exemple que mon serveur Web tourne bien…):

define host{
use                     linux-host
host_name               iwebwebserveur
alias                   Serveur WEB iWeb
address                 blog.nicolargo.com
parents                 monrouteur
hostgroups              prj-perso
contacts                nicolargoadmin
}
define service{
use                     generic-service
host_name               iwebwebserveur
service_description     HTTP
check_command           check_http
contacts                nicolargoadmin
}


On teste…

Il ne reste plus qu’a tester vos fichiers de configuration:

sudo /usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg

et à relancer Nagios:

sudo service nagios restart

A chaque notification, un nouveau message devrait apparaître dans votre compte Twitter dédié 😉

Catégories
Open-source Systeme

Linux arrive (enfin) chez Dell

Après une longue attente de la part de la communauté libre, Dell, un des leaders mondiaux de la vente de PC en ligne, propose un PC portable livré en standard avec une distribution GNU/Linux Ubuntu 8.04 (le mini PC Inspiron Mini 10v au prix de 249 Euros). Bien que Dell annonce sur son site l’ouverture des ces ordinateurs au monde GNU/Linux, seulement deux mini PC sont disponibles sur le site Français (le nouveau Mini 10v et le Mini 9).

En espérant que cette initiative ne soit pas un simple buzz marketing et que cette offre fasse boule de neige chez Dell et d’autres revendeurs…
 

Catégories
Web

Mes marques ta-pages de la semaine

Contrer une attaque DDOS de type SYN flood sous Linux – Tux-planet

Victime d’une attaque DDOS sur votre serveur Linux, voici quelques actions à faire…

Custom Fields Hacks For WordPress

Quelques hack intéressants pour WordPress

Linux Manua: Top 6 des solutions P2P certifiées Hadopi Proof

Solutions anti hadopi sous Linux

La "résistance" s’organise pour l’après-Hadopi

Hadopi est voté… comment faire pour le contourner 😉

Catégories
Open-source Systeme

Upgrade d’un Ubuntu serveur

Petite note pour petite tête… Pour upgrader à distance (via SSH) un Ubuntu server d’une version X à une version Y (par exemple d’une 8.04 à une 9.04), il suffit d’installer le package suivant:

sudo apt-get install update-manager-core

La configuration du logiciel se fait dans le fichier /etc/update-manager/release-upgrades. Personellement, j’utilise l’option:

Prompt=normal

Puis on lance la commande:

sudo do-release-upgrade

Et voili…