Ransomware, ou prise d’otage informatique

prise-otageLes éditeurs d’antivirus rapportent actuellement la montée en puissance d’une forme récente de malware, baptisée ransomware. Ces nuisibles bloquent totalement l’accès au système d’exploitation d’un ordinateur et réclament une somme conséquente pour libérer les données.

Avec les ransomwares, l’infection est la plupart du temps réalisée via une faille provenant d’un logiciel non mis à jour. Un document PDF, Word ou Excel est adressé au destinataire par e-mail. En voulant l’ouvrir, le destinataire fait planter le logiciel associé. Le code stocké dans le document est alors activé et télécharge et installe le ransomware en question.

Lire l’article complet sur http://www.futura-sciences.com/fr/news/t/informatique/d/ranconner-les-internautes-lattaque-malware-a-la-mode_43225/

Notez que si vous avez linux en dual boot sur l’ordinateur et que le MBR est corrompu, la réinstallation du MBR depuis un live CD, exactement de la même manière qu’après une installation de windows, permet de relancer la machine. Windows ,n’est pas dévérolé pour autant, il faudra s’en occuper, mais linux redevient accessible.

En tout cas pour ce qui concerne les 2 machines dont j’ai dû m’occuper aujourd’hui.

Faire un miroir avec apt-mirror de raspberry.org

Je ne vais pas vous réexpliquer comment faire un miroir local, mais comment arriver à faire un miroir pour le raspberry Pi.

Si vous essayez d’utiliser apt-mirror sur une version plus ancienne que Quantal, vous aurez une erreur disant que apt-mirror ne peut localiser le dépôt arm (binary-arm/Packages.gz). Or, il devrait chercher armhf (binary-armhf/Packages.gz)!

Il suffit d’aller modifier /usr/bin/apt-mirror avec un éditeur quelconque pour modifier la ligne 269 ainsi:

remplacer

