Windows Phone 7.8

Voilà, la mise à jour tant attendue vers Windows Phone 7.8 est arrivée aujourd'hui (Swisscom). Mon Nokia Lumia 800 a reçu une petite cure de jouvence !

Mots-clés: Windows Phone

Ajouter un masque sur des images en masse

La ligne de commande ci-dessous permet de superposer toutes les images contenues dans le dossier « src » avec celles du dossier « overlays ». Le nom du fichier final est la composition du nom de chaque fichier.

for src in src/*.png;do type=`basename $src | sed 's/\(.*\)\..*/\1/'`;for i in overlays/*.png;do s=`basename $i | sed 's/\(.*\)\..*/\1/'`;z=`printf "%s_%s.png" $type $s`;convert $src $i -gravity southeast -composite -format png -quality 90 $z;done;done
Mots-clés: linux, image

Démarrer Ubuntu depuis le réseau

L’article d’aujourd’hui présente une solution facile pour pouvoir démarrer un live Ubuntu depuis le réseau . Autrement dit, nul besoin d’avoir un disque dur pour utiliser cette méthode, à chaque démarrage le PC est dans un état neuf.
Les technologies utilisées sont:
- TFTP et PXE pour le démarrage initial
- NFS pour mettre à disposition l’image du Live CD

Pour ce faire, nous utiliserons d’une part un client capable de faire du boot réseau en PXE, et d’autre part un serveur sous Ubuntu sur lequel nous installerons les services nécessaires.

Toutes les manipulations ci-dessous sont réalisées sur un Ubuntu 10.4 LTS server. Le live CD utilisé sera celui d’Ubuntu 10.10 Desktop
Installation du service TFTP

Tout d’abord, nous allons installer les paquets néccessaires:

apt-get install tftpd-hpa syslinux

Pour configuer le service TFTP en éditant le fichier suivant:

# /etc/default/tftpd-hpa
TFTP_USERNAME="tftp"
TFTP_DIRECTORY="/srv/tftp"
TFTP_ADDRESS="192.168.1.10:69"
TFTP_OPTIONS="--secure"
mkdir /srv/tftp
mkdir /srv/tftp/casper
mkdir /srv/tftp/pxelinux.cfg

Copions maintenant les fichiers du package syslinux qui permettrons aux clients de démarrer (le CD Ubuntu 10.10 Desktop est monté sur /cdrom)