if($config_line =~ /deb-(alpha|amd64|armel|arm|hppa|hurd-i386|i386|ia64|lpia|m68k|mipsel|mips|powerpc|s390|sh|sparc)/) {
par

if($config_line =~ /deb-(alpha|amd64|armel|armhf|arm|hppa|hurd-i386|i386|ia64|lpia|m68k|mipsel|mips|powerpc|s390|sh|sparc)/) {

en fait, on rajoute armhf avant arm, afin qu’il ne s’arrête pas sur la première correspondance, qui serait incomplète.

Sauvegardez, et ajoutez ensuite dans le fichier /etc/apt/mirror.list la ligne suivante:

deb-armhf http://mirrordirector.raspbian.org/raspbian/ wheezy main contrib non-free rpi

Il ne vous reste plus qu’à lancer apt-mirror pour créer votre miroir local et accélérer le téléchargement des paquets de votre Raspberry Pi.

Raspberry Pi première approche

Après avoir en main le raspberry, je me suis empressé de l’installer et cet article me servira de notes centralisées.

1- Support Quick and Dirty pour la carte

La carte livrée sans boîtier ne pourrait pas résister longtemps à mon environnement de travail extrèmement bien organisé sur mon bureau : vis qui trainent, tournevis posés n’importe où, caches métalliques des boitiers pour les cartes filles, fils qui sont reliés à des choses inconnues jusqu’à ce que ce produisent de magnifiques petits arcs électriques fort agréables en cette période de fêtes, … Bref un bureau de travail, même si j’exagère un peu.

Bon, c’est une carte de test, donc un vrai boîtier n’est pas nécessaire pour l’instant, mais la carte doit être protégée un minimum.

Voyant les deux trous, j’ai pensé à utiliser les entretoises de carte mère en plastique, celles dont on ne sert plus depuis longtemps. Sauf que les miennes ne sont pas autocollantes.

Bien sûr, comme les trous du Raspberry ne sont pas assez gros, un petit coup de foret de 3,5 plus tard, ça fonctionne. Et pour de la stabilité, parce que deux pieds ne sont pas suffisant pour assurer la stabilité de la bête, une carte de crédit (périmée) quelconque et un peut de colle, et le tour est joué!

Ne reste plus maintenant qu’à brancher.

2- Installation du système

J’ai suivi les indications de cette page: http://route63.free.fr/blog/?p=1873

3- A suivre…

Note: je m’intéresse aussi fortement à ceci et cela

Clonezilla: résoudre l’erreur « not a mounting point »

Clonezilla est un système très pratique permettant de prendre l’image d’un système et de la réinstaller sur un autre ordinateur (ou sur le même). Je m’en sers régulièrement avant des manipulations dangereuses pour le système, pour avoir la certitude de pouvoir revenir à l’état initial au besoin. Ou pour transférer un système vers un autre disque.

Je sauvegardais mes images sur le réseau, à l’endroit proposé par défaut dans le live CD, sur /home/partimag. Mais la partition home devenant remplie, j’ai déplacé les sauvegardes dans un nouveau disque sur le serveur, et j’ai créé un lien de /home/partimag pointant vers /stockage/partimag.

Erreur. Depuis ce jour, le message  « Clonezilla image home directory /home/partimag is not a mounting point! Failed to mount other device as /home/partimag! » venait gâcher le plaisir que j’avais à utiliser ce logiciel, sans trop savoir pourquoi.

La réponse est que sshfs a des problèmes avec les liens symboliques et qu’il n’arrive pas à accéder au contenu du lien. La solution consiste à monter le dossier des sauvegardes de partimage à l’endroit attendu avec la ligne de commande suivante dans le fstab

/stockage/partimag /home/partimag auto bind 0 0

Assurez vous de créer le dossier /home/partimag puis montez le dossier des sauvegardes au bon endroit avec
mount -a
L’utilisation de clonezilla redevient identique à celle d’avant, et surtout fonctionnelle.

Quand à savoir pourquoi tenir à utiliser /home/partimag au lieu de taper l’adresse du dossier de sauvegarde, c’est qu’il est plus simple de taper sur entrée que de taper le chemin quand le clavier est accidentellement en qwerty…

D’ailleurs, j’aimerais modifier le liveCD afin d’intégrer mes clefs et personnaliser certaines opérations, mais je n’arrive pas à faire quelque chose de fonctionnel. Si vous avez des pistes ou des tutos (autre que celles du site de clonezilla), je suis intéressé.

Hémiplégie

Joies et mystères de l’informatique….

Une utilisatrice m’appelle pour me dire que son poste est bloqué et qu’elle ne peut plus rien faire. Elle a beau cliquer sur les boutons de son logiciel, rien ne se passe. Par conséquent, elle a envoyé plusieurs résets à la machine qui a redémarré à chaque fois, mais elle ne peut rien faire.

Bon, me dis-je, la souris est morte, ou le système se fige, allons voir ce qu’il en est.

Le poste fait tourner une ubuntu 12.04, ce qui me permet en arrivant de me connecter en console, de voir que le système n’est ni occupé ni chargé, qu’il reste de la place sur les disques durs et que le bon utilisateur est loggué (login automatique) graphiquement.

Retour sur l’interface graphique, la souris déplace correctement le curseur, mais pas de clic. Impossible de lancer quoi que ce soit à la souris, mais le clavier est OK. Puis je me rends compte que le clic droit est fonctionnel, mais pas le clic gauche.

Problème identifié, changeons de souris. J’en sors une de la réserve, je la branche sur un autre port USB en façade et…pas de miracle, mêmes symptômes. Pourtant la souris est neuve! Je vais la tester sur un autre ordinateur, et pas de problème. De retour sur celui ci, rebelotte.

Inferni propter, me dis-je, il y a un problème avec le système, une mise à jour foireuse ou un réglage modifié. Testons le tout en live CD pour en être sûr. Et le problème est identique avec un système live…

Habituellement, la souris fonctionne, ou elle ne fonctionne pas. Mais quand elle ne fonctionne pas, c’est rien: pas de déplacement de curseur, pas de clic quel qu’il soit.

Donc je me met à soupçonner le matériel lui même, bien que si le port USB reçoit les déplacements de la souris, il devrait recevoir les ordres de clic, quels qu’ils soient.

Je m’arrête donc pour réfléchir en ignorant la pression de l’utilisatrice qui veut savoir pourquoi son poste n’est plus utilisable et je trouve la solution en une minute.

Et vous, auriez vous trouvé? Je vous laisse quelques jours pour donner votre solution, dire si j’ai fait une erreur, et laquelle, et ensuite je vous dirais ce qu’il en était.

Un indice: non debet operari in emergency.

Ubuntu-tweak est mort. Vive ubuntu-tweak?

Le logiciel bien connu de customisation d’Ubuntu, à mon avis vital depuis le passage à Unity, n’est plus.

L’auteur vient d’annoncer aujourd’hui sur son blog arrêter le développement de ce logiciel. S’il ne donne pas de raison particulière, il dit que ce projet commencé dans l’enthousiasme le rend désormais malheureux et que « si faire du logiciel libre n’est plus gratuit, pourquoi continuer à en faire? » .

C’est vraiment dommage à mon avis.

Le logiciel fonctionne toujours pour la partie customisation, au moins jusqu’à la 12.10, mais l’onglet Application ne fonctionnera plus, vu qu’il s’agissait d’un web service.

Ceci dit, comme tous les projets open source, rien n’empêche qu’il renaisse prochainement de ses cendres, repris par une autre communauté. Longue vie à Ubuntu-tweak et merci au développeur.

Mise à jour: au vu des messages de soutien, l’auteur a décidé de reprendre le développement.

greemote et Ubuntu precise 12.04

greemotegreemote est une application très pratique pour commander sa freebox depuis son PC. Malheureusement, l’installation sur 12.04 ne fonctionne pas, le lancement provoque l’erreur suivante:

Traceback (most recent call last):
File "/usr/bin/greemote", line 4, in <module>
import libgreemote.greemote, socket
ImportError: No module named libgreemote.greemote

Mais on peut résoudre le problème!

Téléchargez l’archive libgreemote.tar.gz et copiez la dans /tmp/

Ensuite, exécutez les commandes suivantes:

sudo cp /tmp/libgreemote.tar.gz /usr/share/pycentral
cd /usr/share/pycentral
sudo tar xvfz libgreemote.tar.gz

Enfin, il ne reste plus qu’à modifier le programme afin qu’il trouve ce qu’il cherche et qu’on vient de ranger

sudo gedit /usr/bin/greemote

et remplacez le contenu par

#!/usr/bin/python
# -*- coding:utf-8 -*-
import sys
sys.path.insert(0, "/usr/share/pycentral/")
import libgreemote.greemote, socket
def main():
    print "Télécommande pour Freebox HD."
    socket.setdefaulttimeout(5)
    libgreemote.greemote.greemote()
if __name__ == '__main__':
    main()

Lancez, et ça devrait fonctionner!

Déplacer les base mysql sur Ubuntu

J’ai voulu déplacer des bases mysql pour les placer sur une autre partition, mais sur Ubuntu, il ne suffit pas de déplacer les bases pour pourvoir relancer le serveur, même en ayant modifié le fichier my.cnf.

L’erreur était la suivante dans le fichier /var/log/mysql/error.log

/usr/sbin/mysqld: Can't find file: './mysql/plugin.frm' (errno: 13)
120902 16:57:07 [ERROR] Can't open the mysql.plugin table. Please run mysql_upgrade to create it.
120902 16:57:07  InnoDB: Initializing buffer pool, size = 8.0M
120902 16:57:07  InnoDB: Completed initialization of buffer pool
120902 16:57:07  InnoDB: Operating system error number 13 in a file operation.
InnoDB: The error means mysqld does not have the access rights to
InnoDB: the directory.
InnoDB: File name ./ibdata1
InnoDB: File operation call: 'open'.
InnoDB: Cannot continue operation.

J’ai heureusement trouvé la solution sur La case de l’oncle tom après avoir beaucoup cherché mais en n’ayant trouvé que des suggestions non fonctionnelles pour mon problème.

Le problème vient de apparmor qui ne considère pas le nouvel emplacement comme fiable. Il suffit donc de modifier le fichier /etc/apparmor.d/usr.sbin.mysqld comme indiqué pour pouvoir relancer mysql.

Pourtant, comme le dit Daniel, le fichier my.cnf comporte bien l’avertissement suivant:

# * IMPORTANT
#   If you make changes to these settings and your system uses apparmor, you may
#   also need to also adjust /etc/apparmor.d/usr.sbin.mysqld.

Comme quoi, vouloir aller trop vite pour gagner du temps et se jeter sur le net n’est pas toujours la bonne solution…

Note a moi même: prendre l’habitude de lire les commentaires des fichiers de configuration, ça peut aider.

Source: La case de l’oncle tom

SSHplus: le SSHmenu pour unity

S’il est un outil dont je ne pourrais me passer et qui freinait considérablement mon passage à unity, c’est bien sshmenu. Une fois paramétré, j’ai sous la main en quelques clics l’accès ssh aux machines que je gère.

Autant lorsqu’on n’en a que quelques unes ça peut rester gérable à la main, autant quand on en a plus d’une trentaine, c’est impensable de ne pas utiliser un outil dédié.

Malheureusement, sshmenu ne fonctionne pas avec unity. Heureusement, il existe un autre logiciel qui permet de faire la même chose et même plus, c’est SSHplus.

Le seul petit point négatif, c’est que le paramétrage se fait pour l’instant en éditant le fichier de configuration, pas avec une interface graphique. Gageons cependant que ce n’est qu’une question de temps avant que ce ne soit corrigé.

Les fonctionalités

  • Lance SSH, rdesktop, et presque n’importe quelle commande ou application
  • Compatible avec le menu de configuration de sshmenu
  • Supporte les dossiers imbriqués (mais pas encore ceux importés depuis sshmenu)

Je n’ai pas testé l’import depuis le fichier de configuration de sshmenu puisque j’en ai profité pour faire du rangement dans mes entrées, et j’ai réécrit le fichier de configuration, ce qui m’a permis de me faire la main sur son fonctionnement.

Installer SSHplus

  • Téléchargez la dernière version sur le repo github
  • Copiez le dans /usr/local/bin
  • Ajoutez lui les droits en exécution par un chmod +x /usr/local/bin/sshplus.py
  • Lancez sshplus.py ou mettez le dans vos applications au démarrage
  • Éditez le fichier de configuration ~/.sshplus comme indiqué ci dessous

La configuration

Quelques infos rapides avant de commencer:

  • Les lignes commençant par le caractère # sont ignorées (commentaires). Ne placez pas de commentaire à la suite de lignes indiquant des commandes
  • Les espaces en début de ligne sont ignorés. Vous pouvez indenter pour que le fichier soit plus clair
  • Les lignes vides sont ignorées (il n’y en a pas dans mon fichier d’exemple à cause de wordpress qui ne sais plus reconnaitre la fin du code)
  • L’instruction sep ajoute un séparateur dans le menu

Les instructions du fichier de configuration ~/.sshplus

C’est très simple, elles se présentent sous la forme NOM | COMMANDE | ARGUMENTS. Ainsi, pour ouvrir un terminal avec la commande « top », il suffit d’ajouter l’instruction suivante:

Afficher top|gnome-terminal|-x top

Pour lancer firefox sur le site des astuces d’absolacom:

Astuces d'Absolacom|firefox|http://astuces.absolacom.com

Accéder à un dossier local (la structure est la même utilisée dans le fichier ~/.gtk-bookmarks)

Dossier temporaire|nautilus|file:///tmp

ou distant

Dossier distant|nautilus|sftp://manu@192.168.10.214

A partir de là, vous voyez que c’est simple de faire ce qu’on veut. Ne reste plus qu’à savoir quoi y mettre, mais si on ne trie pas, c’est vite le bazar et il est impossible de s’y retrouver.

Menus et Sous menus

On peut heureusement créer des sous menus de façon aussi simple: il suffit d’utiliser l’instruction folder:label pour donner un nom à votre dossier, et l’instruction folder: pour remonter d’un niveau et « fermer votre dossier ».

Exemple de fichier de configuration

Je vous donne ci dessous un exemple de fichier de configuration ((fichier fourni par le développeur et adapté par mes soins)). Attention, rien n’est fonctionnel dans le sens ou les adresses et les identifiants sont fantaisistes. A vous d’adapter à votre besoin.

# Lanceurs d'application dans un dossier
folder:Applications
Show top|gnome-terminal|-x top
Dossier distant|nautilus|sftp://manu@192.168.10.214
# Un sous dossier
folder:Absolacom
Astuces d'Absolacom|firefox|http://astuces.absolacom.com
folder:
folder:
#sep ajoute un séparateur
sep
# label: Ajoute un label aux menus
label:Connexions SSH
SSH server1|gnome-terminal|-x ssh root@google.com
SSH server2|gnome-terminal|-x ssh -p 456 manu@192.168.10.23
sep
# Utilise rdesktop pour se connecter à des postes windows
label:Connexions RDesktop
Win-Server 1|rdesktop|-T “Win-Server 1″ 1.2.3.4
Win-Server 3 (with many arguments)|rdesktop|-g 1320×680 -T “Win-Server 3″ -x l -P -r sound:local 1.2.3.6
sep
label:Connexions Putty
# PuTTY
PuTTY-Session 1|putty|-load SavedSession1
PuTTY-Session 2|putty|-load SavedSession2
#Si un fichier de connexion sshmenu est présent, il sera ajouté automatiquement

Comme vous le voyez, c’est simple d’usage et tellement pratique.

Edit du 24/08/12

Je modifie cet article pour apporter deux petites informations.

Tout d’abord, si vous mettez un underscore dans le nom de votre raccourci, vous pourrez avoir un accès rapide en appuyant sur la lettre correspondante. Par exemple, prenons la ligne PuTTY-Session 2|putty|-load SavedSession2 du fichier ci dessus, si je la note Pu_TTY-Session 2|putty|-load SavedSession2 dans mon fichier de configuration, je pourrais lancer ce raccourci en appuyant sur la touche « T ». Pas primordial, mais pratique, d’autant que je n’ai trouvé cette info nulle part, mais en bidouillant.

Ensuite, j’ai eu besoin de transformer un fichier de conf de sshmenu vers sshplus avec des dizaines d’entrées. Impossible d’utiliser le fichier d’origine dans sshplus, il ne me le prenait pas. Étant donné qu’il n’était pas question que je refasse tout à la main dans le cas présent, j’ai écrit un petit programme python pour le convertir. Il fonctionne comme suit en ligne de commande:

  • Sans argument, il va chercher le fichier ~/.sshmenu. S’il ne le trouve pas, le programme s’arrête.
  • En précisant sur la ligne de commande le chemin vers le fichier à transformer on peut préciser le fichier à utiliser. S’il ne le trouve pas, le programme s’arrête.
  • Le résultat converti est affiché dans le terminal. Une fois validé, on peut le rediriger vers un fichier (en général ~/.sshplus)
  • Le programme essaye de récupérer l’organisation des sous dossiers de sshmenu, mais il a des soucis avec les sous-sous-sous-…dossiers. Au pire, il ne vous restera plus qu’à placer les « folder: » au bon endroit. C’est plus rapide que de le faire manuellement quand on a beaucoup d’entrées.

Téléchargez le fichier sshmenu2sshplus , renommez le en « .py » ((wordpress ne me laisse pas les monter en py)), rendez le exécutable et lancez le en lui précisant l’emplacement vers votre fichier .sshmenu, et redirigez la sortie vers votre fichier sshplus. Par exemple:

./sshmenu2sshplus.py /tmp/.sshmenu >> ~/.sshplus

Unity et le dual screen

C’est rien, mais j’ai cherché quelques minutes avant de trouver ce qui était sous mon nez…

Quand on active le dual-screen, il faut désormais se poser la question de savoir sur quel écran on désire le lanceur. Sur les deux? Celui de gauche? Celui de droite?

Ceci dit, si vous ne vous posez pas la question, un petit détail va vous faire rager rapidement: le passage d’un écran à l’autre est gêné par un ralentissement de la souris dû aux bords collants. Grrr!

Bon, c’est tout simple et il faut lire les fenêtres, même quand on croit les connaitre.

Dans le réglage d’affichage, sélectionnez l’écran sur lequel vous voulez le menu et si vous désirez les bords collants.

Ubuntu: system halted ou le poste ne s’éteint pas

L’ordinateur ne s’éteint pas

J'ai dit halte!
Depuis ubuntu 11.04 ((il me semble)), un problème récurent se produit: lors d’une demande d’arrêt, le poste reste sous tension et un message indique laconiquement:

*Will now halt
[...] System halted

C’est d’autant plus embêtant que parfois la commande entrée manuellement dans un terminal fonctionne sans provoquer ce problème, mais que dans un script ou avec certains logiciels, le système ne se coupe pas. Et si le système n’est pas coupé, impossible de démarrer les postes par wake on lan!

J’avais écrit à ce sujet en donnant une solution de contournement qui ne fonctionnais pas systématiquement non plus…

A noter que ce problème apparait lors d’une mise à jour ou d’une installation neuve, quelle que soit la distribution basée sur ubuntu (voyager, mint, Xubuntu, …)

Je suis tombé sur l’explication de Steve Langasek (vorlon) sur bugs.launchpad qui éclaire ce problème:

Ok, j’ai travaillé à ma façon sur toutes les formes de ce bug maintenant, et je dois conclure que ce comportement ne peut pas / ne devrait pas changer.

– La commande «shutdown» a trois options: « -h » (arrêt ou mise hors tension), ‘-H’ (arrêt), et «-p» (hors tension).
– La commande «halt» fait référence à -H,  par défaut.
– La commande «poweroff» fait référence à -p, par conception.
– La configuration de /etc/default/halt affecte *uniquement* le comportement lorsque ni -H ni -P n’a été spécifié.
– Il n’y a pas moyen de faire «halt» correspondre par lui-même à «poweroff», sans qu’il soit impossible de faire un véritable «arrêt».
– Ce sont toutes des options standard qui ne devraient pas être changé.

Donc, je ferme ce rapport de bug comme «wontfix». Le comportement actuel est incompatible avec le comportement arriviste précédent, mais ce comportement était bogué. Le comportement actuel est correct, et je crains que les gens vont juste devoir apprendre que «halt» ne signifie pas ce que vous avez été amené à croire que cela signifie.

Si vous voulez que le système se coupe, vous avez besoin pour fonctionner soit de « shutdown -h now», «halt -p», ou «poweroff». Toutes ces trois commandes fonctionnent. «halt -p» est la plus courte et probablement la plus compatible avec la mémoire musculaire existante.

Même si le ton est un peu hautain à mon goût ((pour les pauvres utilisateurs perturbés que nous sommes, et vraiment nombreux au vu des pages complètes de google à ce sujet)) , il est logique de comprendre que « halt » arrête le système informatique ((ce qu’il fait d’ailleurs très bien comme le prouve le message « system halted »)) et que « poweroff  » coupe l’alimentation matérielle.

Le problème est que pendant des années nous avons appris à utiliser « halt » plutôt que « shutdown -h » ou « poweroff » et qu’il nous semble que ce nouveau comportement est un bug, alors que c’est l’ancien comportement qui était anormal. Il va falloir commencer à changer certaines habitudes…

On peut contourner ce comportement en modifiant les aliases (alias halt= »halt -p ») mais c’est à faire pour tous les utilisateurs et ne fonctionne pas pour les scripts ou programmes qui ne lancent pas un shell.

De plus, sur la 10.04, vous constaterez que « halt » est un lien vers la commande « reboot »… D’autant plus surprenant que « reboot » fonctionne…

Eteindre ubuntu ET l’ordinateur

Note: la solution proposée par chmd dans les commentaires est en effet plus propre et conseillée.

Je me trouve confronté à des logiciels écrits il y a quelques années qui font appel à la commande halt et à qui je peux difficilement expliquer ((pour diverses raisons…)) que c’est une mauvais habitude, mais une solution de comportement existe en interceptant la commande halt et en la renvoyant vers poweroff

  • renommez la commande halt en autre chose

sudo mv /sbin/halt /sbin/haltorig

  • Créez un programme /sbin/halt qui fera appel à « poweroff » ou « shutdown -h now »

#!/bin/sh
/sbin/poweroff

puis sudo chmod +x /sbin/halt

On retrouve ensuite un comportement « normal » ((le comportement attendu, à savoir une coupure propre, même s’il vaudrait mieux prendre la bonne habitude immédiatement)) du système.

Depuis quelques jours que je teste cette modification, je n’ai remarqué aucun effet de bord, ni graphiquement, ni sur le fonctionnement des autres programmes. À part que c’est un bonheur de pouvoir à nouveau éteindre ses machines par cron ou ssh et de pouvoir les relancer par WOL.

J’ai pensé que vous trouveriez cet article utile ;oD

Equivalent à CHKDSK sous Linux

Il est bien évident qu’à choisir un système de fichier mon choix premier ne se porterait pas sur les formats Microsoft. Cependant, l’interopérabilité fait que le choix ne nous est pas forcément disponible.

Surtout quand on me transmet un disque externe  en me disant « Tiens, voilà la sauvegarde, prends en soin c’est la seule » et que je me rends compte que le système de fichier est dans les choux… ((d’ici à ce qu’on vienne dire que c’est parce que j’ai osé le brancher sur un Linux, il n’y a qu’un pas qui a déjà été franchi depuis longtemps!)).

Sueurs froides, tremblement, méditation et incantations :d plus tard, voici ce que ça donne.

Partitions FAT

Certains appareils (lecteur DVD, décodeur TNT, autoradio ou systèmes propriétaires) n’acceptent que les lecteurs externes au format VFAT. Or, quand il y a des problèmes sur la partition et qu’on veut la corriger, c’est dommage de ne garder un windows que pour ça.

Heureusement, le paquet dosfstools possède la commande dosfsck qui permet de le faire:

sudo dosfsck -a -t -w /dev/sdc1

Cette commande va nous permettre de vérifier le disque /dev/sdc1 en réparant automatiquement les erreurs sans confirmation (-a), en marquant les mauvais secteurs comme tels (-t) et en le faisant immédiatement (-w). Vous pouvez aussi ajouter les options -n (à la place de -w) pour simplement tester, -l pour afficher la liste des fichiers traités et -v pour avoir plus de sortie à l’écran.

Démontez votre disque sans le retirer avant de lancer la commande, mais dans les cas où je l’ai utilisée, le disque ne montait pas de lui même.

Partitions NTFS

Je n’ai pas trouvé de commande permettant de le faire. Si vous en connaissez une, je suis preneur.

La commande ntfsfix du paquet ntfsprogs permet de faire certaines réparations simples, mais pas une véritable vérification. Comme le dit le man:

ntfsfix est un utilitaire qui permet de résoudre certains problèmes NTFS communs. ntfsfix N’EST PAS une version Linux de chkdsk. Il répare seulement certaines incohérences fondamentales du NTFS, réset le journal NTFS et programme une vérification du système de fichiers au prochain boot de Windows.

Cependant, on peut s’en sortir sans avoir windows installé, simplement avec le CD d’installation (exemple pour XP) ((même si ça pique les yeux, tout ce bleu)):

  • démarrez un ordinateur où le disque est branché depuis le CD d’installation
  • Dans les choix qui vous sont donnés, choisissez R pour réparation
  • Quand vous êtes dans la console de réparation, lancez la commande CHKDSK C: /R. Si un seul disque est présent, vous pouvez omettre de le nommer.

Si vous n’avez pas le CD d’installation de windows, vous pouvez télécharger Revovery Console (RC.iso) fourni par The computer paramedic qui contient des outils de réparation et l’utiliser comme dans la méthode donnée ci dessus. Notez que si vous avez eu un ordinateur sans CD d’installation, il est utile de le télécharger pour l’avoir sous la main, y compris pour réparer le MBR

Pour Vista et Seven, la méthode est approximativement la même, même si elle n’apporte rien de plus. Démarrez avec votre DVD d’installation et adaptez la méthode à ce qui vous est proposé. Vous pouvez aussi consulter cette page même si l’accès aux consoles de réparation est devenu payant pour des problèmes de licences Microsoft ((Obligé de payer des licences à Microsoft pour permettre de réparer leur système… Comme quoi c’est un business de leur part, pas un bug. Encore un bonnet d’ÂNE mérité.)) depuis Aout 2011.

Rien ne va plus, tout est en panne

Au delà de la polémique qu’il peut y avoir sur le système d’exploitation ou des logiciels choisis, il faut se rappeler une chose: ce n’est pas qu’un système informatique peut tomber en panne, c’est qu’il va tomber en panne un jour ou l’autre.

Plus un commercial me vante la stabilité de son système, plus j’ai peur. Que ce soit dans l’informatique ou dans d’autres domaines. Or, aujourd’hui, l’informatique et les systèmes embarqués sont partout, y compris dans les voitures.

Là où un simple miroir ne peut pas se mettre en carafe, on remplace ceux ci par des caméras + écrans ((où le seul intérêt à mes yeux serait l’enregistrement des informations, le stockage, le traitement et la conservation des données, y compris envers la CNIL, rendent la chose compliquée et coûteuse)), là où un simple interrupteur fait son office, on installe un système intelligent sensé nous simplifier la vie ((mon micro ondes refuse de décongeler mon pain, considérant qu’il n’est pas assez lourd pour justifier la mise en route du four. Je suis obligé de rajouter du poids (2 verres d’eau) pour que la pesée fonctionne et que le four( daigne adapter sa puissance au produit…)), là où in simple téléphone permettait d’appeler les secours, il lui faut maintenant une alimentation et il ne fonctionne plus en cas de coupure électrique.

Plus on rajoute d’éléments dans la chaine de fonctionnement, plus on fragilise le système complet en cas de faille dans l’un des éléments. Sans compter les multiples éléments extérieurs inconnus sur lesquels on ne peut avoir de contrôle (stabilité électrique, parasites électro ou magnétiques, chocs d’un balai, utilisateur lui même, …) qui conduisent parfois à des pannes non franches qu’il est quasiment impossible de reproduire, comprendre et éviter. Les systèmes fermés (logiciels ou matériels) induisent eux aussi une part d’inconnu qui ne nous laisse que la possibilité de constater: c’est en panne, ou ça a été en panne, mais on ne sait pas pourquoi.

Or, lorsqu’un client fait appel à un professionnel, il veut une réponse. Et si le professionnel avoue son ignorance, c’est qu’il est nul et qu’il faut s’adresser à quelqu’un d’autre. La tentation est alors forte d’inventer une cause ou une explication qui satisfera le client, bien qu’on ne sache pas réellement si elle est juste. Déjà que le métier d’informaticien paraît obscur aux non initiés ((ouvrez une ligne de commande chez un client, il vous prend déjà pour un hacker)), que les termes techniques et les explications sont incompris ((ce qui permet à certains de raconter n’importe quoi)), que les médias ne parlent de l’informatique que pour ses effets négatifs (pirates, virus, pédophilie), on arrive très vite à une réputation de menteurs et de voleurs, pas loin derrière les garagistes. C’est parfois difficile à rattraper, surtout quand on passe derrière certains concurrents ((quand il ne s’agit pas du petit fils de la soeur du cousin du beau frère du collègue de travail du voisin qui « s’y connait » et à qui on fait plus confiance)).

Si en plus on apporte des mauvaises nouvelles au client, je vous laisse imaginer ses impressions. Heureusement qu’on ne tue plus les porteurs de mauvaises nouvelles!

Intervenant souvent sur des pannes ((souvent sur des systèmes que je découvre)), le client veut que ça refonctionne au plus tôt ((c’est à dire juste après son appel)) et que ça ne se reproduise plus ((il paye, donc il veut une garantie)). Or, pour étudier une panne, il faut laisser le système dans l’état où il se trouve, c’est à dire en panne. Comme bien souvent un simple redémarrage suffit à résoudre le problème ((en particulier chez qui vous savez)), difficile de savoir le pourquoi et d’être certain que ça ne se reproduira plus. Ce n’est pas le plus difficile à faire comprendre à un client, quand on emploie les mots justes. Il peut comprendre qu’un redémarrage est nécessaire et que c’est un moindre mal mais il est tiraillé entre ce que vous lui dites et le discours appuyé des commerciaux ne disant que ce que les gens ont envie d’entendre. J’appelle ça le chant des sirènes.

En tant que particulier, professionnel ou simple être humain, j’y suis aussi sensible. Entre les publicités et les envies d’être rassuré, difficile de faire la part des choses ((assurances, mutuelles, retraite, services bancaires, alarmes, … On a tous cédé une fois parce qu’on avait envie d’y croire)).

Alors, quand un commercial me jure ses grands dieux que tout est parfait, je lui fait voir la galerie ci dessous ((Y’a bien que des informaticiens pour prendre ces trucs en photo. Et en plus à aimer ça…!)). Ce sont des photos provenant d’Internet pour la majorité, plus quelques unes de mon crû.

Quand un client veut que ça ne se reproduise plus, sans mettre les moyens, je lui fais aussi voir cette galerie. Il comprend alors que si des banques ou des aéroports restent confrontés à des pannes pouvant compromettre la sécurité de leur système alors qu’ils y ont mis des moyens importants ((Et souvent beaucoup plus que le budget disponible chez mon client)), l’objectif de zéro panne n’est pas accessible immédiatement et qu’il va falloir étudier une tolérance de panne acceptable.

Au final, quand on a compris qu’il y aura une panne, qu’on ne saura pas pourquoi ni comment, la seule question importante qu’il reste c’est: comment repartir rapidement après sinistre? Seul un système de sauvegarde efficace ((testé et vérifié régulièrement, ce qui n’est pas le cas dans beaucoup d’endroits)) et une méthodologie de travail adaptée ((Ne pas multiplier les emplacement des données, classer les informations, …)) permettent de relancer, plus ou moins rapidement ((selon les moyens mis en oeuvre et l’acceptation d’un délai de coupure de service)), le système d’information nécessaire au fonctionnement.

Vous qui me lisez, à quand remonte votre dernière sauvegarde vérifiée?

Aucun risque!

Des fois, on voit des petits détails qui nous font faire des bonds, qu’on soit informaticien ou pas.

Vous ne voyez pas? Cliquez sur l’image pour la voir en grand.

Toujours pas? Bon, je vous aide

Oui, un objet métallique à moins d’un demi centimètre de fiches alimentées en 220V. Aucun risque d’arc électrique. Aucun risque qu’un client ne s’amuse à le tripoter pendant que la vendeuse est occupée. Aucun risque, je vous dis.

Sauf celui de passer pour un con lorsqu’on le signale, parce qu’il faut bien que l’ordinateur fonctionne pour pouvoir vous commander vos lunettes, Monsieur! ((Je schématise fortement, bien sûr, mais le message est là))

Claques perdues: +1

Konica Minolta Bizhub 350 et cups

Après avoir encore une fois perdu du temps à retrouver comment le faire fonctionner, je le note pour pouvoir le retrouver.

Ensuite, ça fonctionne en utilisant le premier driver de la catégorie KONICA MINOLTA (je ne l’ai pas noté…)

A noter que cela est valable pour tous les modèles de la liste suivante:

  • bizhub 7222, 7322, 7228, 7235
  • 7145
  • 7155, 7165, Force 65
  • 7255, 7272
  • 7075, Force 75
  • 7085, Force 85
  • bizhub PRO 1050/1050P
  • bizhub 350/250/200
  • bizhub 500/420/360
  • bizhub 501/421/361
  • bizhub 750/600
  • bizhub 920/PRO 920
  • bizhub C250/C250P
  • bizhub C252
  • bizhub C351
  • bizhub C352/C352P/C300
  • bizhub C353/C353P/C253/C203
  • bizhub C450/C450P
  • bizhub C451
  • bizhub C650/C550
  • magicolor 8650

Utiliser wget pour télécharger un site entier

C’est plus un pense bête qu’une astuce, et ça m’évitera de chercher encore une fois.

Pour l’anecdote, j’ai scripté cet usage afin de garder une copie de sauvegarde d’un site hébergé chez le prestataire d’un client qui a des « problèmes » avec celui ci. En cas de…je ne sais pas, mais au cas où, j’ai une copie de sauvegarde permettant une reprise sans avoir à tout recréer de zéro (images, mise en page, css,…). Et j’ai ainsi l’évolution des modifications sur les x derniers jours (une sorte de google cache en local)

Si vous voulez télécharger un site entier, peut être pour le visiter off-line, wget peut le faire . Par exemple:

$ wget \
     --recursive \
     --no-clobber \
     --page-requisites \
     --html-extension \
     --convert-links \
     --restrict-file-names=windows \
     --domains website.org \
     --no-parent \
         www.website.org/tutorials/html/

Cette commande va télécharger le site  www.website.org/tutorials/html/.

Les options sont:

  • –recursive: télécharge le site web entier.
  • –domains website.org: ne suit pas les liens pointant hors du domaine website.org.
  • –no-parent: ne suis pas les liens pointant hors du dossier tutorials/html/.
  • –page-requisites: récupère tous les éléments qui composent la page (images, CSS et cie).
  • –html-extension: enregistre les fichiers avec l’extention .html.
  • –convert-links: convertit les liens afin qu’ils fontionnent localement (off-line).
  • –restrict-file-names=windows: modifie les noms de fichiers afin qu’ils fonctionnent aussi sur Windows.
  • –no-clobber: n’écrase pas les fichiers déjà existants (utilisé en cas de téléchargement interrompu et repris).

Il peut aussi être important d’ajouter les options --wait=9 --limit-rate=10K qui éviteront de surcharger le serveur qui vous fournit les pages et d’éviter, éventuellement, de vous faire blacklister par un admin un peu pointilleux.

  • –wait=X : attend X secondes entre chaque téléchargement
  • –limit-rate=XK : limite la bande passante utilisée à X Ko/s

Utiliser ces options permet plus de souplesse que de simplement utiliser l’option -m (mirror).

Notez que wget existe aussi sous windows.

source: http://www.linuxjournal.com/content/downloading-entire-web-site-wget

Ubuntu 11.10 (Oneiric) ne s’arrête pas

Sur certains ordinateur, avec Oneiric, l’ordinateur ne s’arrête pas véritablement. L’ordinateur reste sous tension, même si le système est coupé.
Il est alors nécessaire de faire un réset manuellement, ce qui peut être gênant quand l’ordinateur n’est pas accessible.
Cela peut se produire autant lors de la demande d’arrêt que pour celle du redémarrage. Parfois cela fonctionne depuis le gestionnaire de fenêtre, parfois non. La commande « halt » en ligne de commande ne fonctionne pas, elle ((2 machine différentes, même OS, comportement différent. Même avec des systèmes différents (ubuntu/voyager) )) .
Je n’ai pas trouvé de solution, et des rapports de bug ont été ouverts, et on en parle sur beaucoup de forums ((par exemple ici ou ))  mais en attendant, il faut bien pouvoir agir.

J’ai trouvé une solution de contournement qui permet d’effectuer ce qui est véritablement désiré et qui fonctionne sans problèmes.
Créez un script /usr/bin/force_halt et mettez y ce code dedans:

#!/bin/bash
dbus-send --system --print-reply --dest=org.freedesktop.ConsoleKit /org/freedesktop/ConsoleKit/Manager org.freedesktop.ConsoleKit.Manager.Stop

Rendez le exécutable et remplacez vos appels à « halt » par « force_halt« . Vous pouvez aussi remplacer /sbin/halt par un lien vers force_halt

Concernant le reboot, il faut répéter les mêmes opérations mais remplacer le Stop de la fin de la ligne de commande par Restart

Ubuntu: faire fonctionner la carte Ethernet Atheros AR8151

Ethernet controller [0200]: Atheros Communications AR8152 v2.0 Fast Ethernet [1969:2062] (rev c1)

Les derniers pilotes Athéros ne sont pas disponibles. Le serveur semble down ou cassé, mais il est possible d’installer les drivers pour faire fonctionner cette carte réseau grâce à un forum allemand.

Installons d’abord les éléments nécessaires

sudo apt-get install --reinstall linux-headers-$(uname -r) build-essential

Nous allons ensuite installer DKMS pour installer le module

sudo apt-get install --reinstall linux-headers-$(uname -r) build-essential dkms        # s'ils ne sont pas déjà installés
## Pour Ubuntu 10.04
wget http://media.cdn.ubuntu-de.org/forum/attachments/2666793/AR81Family-linux-v1.0.1.14_dkms.tar.gz
sudo tar xvf AR81Family-linux-v1.0.1.14_dkms.tar.gz -C /usr/src
 
# Pour Ubuntu 10.10 et supérieur
wget http://media.cdn.ubuntu-de.org/forum/attachments/2666793/AR81Family-linux-v1.0.1.14_10.10.tar.gz
sudo tar xvf AR81Family-linux-v1.0.1.14_10.10.tar.gz -C /usr/src

Création du module et installation

sudo dkms add -m atl1e -v 1.0.1.14
sudo dkms build -m atl1e -v 1.0.1.14
sudo dkms install -m atl1e -v 1.0.1.14

Chargement du module et test

sudo modprobe atl1e
dmesg | egrep 'atl1e|eth'
ifconfig -a

Malheureusement, l’archive pour 10.10 et supérieurs n’est plus disponible sur ce site. Je met donc au moins l’archive pour 10.04 à disposition sur le mien au cas où elle disparaitrait

AR81Family-linux-v1.0.1.14_dkms.tar

Source: http://forum.ubuntuusers.de/topic/lan-geht-nicht-wlan-schon/#post-2666793

Activer XDMCP sur Ubuntu Lucid 10.04

Cette astuce fonctionne peut être avec les versions suivantes, mais je ne l’ai pas testée. A confirmer.

Si vous avez besoin d’utiliser XDMCP sur votre réseau, vous constaterez qu’avec la « nouvelle » version de GDM, il n’est plus possible de l’activer facilement ((en tout cas, pas aussi facilement qu’avant)).

Or, il suffit de quelques manipulations pour la remettre en place.

Paramétrer le serveur XDMCP

Tout d’abord, il faut créer le fichier /etc/gdm/custom.conf qui va enregistrer les options de GDM, et en particulier celles concernant XDMCP.

Remplissez le avec ceci:

[daemon]
 User=gdm
 Group=gdm
[security]
 DisallowTCP=true
[xdmcp]
 Enable=true
 DisplaysPerHost=2
 HonorIndirect=false
 MaxPending=4
 MaxSessions=16
 MaxWait=30
 MaxWaitIndirect=30
 PingIntervalSeconds=60
 Port=177
[greeter]
[chooser]
 Multicast=false
[debug]
 Enable=false

Il suffit ensuite de redémarrer le service GDM pour activer le XDMCP.

service gdm restart

Cependant, si vous avez désactivé IPV6 sur votre réseau, cela ne fonctionnera pas, puisque XDMCP écoute par défaut en IPV6 désormais. Vous pouvez le voir en root avec la commande netstat:

root@test4:/home/manu# netstat -putan|grep 177
udp6       0      0 :::177        :::*        646/gdm-binary

Il faut alors désactiver IPV6 sur l’ordinateur qui diffusera son affichage, par exemple en le désactivant au niveau du noyau.

On peut le faire en rajoutant une option au fichier de configuration de grub. Modifiez les fichier /etc/default/grub pour ajouter l’option « ipv6.disable=1 »

GRUB_CMDLINE_LINUX_DEFAULT="ipv6.disable=1 quiet splash"

Reconstruisez le fichier de configuration de grub par « sudo update-grub » puis redémarrez votre ordinateur. Netstat vous indique alors que XDMCP écoute en IPV4 ((notez le 6 qui a disparu et la notation des adresses))

root@test4:/home/manu# netstat -putan|grep 177
udp       0      0 0.0.0.0:177        0.0.0.0*        658/gdm-binary

Utiliser le client XDMCP

On peut utiliser Xming depuis Windows, mais depuis Linux, il est plus simple d’utiliser tsclient. Dans la liste des protocoles, si vous ne voyez pas XDMCP, c’est qu’il vous faut l’installer le paquet xnest

sudo apt-get install xnest

tsclient avec XDMCPEnsuite, pour la connexion, c’est du classique.

Un client XDMCP en console

Si vous désirez lancer une session XDMCP systématiquement, il est inutile se charger gnome ou un gestionnaire de fenêtres simplement pour lancer tsclient puis votre session XDMCP. Il est possible de lancer celle ci directement.

Désactivez le lancement de GDM, puis logguez vous sur l’ordinateur et tapez la commande suivante:

/usr/X11R6/bin/X -query 192.168.1.2

où 192.168.1.2 est le serveur sur lequel vous avez activé XDMCP.

Sources:

Tftpd-hpa sur Lucid (erreur TFTP open timeout)

La mise à jour du programme tftpd-hpa sur lucid modifie son fichier de configuration par défaut. Si vous utilisez des clients légers avec LTSP, vous vous retrouvez avec des clients qui s’arrêtent à l’erreur PXE: TFTP open timeout juste après avoir obtenu leur adresse IP du dhcp.

Avant, votre fichier de configuration était ainsi:

root@ltsp:#cat /etc/default/tftpd-hpa
#Defaults for tftpd-hpa
RUN_DAEMON="yes"
OPTIONS="-l -s /var/lib/tftpboot"

Or, maintenant, le fichier se présente ainsi:

# /etc/default/tftpd-hpa
TFTP_USERNAME="tftp"
TFTP_DIRECTORY="/srv/tftp"
TFTP_ADDRESS="0.0.0.0:69"
TFTP_OPTIONS=""

Du coup, le serveur ne se lance plus (il n’apparait pas dans les processus) même si vous avez un message disant qu’il est déjà en cours de fonctionnement lorsque vous tentez de le relancer.

Il suffit alors de modifier votre fichier de la manière suivante:

# /etc/default/tftpd-hpa
TFTP_USERNAME="tftp"
TFTP_DIRECTORY="/var/lib/tftpboot"
TFTP_ADDRESS="0.0.0.0:69"
TFTP_OPTIONS="--secure"

Relancez ensuite votre serveur tftpd et vos clients devraient démarrer.

Si vous avez utilisé des outils qui paramètrent automatiquement le fichier de configuration avec l’ancienne version, réinstallez le paquet pour obtenir le nouveau fichier de configuration:

sudo apt-get install --reinstall tftpd-hpa

puis effectuez manuellement les modifications.

Changer la couleur de fenêtre de Pidgin

J’ai eu besoin de communiquer par IRC sur un chan particulier, mais j’ai été confronté à un problème auquel je ne m’attendais pas: les administrateurs utilisant mirc (qui utilise par défaut un fond noir), ou irssi (qui fonctionne en console…noire de base) avaient choisi d’avoir des couleurs de polices blanches et jaunes pour certains éléments.

Or, Pidgin utilise un fond blanc, ce qui fait que beaucoup de choses étaient illisibles ((et effectuer des sélections du texte pour arriver à le lire est fatiguant à la longue.)).

Empathy permet de changer les thèmes, et de voir les messages écrits en noir sans tenir compte de la couleur d’origine, mais ne m’affichait pas les personnes présentes dans le salon. Donc, il n’a pas été retenu comme solution.

Mais comme avec le libre, tout est faisable, et un simple changement de couleur devant être à ma portée, j’ai cherché comment modifier Pidgin, et j’ai fini par trouver.

Simple quand on le sait, mais quand on ne sait pas, c’est autre chose…

  • Tout d’abord, ne cherchez pas le dossier pidgin, mais bien purple, qui se trouve dans votre home (~/.purple)
  • Par défaut, pidgin utilise le thème GTK de votre environnement. Sinon, et seulement sinon, il crée un fichier gtkrc-2.0 dans le dossier ~/.purple.
  • Si vous utilisez un gestionnaire de fenêtre basé sur GTK et que vous ne voulez pas changer votre thème général, il faudra créer un fichier nommé gtkrc-2.0 dans le dossier ~/.purple qui apportera des modification à pidgin par rapport à votre thème général.
  • Vous mettrez dans ce fichier texte les informations que vous voulez selon la syntaxe que vous donne la FAQ de Pidgin.((si vous connaissez un peu le CSS, vous devriez comprendre comment fonctionne le fichier))

Dans mon cas, cherchant juste à modifier l’aspect des fenêtres, j’ai utilisé le code fourni:

# Create a style called "inverted" where the text and base (the base color behind the widget) are the reverse of typical.
style "inverted"
{
text[NORMAL] = "#FFFFFF"
base[NORMAL] = "#000000"
}
 
# Apply "inverted" to conversation entry box--where you type.
widget "*pidgin_conv_entry" style "inverted"
 
# Apply "inverted" to conversation history pane--where you read the conversation.
widget "*pidgin_conv_imhtml" style "inverted"

Après avoir relancé Pidgin, c’est tout de suite beaucoup plus lisible ((Il ne s’agit pas du chan qui m’intéressait, mais celui ci présente les mêmes caractéristiques et me sert d’exemple)).

Du texte en couleur, mais lisibleSources: http://developer.pidgin.im/wiki/Using%20Pidgin

Clavier qwerty sur Ubuntu Oneiric Ocelot

Après une install d’Oneiric sur une machine, je me suis retrouvé avec un clavier US dans l’environnement graphique et dans le gestionnaire de connexion lightdm.

J’ai bien sûr réglé le clavier avec les outils de gnome ((et de lxde puisque j’ai installé les deux environnements)) mais à chaque redémarrage, je me retrouvais en clavier qwerty au lieu de l’azerty voulu.

Après avoir longuement cherché , je suis tombé sur une discussion qui m’a donné la bonne solution.

Il faut aller consulter le fichier /etc/default/keyboard qui, s’il fait référence à un clavier US, est prioritaire sur les autres réglages.
Si c’est le cas, il faut reconfigurer le clavier pour corriger ce fichier et faire en sorte d’obtenir les bonnes touches

dpkg-reconfigure keyboard-configuration

Et suivre les instructions, ce qui devrait donner un résultat tel que celui ci:

# If you change any of the following variables and X is configured to
# use this file, then the changes will become visible to X only if udev
# is restarted. You may need to reboot the system.
 
# The following variables describe your keyboard and can have the same
# values as the XkbModel, XkbLayout, XkbVariant and XkbOptions options
# in /etc/X11/xorg.conf.
 
XKBMODEL="pc105"
XKBLAYOUT="fr"
XKBVARIANT=""
XKBOPTIONS="lv3:ralt_switch,compose:rctrl"
 
# If you don't want to use the XKB layout on the console, you can
# specify an alternative keymap. Make sure it will be accessible
# before /usr is mounted.
# KMAP=/etc/console-setup/defkeymap.kmap.gz

J’ai perdu du temps à trouver la solution, espérons que ça vous sera utile.

Source: http://forum.ubuntu-fr.org/viewtopic.php?pid=6654251#p6654251

Editer les pages web avant de les imprimer

Ne vous est il jamais arrivé de vouloir imprimer une recette, un article ou n’importe quelle information d’une page sans vouloir imprimer l’ensemble des commentaires, des pubs, des menus, des bannières, des boutons, … ?

Moi, c’est souvent.

Alors que j’imprime peu et que ça m’horripile d’imprimer des pages inutiles (sauvons les arbres, mangeons des castors), la partie qui m’intéresse est toujours coupée entre deux pages ou mise en page sur une largeur de 3 cm…

Au moment où je me décide enfin à chercher une solution pratique, korben fait un article sur le sujet, le jour même ((et c’est pas la première fois, il doit lire dans mes pensées)).

Ça s’appelle Print Edit et c’est une extension Firefox qui rajoute une option au menu d’impression et dans la barre de boutons permettant de sélectionner les cadres de la page pour les supprimer ou les masquer. Ça fonctionne très bien, il faut juste faire attention à ses sélections (elles se cumulent quand vous cliquez n’importe où) avant de supprimer, mais un bouton « undo » existe permettant le retour en arrière.

Entête Crontab

Pour mémo, voici les lignes devant être présentes en entête de crontab pour éviter les soucis. En effet, le cron utilise son propre processus/shell au lancement, et on a parfois des erreurs difficiles à cerner de chemin non trouvé ou de langage.

A adapter à votre situation

# m h  dom mon dow   command
MAILTO= »monadressel@monfai.fr »
PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games
SHELL=/bin/bash
LC_ALL=fr_FR.UTF-8

Meuh!*

Hier, on avait:

  • Des forfaits téléphoniques sans internet ((si tu appelles, forcément, tu n’utilises pas le mail)) ou avec internet mais sans voix ((si t’as internet, t’es sur facebook, donc pas besoin ni le temps de téléphoner. A qui, d’abord, t’as pas d’amis?))
  • Des forfaits dont le moindre changement d’option ré-engage pour 2 ans ((Vécu: modifier mon forfait de 2h à 3h ne changeait rien (sauf le prix) mais le modifier de 3h à 2h rallonge ma période d’engagement))
  • Des forfaits qui « prennent en compte le financement du mobile » même quand le mobile voulu n’est pas proposé dans les choix et qu’on le paye cash, à part.
  • Des forfaits dont le moindre usage classique actuel (voix +mail) coûte un bras
  • Des forfaits qu’il est parfois plus avantageux de prendre chez le même opérateur…à l’étranger, avec l’option roaming!
  • Un service client qui n’a que le nom pour associer les mots service et client (( vécu: devant ma menace de résilier, mon correspondant hilare: « Vous pensez vraiment trouver mieux ailleurs? Vous reviendrez chez nous dans 2 mois! » et qui me fait des « cadeaux » à tour de bras par courrier après ma lettre de résiliation « sous réserve de réengagement))
  • Des sonneries de 10 secondes, qui obligent à répondre tout de suite (y compris au volant, avec les conséquences qu’on connait), comptent pour un appel vers la messagerie et un rappel du correspondant.

Les opérateurs commencent à admettre qu’ils ont pris leurs clients pour des vaches à traire. J’espère vraiment que demain sera aussi fracassant qu’avant hier

*Tu sais ce qu’elle te dit, la vache à lait?

Traduisez les sites en un clic avec google

Ne pas se froisser avec l'Europe...

Lost in translation (Je suis perdu dans ma traduction)

Auparavant , google permettait l’accès à un outil permettant la traduction d’une page en un clic, en mettant un marque page dans la barre personnelle. Bien pratique pour naviguer sur des forums en norvégien, russe ou tagalog que je pratique peu mais qui sont parfois les seuls à contenir les infos que l’on cherche.

J’ai essayé de remettre la main sur la page en question ((google, traductions, outils, liens de traduction)) ,  mais impossible. Si vous savez où le retrouver, indiquez le moi dans les commentaires.

Heureusement, il est possible de refaire la même chose, puisque j’ai gardé une version sur l’une de mes machine. Il m’a suffit de reprendre l’adresse du raccourci.

Back to the future (retrouver la fonction en avance sur son temps)

Pour recréer le bouton, sous firefox, faites un clic droit sur la barre personnelle, et choisissez nouveau marque page. Nommez le Français (ou ce que vous voulez), puis copiez le code ci dessous dans le champ d’adresse:

javascript:var%20t=((window.getSelection&amp;&amp;window.getSelection())||(document.getSelection&amp;&amp;document.getSelection())||(document.selection&amp;&amp;document.selection.createRange&amp;&amp;document.selection.createRange().text));var%20e=(document.charset||document.characterSet);if(t!=''){location.href='http://translate.google.fr/translate_t?text='+t+'&amp;hl=fr&amp;langpair=auto|fr&amp;tbb=1&amp;ie='+e;}else{location.href='http://translate.google.fr/translate?u='+escape(location.href)+'&amp;hl=fr&amp;langpair=auto|fr&amp;tbb=1&amp;ie='+e;};

Enregistrez et rendez vous ensuite sur un site « en étranger » (par exemple http://edition.cnn.com/ ou Ubuntu, c’est vraiment le cirque en Allemagne ) puis cliquez sur le bouton du marque page créé. Le site sera automatiquement traduit.

A simple plan (Faisons simple)

Il y a une méthode encore plus simple! Faites glisser le lien ci dessous (ne cliquez pas dessus, faites le glisser) dans votre barre personnelle puis lâchez le. Vous aurez le bouton souhaité.La méthode est identique avec Opera, sauf qu’il faut appuyer sur majuscule pour lâcher le bouton en barre d’outils.

Français

Plus loin (que le bleu du ciel)

Si vous voulez des boutons dans d’autres langues, il suffit de modifier les « fr » du code par l’abréviation de la langue désirée.

Cette méthode doit pouvoir fonctionner avec les autres navigateurs et les autres systèmes d’exploitation. Si ça marche pour vous, merci de l’indiquer dans les commentaires.

Pas de /var/log/messages sur Ubuntu Maverick/Natty

Sur Ubuntu Natty, j’ai eu la surprise de constater qu’il n’y avais pas de fichier /var/log/messages.

Cela vient du fait que les développeurs ont estimé qu’il était redondant avec les autres fichiers de logs, et ils ont décidé de ne plus l’activer.

…les journaux que vous recherchez sont dans /var/log/syslog. Cela a été une décision délibérée dans maverick pour réduire les chevauchements de log (tout ce qui est logué dans /var/log/messages a toujours été aussi enregistré dans /var/log/syslog ).

Or, certaines applications l’utilisent et se plaignent de ne pas le trouver. On peut le créer vide, mais il le restera. On peut aussi créer un lien vers /var/log/syslog.

Mais le mieux est de le réactiver. Il suffit d’éditer le fichier /etc/rsyslog.d/50-default.conf et de dé-commenter les lignes suivantes:

*.=info;*.=notice;*.=warn;\
auth,authpriv.none;\
cron,daemon.none;\
mail,news.none -/var/log/messages

ensuite, redémarrez ou lancez

sudo restart rsyslog

Source: http://ubuntuforums.org/showthread.php?t=1728570

Hosts (reur et damnation), la ‘route’ sera longue…

J’ai découvert avec stupeur l’article de Génération Linux qui cite un article de TF1 expliquant comment et pourquoi  ((enfin, le pourquoi n’est pas très clair)) supprimer les fichier hosts d’un ordinateur sous linux (GNU/linux).

(Outre le fait que je suis en phase avec benjamin sur ce qu’il faut penser sur TF0) Je vais vous expliquer réellement à quoi il sert, et comment s’en servir un peu plus (vu que benjamin ne le fait pas). Et je vais le faire à un niveau d’explication qu’un lecteur de TF0 puisse comprendre. Mais je vous le dis tout de suite:

Ne supprimez pas votre fichier /etc/hosts!

Principe de fonctionnement

Lorsque vous voulez aller visiter le site de TF0 ((A publier des bêtises pareil, c’est eux qui vont me servir de cobaye, tant pis)) , vous allez taper l’adresse tf0.fr dans la barre d’adresse, pas leur adresse IP. Parce que c’est plus simple à se souvenir. Or, les ordinateurs communiquent entre eux avec l’adresse IP, parce qu’ils sont conçus comme ça ((et surtout parce que ça fonctionne, pas seulement pour enbêter les téléspectateurs de TF0)). Votre ordinateur va donc s’adresser à un service de DNS (domain name system (« système de nom de domaine ») qui va faire la correspondance entre l’adresse que vous connaissez, et l’adresse IP du site auquel s’adresser.

C’est un peu le GPS de l’informatique: vous connaissez l’adresse, il vous dit où ça se trouve. Et c’est comme ça pour TOUS les services réseau.

Mais, historiquement, (c’est à dire quand j’étais plus jeune non rien), les ordinateurs n’étaient pas connectés à internet. Ils n’étaient même parfois pas connectés du tout (( je sais, c’est l’horreur, la préhistoire…Incroyable mais vrai, ni wifi, ni 3G!)) mais les services réseau nécessitaient quand même d’avoir leur réponse même en l’absence de DNS.

Donc, les informaticiens ont décidé ((arbitrairement, je sais, mais les informaticiens sont comme ça)) d’utiliser un fichier qui ferait la correspondance entre un nom et une adresse IP. Et il faut bien admettre que ça marche! Et que c’est pratique! On le verra bientôt.

De plus, ce fichier étant local, la réponse est plus rapide que d’aller interroger un serveur chez votre FAI, même s’ils répondent assez vite.

Z’en ont de la chance, les linuxiens!

Ce système de fonctionnement n’est pas spécifique à linux, windows possède le même, inspiré de Unix lui aussi. C’est le fichier hosts que vous trouverez dans windows\system32\drivers\etc\hosts (pour XP)

Comparons un fichier hosts et un fichier hosts…:

hosts-linux

hosts-linux

hosts-windows

hosts-windows

Que remarque t-on?

  • Sous linux, on peut lire le fichier dans une console et c’est plus pratique,
  • Sous linux, on peut avoir de la couleur, et c’est beau,
  • Sous linux, on utilise le fichier hosts (en tout cas en ce qui me concerne) alors que sur windows il est là, mais atrophié et malheureux, sans pour autant être anémique vu qu’il a plus de commentaires que d’utilité.
  • Les deux sont identiques, au moins dans l’aspect. Une IP, un nom.

Comment se servir du fichier hosts?

Vu que le fichier est là, autant l’utiliser. Comme il est interrogé par défaut avant la résolution DNS, on peut le modifier et s’amuser.

Dans ce fichier, que vous devrez éditer avec les droits root, ajoutez la ligne suivante:

82.242.245.98          www.tf1.fr

Puis ouvrez votre navigateur pour aller sur www.tf1.fr. Vous constaterez que MON DIEU, MA SOCIÉTÉ VIENT DE PRENDRE POSSESSION DE TF1 ET NOUS SOMMES LES MAITRES DU MONDE!!!

Ah non, c’est juste que mon ordinateur croit que pour aller sur TF1, il faut se rendre à l’adresse Absolacom… ((/me retrouve un rythme cardiaque correct)).

Tiens, ça me donne une idée ((autre que pourrir les ordinateurs de mes collègues, c’est pour ça qu’il faut les droits root. Ah, on me souffle dans l’oreillette qu’avec windows on peut sans droits particuliers… A vérifier de votre côté.)): et si j’indiquais dans mon fichier hosts l’adresse de toutes ces vilaines publicités qui apparaissent sur mon ordinateur?

Eh bien, au lieu d’attendre des heures que google analytics veuille bien répondre avant de m’afficher la page, ou avoir des sites de casino, ou de jeunes filles slaves  voulant à tout prix chatter avec moi (( ce que je peux comprendre)) ou des sites voulant augmenter mon anatomie ((ce que j’ai du mal à comprendre)) , j’aurais une erreur, certes, mais je verrais le reste de ma page. Plus vite, mieux, plus agréable ((presque du Daf Punk)). Vous trouverez plein d’endroits qui vous donneront une liste à ajouter à votre fichier hosts en cherchant un peu sur le net.

Regardez dans mon hosts, la solution pour éviter le rickroll s’y est cachée: saurez vous la retrouver?

Comme je choisis le nom et l’IP à insérer, je peux aussi y indiquer mes machines locales. Ainsi, si je veux faire un ping ou un ssh sur mercure (un de mes postes), je peux le faire avec son IP ou le nom que je lui ai donné dans ce fichier. Pas besoin de DNS sur un petit réseau!

Cool! Je vais pouvoir mettre toutes les adresses de l’internet dans mon fichier hosts et je n’aurais plus besoin de DNS pour naviguer!

Oui, en principe. En pratique, quand ce fichier atteint une certaine taille, il génère l’effet inverse de celui recherché: c’est long à chaque requête.

Et puis c’est surtout la mise à jour qui est laborieuse. Imaginons que google change d’IP, vous ne pourriez plus atteindre leur site tant que vous n’aurez pas modifié le fichier hosts, ce qui est compliqué quand il y a beaucoup d’entrées.

Même pas peur! Et si je le supprime, mon fichier hosts, ça donne quoi?

Ça donne que TF0 pourra à nouveau afficher des pubs sur votre ordinateur. Mais ça va surtout mettre le b…l dans les services réseau qui vont vouloir s’adresser à localhost et qui n’auront plus l’IP correspondante ((je sais, mais c’est bête, un ordinateur)). Un certain programme ((que je ne citerais pas)) se rabat sur ‘localhost’ quand le site demandé ne répond pas (timeout) et repère l’adresse 127.0.0.1 pour passer le message disant qu’il y a un problème. Sauf que s’il n’y a plus le fichier hosts, il n’y a plus de 127.0.0.1 pour localhost, donc le programme est en timeout et se rabat sur localhost qui passe en timeout et le programme se rabat sur localhost qui…. ((comment ça, je l’ai déjà dit?))

Bref, que du bonheur grâce à TF0 ((et ses rédacteurs)).

Résumons un peu:

  1. Le fichier hosts n’a un rôle de filtrage du web que si on lui a demandé de le faire. Le supprimer n’apporterait qu’un comportement non désiré à ce niveau (sauf pour les publicitaires)
  2. Que l’adresse soit présente ou pas dans le fichier hosts, tant qu’un DNS est présent sur le réseau, et l’ordinateur paramétré pour l’interroger, on accèdera au site choisi.
  3. Le fichier hosts n’est pas inutile pour le fonctionnement même de l’ordinateur. Amusez vous à le supprimer sur windows, histoire de rigoler ((puis redémarrez en console, utilisez vi pour le recréer. Comment ça c’est pas possible?!?))
  4. Le fichier hosts n’est pas créé par votre FAI ou par les serveurs DNS. Il ne contient QUE ce que vous y mettez. Dans le cas contraire, ce serait inutile de le supprimer, puisqu’il serait recréé à chaque connexion. ((l’auteur confond sans doute avec le fichier /etc/resolv.conf))
  5. L’auteur ne sait pas lire un man, l’option -f de rm sert à ne pas avoir de demande de confirmation dans tous les cas, certainement pas à effacer un fichier protégé en écriture, qu’il soit protégé ou pas ((ça veut dire quoi, protégé? J’ai les droits ou pas de le supprimer?))

Conclusion

  1. TF0 fait une grande confiance à ses rédacteurs
  2. Le niveau linux chez eux  est le même que le niveau auquel je place leurs émissions
  3. Je vais me prendre un procès si je ne supprime pas leur nom dans mon article (checked)
  4. Faut pas toucher à mon linux quand je voulais dormir le dimanche matin mais que les moustiques m’agressent!

PS: supprimez la ligne que je vous ait fait ajouter au fichier hosts si vous voulez retourner sur TF1 et pas sur le site de ma société.