cp /usr/lib/syslinux/* /srv/tftp/
cp /cdrom/casper/initrd.lz /srv/tftp/casper
cp /cdrom/casper/vmlinuz /srv/tftp/casper

Configurons maintenant le menu de démarrage:

#/srv/tftp/pxelinux.cfg/default
default menu.c32
prompt 0
LABEL ^Boot Live Ubuntu
kernel casper/vmlinuz
append root=/dev/nfs boot=casper netboot=nfs nfsroot=192.168.1.10:/srv/nfs/ubuntu initrd=casper/initrd.lz quiet splash

Puis quelques finitions:

chown –R tftp /srv/tftp/
service tftpd-hpa restart
Mots-clés: linux, netboot

Renommer ses photos

La petite astuce du jour, comment faire pour renommer en masse ses photos. En effet, si vous utilisez plusieurs appareils photos, il y aura un sacré mélange de noms différents… pas pratique pour créer une galerie photo par exemple.
La ligne de commande suivante (sous Linux, bien entendu) permet de faire de petits miracles:

for i in *.jpg; do let j+=1 ; printf -v name "%s%03d%s" "Photo" $j .jpg;mv $i $name ; done

Et tant que vous êtes dans la même session de terminal, la variable d’incrémentation reste, vous pouvez donc faire cela sur plusieurs dossiers.

Et ensuite pour les redimensionner vite fait:

mogrify -resize 640 *.jpg
Mots-clés: linux, image

Firewall open source

Le firewall, un élément indispensable à la protection de son réseau informatique. Je vous présente ici une solution relativement bon marché pour mettre en place un firewall sur votre réseau. Toute la partie logiciel est open source et donc gratuite. Le seul coup est celui du matériel. Vous pouvez bien entendu recycler un vieux PC, mais j’utilise ici un petit PC embarqué qui présente notamment l’avantage de consommer peu d’énergie en comparaison d’un PC traditionnel. Et beaucoup moins de place également.

Le matériel utilisé est un PC embarqué de chez PC Engines. Plus précisément le modèle ALIX.2D13 comprenant 3 ports LAN, 2 USB et 1 serial. Compter pour le tout (la carte, le boîtier, une carte CompactFlash et l’alimentation) à peu près 150.00 CHF (environ 100 €). Il ne possède pas de disque dur (remplacé par une carte CompactFlash) ni de ventilateur, ce qui réduit considérablement sa consommation.

Pour la partie logiciel, j’utilise l’excellent Pfsense, un firewall open source basé sur une distribution FreeBSD. ‘installation est très facile. Il suffit de se rendre sur le site de Pfsense, de télécharger l’image « Embedded » et de l’écrire sur la carte CF au moyen d’un utilitaire adéquat, par exemple physdiskwrite. La version « Embedded » est prévu pour des PC embarqués et utilise la carte CF en lecture seule afin de ne pas l’endommager trop vite (cycles écriture limités). Les plugins additionnels sont également désactivé dans cette version, sinon les fonctionnalités sont identiques aux autres versions.

Une fois la carte CF insérée dans notre PC, connectez un câble null-modem entre votre PC et votre firewall et démarrez-le. La configuration initial se fait via ce mode (HyperTerminal sous Windows fera très bien l’affaire pour cela). La seule chose qui doit y être configuré est l’adresse IP de votre firewall. Tout le reste se fait par la suite via l’interface web de Pfsense.
Voilà, votre firewall flambant neuf est prêt. Vous pouvez maintenant le configurer pour répondre à vos besoins particulier. Vous disposez diverses fonctionnalités intéressantes telles que (et bien plus encore):

Filtrage par IP ou port de source/destination
Répartition de charge ou failover avec plusieurs lignes Internet
Gestion des VLANs
Portail captif (par exemple pour fournir un accès WiFi payant)
NAT
VPN (OpenVPN, IPSEC et PPTP)
DynamicDNS pour ceux qui n’ont pas d’adresse IP fixe mais qui veulent monter un serveur
Différents outils de debug et d’informations sur le trafic

Voilà, ma petite présentation est terminée. Si vous avez des questions, des remarques ou besoin d’aide pour mettre ceci en place, utilisez les commentaires !

,

Bacula

Pour ce qui est de la sauvegarde, j’utilise depuis un certain temps déjà le logiciel Bacula. Bacula s’articule autour de trois programmes indépendants; le director qui permet d’administrer les sauvegardes (jobs, schedule, tapes, …), le filedeamon qui permet de lire les données à sauvegarder et le storagedaemon qui se charge d’écrire les sauvegarde. Avec cette structure on peut facilement sauvegarder les données d’un serveur qui n’a pas de lecteur de bande sur un autre. C’est très flexible et très pratique à l’utilisation. Un excellent produit, qui jouit par ailleurs d’un support professionnel (et payant).

Mots-clés: linux, opensource

Messagerie

Vous cherchez un groupware open source pour remplacer Microsoft Exchange ? En voici un que j’ai mis en place dans mon entreprise afin de remplacer ce qui existatit jusqu’alors. Il s’appelle SOGo (pour Scalable OpenGroupware.org) et est maintenu par une entreprise québécoise.

En vrac, voici quelques unes des fonctionnalités offertes:

mail (via Postfix ou Sendmail)
calendriers (partagés)
carnet d’adresse (partagés égallement)
interface web
support de Thunderbird+Lightning pour un client lourd (mail+calendrier+carnet d’adresse)
support de LDAP pour les utilisateurs

Je le trouve de plus relativement facile à prendre en main et à installer. Son grand avantage comparé à d’autres solutions comme Open-Xchange est que le client est également open source (Thunderbird), il est donc tout à fait possible de s’affranchir des produits Microsoft et donc d’offrir la compatibilité pour les clients Linux.

Il existe également un plugin pour Funambol qui permet la syncronisation des périphériques portables tels que PDA et téléphones mobile.

Il présente par contre le léger incovénient d’être un produit jeune (première version stable sortie en 2009) et présente quelques petits bugs de jeunesse. Par contre la communauté (et plus particulièrement l’entreprise que maintient le projet) est très réactive et d’une grande aide.

Mots-clés: linux, opensource

Qui utilise tant d’espace disque ?

« Qui utilise tant d’espace disque ? » Voilà une question que je me suis souvent posé. Voici comment y répondre facilement (pour les utilisateurs de Linux):

du -s /home/* | sort -nr | cut -f 2- | while read a; do du -sh $a; done

Cette commande liste par ordre décroissant la taille de chaque dossier de /home.

Mots-clés: linux

Déploiement de PC (ghost)

Cela faisait un petit bout de temps que je cherchais une solution me permettant de créer et déployer des images de PC sur mon réseau d’entreprise qui remplissait mes besoins. A savoir, une solution:
- open source
- facile à utiliser (si possible également facile à installer)
- intuitive
- rapide

Je suis finalement tombé sur le projet « FOG – a free ghosting solution- » . Un joli projet permettant d’installer en quelques clics une solution de déploiement d’images qui m’offrait des fonctionnalités commes le boot réseau (via TFTP), un GUI agréable et complet (web-based) et le support de toutes les machines que j’ai pu tester sur mon réseau. Il offre encore bien d’autres choses que je ne citerais pas ici car je n’en ai pas l’utilité actuellement.
Un seul petit « inconvénient» : il faut une machine dédiée pour FOG.

En résumé, vraiment un beau produit open source à même de replacer des solutions comme Norton Ghost.

Mots-clés: linux, opensource, déploiement

Panorama 360°

Voilà, j’ai cherché pas mal de temps sur le net un simple truc pour afficher une image 360° sans jamais rien trouver de convainquant (tout ce qui fonctionnait bien était en fait des applets Java et je n’en voulais pas). Donc j’ai vite fais une page moi-même (vite, ca veut dire que je n’ai pas pris le temps de valider mon html ou mon CSS, mais normalement ca devrais passer).
Voilà, pour ceux que ca intéresse…

&lt;-- Auteur: Blaise Hurtlin Date: 05/03/2005 Site web: <a href="http://www.hurtlin.net
Vous">http://www.hurtlin.net
Vous</a> pouvez réutiliser sans problème ce script en laissant ce commentaire.
(c) copyright Blaise Hurtlin --&gt;  
<script type="text/javascript"> //Settings
var quickness=200; //ms
var dexPX=2; //numbers of pixels to move at each iteration //
var autoMov=false;
var dec=0; function startMoveLeft() {
autoMov=true;
objBut=FindID('leftimg');
objBut.src="left_on.gif";
moveLeft();
} function startMoveRight() {
autoMov=true;
objBut=FindID('rightimg');
objBut.src="right_on.gif";
moveRight();
} function stopMove() {
autoMov=false;
document.getElementById("leftimg").src="left.gif";
document.getElementById("rightimg").src="right.gif";
} function moveLeft() {
dec+=dexPX;
var objImg=FindID('pic');
objImg.style.backgroundPosition=dec+'px 0px';
if(autoMov)
{
setTimeout("moveLeft()",quickness);
}
} function moveRight() {
dec-=dexPX;
var objImg=FindID('pic');
objImg.style.backgroundPosition=dec+'px 0px';
if(autoMov)
{
setTimeout("moveRight()",quickness);
}
} function FindID(id) { if(document.layers) return document.layersid; 
 
if(document.all && !document.getElementById) return document.allid; 
if(document.all && document.getElementById) return document.getElementById(id);
 if(!document.all && document.getElementById) return document.getElementById(id); } 
</script>
<p style="background-color: #000000; width: 420px">#
<p id="pic" style="position: relative; left: 10px; top: 10px; background-image: url('pano3.jpg'); 
background-repeat: repeat-x; background-position: 0px 50%; height: 280px; 
width: 400px; margin-bottom: 0px">&nbsp;</p>
 
<p id="nav" style="text-align: center; width: 400px; margin-top: 0px">
<img src="left.gif" onmouseout="stopMove()" onmouseover="startMoveLeft()" 
style="border: 0px none " id="leftimg" alt="Left" />
<span style="width: 20px"> </span>
<img src="right.gif" onmouseout="stopMove()" onmouseover="startMoveRight()" 
style="border: 0px none " id="rightimg" alt="Right" />
Mots-clés: javascript

Pages

Subscribe to Front page feed