PROJET AUTOBLOG


Korben

source: Korben

⇐ retour index

Mise à jour

Mise à jour de la base de données, veuillez patienter...

Une erreur de code sur StackOverflow perpétue un bug depuis plus de 10 ans

mercredi 19 février 2020 à 17:00

Je suis tombé sur le thread Twitter d’un développeur répondant au doux pseudo de « Foone » qui a soulevé un problème que j’ai trouvé passionnant !

Savez-vous pourquoi, lorsque vous avez l’outil de gestion des drivers de Razer baptisé Synapse, Docker pour Windows ne veut pas se lancer ?

Oui c’est étrange. Mais vous allez voir, l’explication est folle.

A la base chacun de ces programmes est conçu pour être lancé une seule et unique fois. On ne peut pas lancer 2 docker.exe ou 2 synapse.exe en même temps. Pour cela, les développeurs des applications utilisent ce qui s’appelle un mutex (Exclusion mutuelle).

Jusque là rien d’anormal. Seulement, bizarrement, Docker et l’outil de Razer s’excluent l’un l’autre. En analysant un peu le code, foone a remarqué que pour fixer ce mutex global, les développeurs des 2 outils utilisaient ce code :

string.Format("Global{0}", (object) Assembly.GetExecutingAssembly().GetType().GUID);

L’objectif est de récupérer l’identifiant unique du processus exécuter (GUID) pour empêcher qu’une seconde copie du programme ne soit lancée. Seulement, en observant le code, on peut voir que la fonction GetType() est utilisée. Cette fonction ne récupère pas l’instance en elle-même, mais le type de cette instance. Et ici l’instance n’est pas Docker ou Synapse, mais l’instance du framework .Net lui-même qui est utilisé pour faire tourner ces applications.

Et comme le GUID qui est récupéré ensuite est celui de l’instance .Net, et bien il est le même pour les 2 applications. D’où l’exclusion mutuelle.

Mais attendez, ce n’est pas tout. En creusant un peu, Foone s’est rendu compte que tout cela venait de Stack Overflow et plus exactement d’un certain Nathan qui en 2009 demandait comme récupérer ce GUID.

Et malheureusement, la top réponse qui lui ai donné contient la fameuse erreur.

1 an et 1 mois plus tard, un autre internaute indique qu’il y a une erreur et donne la bonne ligne de code. Malheureusement TROP TARD !

Et c’est comme ça que bientôt 11 ans plus tard, on se retrouve avec des erreurs de ce type dans nos outils récents.

Évidemment, pour empêcher cela, il aurait fallu que les développeurs de ces outils aillent au-delà du copier-coller, mais comment leur en vouloir, on fait tous ça ou presque.

« Je copie, je colle, je compile, je regarde, ça marche, youpi et je passe à autre chose.« 

Toutefois, maintenant que vous savez, pensez à cette histoire la prochaine fois que vous copierez du code en provenance du net.

Il semblerait que Docker ait déjà corrigé le souci, libérant le mutex de Razer :).

<script async src="https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"> <script> (adsbygoogle = window.adsbygoogle || []).push({});

Batocera Linux – Un OS pour transformer votre PC, Raspberry Pi, Odroid et autres nano ordinateurs en machine rétrogaming

mercredi 19 février 2020 à 09:00

Si vous êtes amateur de jeux rétro, vous connaissez sans doute Retropie et Recalbox, mais connaissez vous Batocera ?

Cet OS basé sur Linux offre une interface permettant de jouer à des tas de jeux sur tout un tas de consoles, de la Gameboy, aux ZX81 en passant par la MegaDrive, Atari, Commodore, Mame, SNES…etc. La liste complète se trouve ici.

La particularité de Batocera, c’est que l’OS fonctionne aussi bien sur PC (32 et 64 bits) mais aussi sur les architectures d’ordinateurs tels que l’Odroid C2, XU3/4/4Q, GO ADVANCE et N2 ou encore des ROCKPro64, Asus Tinkerboard, MQmaker MiQi, Retroflag GPI Cas, Amlogic S905 sans oublier les Raspberry Pi (0, B/B+, A/A+, 2 B, 3B/ 3B+ et 3A+.

Détail remarquable, Batocera est livré avec quelques ROMs de test (et légales dont un jeu de 2048 sur NES) pour vous amuser en attendant d’aller vous fournir chez votre revendeur agréé de ROMs illégales préférées ^^.

Et pour ceux qui veulent se lancer, il y a un très bon wiki ici et un forum ici pour poser vos questions.

Le site de Batocera est ici.

<script async src="https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"> <script> (adsbygoogle = window.adsbygoogle || []).push({});

Faire tourner Windows sur une partition Btrfs c’est possible !

mardi 18 février 2020 à 17:00

Pour les courageux sous Windows qui s’intéressent au système de fichiers Btrfs ainsi qu’aux bootloader open source, voici de quoi vous amuser. Ce projet hébergé sur Github et baptisé Quibble est encore à l’état de proof of concept, mais permet d’or et déjà de démarrer un Windows (de XP à Windows 10) installé sur un système de fichier différent de NTFS.

Www Electronicdesign Com Sites Electronicdesign com Files Wtd Linux Table New
Les principales différences entre EXT4, XFS et BTRFS

Si vous voulez essayer, je vous recommande de passer par une VM type Qemu. La procédure qui est détaillée ici consiste à installer votre Windows normalement sur une partoche NTFS, puis à installer WinBtrfs (drivers Windows pour Btrfs) pour ensuite éteindre la VM et copier le système installé sur une nouvelle partition Btrfs. Il faudra alors installer Quibble sur la partition système EFI, l’ajouter à la liste des options de boot UEFI et faire quelques réglages (lisez la doc) pour ensuite profiter de cet environnement Windows sur un système Btrfs.

Ce n’est pas encore très utile en l’état, mais c’est rigolo et possible, alors pourquoi se priver ?

<script async src="https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"> <script> (adsbygoogle = window.adsbygoogle || []).push({});

L’outil de Seagate pour récupérer des fichiers effacés est disponible gratuitement

mardi 18 février 2020 à 15:59

Si vous me suivez depuis des années, vous connaissez surement mon amour pour tout ce qui est récupération de données effacées.

C’est vraiment un truc que je kiffe… Pouvoir ressusciter un fichier malencontreusement effacé ou gratter sur des disques afin de comprendre leur histoire, un peu comme un archeologue qui interprête les vestiges du passé.

Alors bien sûr, pour ce faire, il existe BEAUCOUP d’outils dont TestDisk, Recuva ou Disk Drill pour ne citer qu’eux.

Mais dernièrement, le logiciel de récupération du fabricant Seagate a fait son apparition sur la toile pour un prix défiant toute concurrence : 0 $

Rebrandé sous le nom de Pixel8, Premium Seagate File Recovery Software est disponible ici pour Mac et Windows. (Oui ça fonctionne avec les disques et clés usb de toutes les marques)

L’outil est gratuit mais d’après ce que j’ai compris, vous possédez un nombre limité de récupération… Mais comme il n’y a rien d’autre de précisé, je ne saurais vous dire combien exactement… Certains parlent d’un an gratos, d’autres d’utilisation à vie…etc. C’est un modèle de licence un peu spécial mais bon, ça se teste et quand les vannes seront fermées, et bien il sera grand temps de changer de soft. En attendant, si vous voulez mettre toutes les chances de votre côté, vous pouvez aussi vous amuser à générer plusieurs licences et à les conserver au cas où la première viendrait à échouer.

Après sur son fonctionnement, c’est assez classique. Une première fonctionnalité permet de tester la santé d’un disque dur, d’une clé USB ou d’un SSD.

Une seconde option permet de scanner le disque dur à la recherche de fichiers effacés de manière plus ou moins profonde. Et bien sûr de les restaurer.

Enfin, une dernière fonctionnalité propose d’effacer de manière sécurisée (donc en chiffrant) le support de votre choix pour justement empêcher que quelqu’un ne récupère vos données.

J’ai donc fait plusieurs tests, après avoir déterré ma boite à clés USB et autres petits objets de stockage et j’ai pris les plus vieilles clés que j’avais pour tester. Et je suis retombé sur des trucs pas piqué des vers : sextape d’un ancien ministre, comptes bancaire d’un ex-PDG d’un constructeur automobile, actes de propriété d’un ancien maire d’une ville des Hauts-de-Seine récemment libéré… Ah non, juste quelques MP3, des vieilles séries américains et bien sûr des tonnes de photos de votre serviteur dans des déguisements plus ou moins expérimentaux.

Après j’ai fait quelques tests comparatifs avec Disk Drill et je peux vous dire que Disk Drill a su trouver beaucoup plus de choses et surtout à réussi a exporter de manière lisible des fichiers qui n’étaient pas lisibles après exports via Premium Seagate File Recovery Software. Donc à voir selon vos besoins, mais sachez que si celui-ci ne trouve rien, il est possible qu’avec un autre outil, ça trouve plus de choses.

Source

<script async src="https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"> <script> (adsbygoogle = window.adsbygoogle || []).push({});

CunningBot : trouver un nom de domaine en utilisant les mots connexes

mardi 18 février 2020 à 09:00

Vous le savez (notamment si vous bossez dans le SEO ou l’e-commerce) il n’est pas toujours facile de trouver un bon nom de domaine pour le site, le blog ou la boutique que vous voulez lancer. Souvent votre mot clé ou le nom de votre thématique existe déjà et vous devez alors « bidouiller » un peu, en ajoutant des tirets, un nombre, une extension bizarre ou une région, parmi d’autres exemples (kor-ben, korben123, korben.zechef ou korbenclermont, etc.).

Autre option qui existe : trouver un mot connexe, un synonyme ou quelque chose de très approchant qui représente bien l’idée de départ. Parfois c’est même mieux, car ça affine votre niche. Mais ce n’est pas toujours simple à trouver, les idées peuvent vite manquer. Selon un rapport de l’Afnic (lien PDF), daté de 2017, il y avait déjà plus de 350 millions de domaines enregistrés dans plus de 1500 extensions différentes (dont 3.2 millions de .fr). Dans certaines thématiques cela revient à chercher une aiguille dans une botte de foin.

C’est pourquoi il existe des outils comme CunningBot qui permettent de lister toutes ces idées que vous pourriez avoir négligées. En plus c’est gratuit et le site annonce ne pas surveiller vos recherches à son propre avantage tout en utilisant les DNS Google (8.8.8.8./8.8.4.4.) pour éviter l’éventuel vol de domaine par DNS. Rien ne permet de prouver la véracité de l’affirmation cela dit.

Moteur de recherche de mots connexes pour domaines avec CunningBot

Une fois sur le site vous renseignez juste votre mot clé recherché dans le moteur et vous choisissez l’extension dans laquelle vous voulez trouver votre domaine (.com, .fr, .info ou autres). Vous recevrez parfois des centaines de propositions avec chaque fois la disponibilité du site ou non. Ces propositions sont faites à base de dizaines de préfixes, suffixes, fusionnages, remplacements … parmi les plus populaires.

Test Cunningbot avec le mot Pirate

Du coup, comme vous le voyez dans la capture ci-dessus, l’outil est plutôt axé monde anglophone. Au final sur les centaines d’idées il faudra faire pas mal de tri, sauf si votre site est destiné à l’international bien entendu (dans ce cas c’est bombance).

Dans mon test sur le mot piratage il y a eu des choses sympas auxquelles je n’aurai pas pensé de moi-même (j’ai honte de reconnaitre cette faiblesse mais je me dois d’être honnête avec vous). « Pirathlon » par exemple, ça sent bon la discipline olympique du piratage non ? « Piratocracy » rendrait ses lettres de noblesses au terme, etc.

Autre petite chose à noter, les domaines disponibles ne le sont pas toujours vraiment. J’ai fait le test avec linux.fr qui est dispo selon eux (à mon étonnement), mais qui est en fait uniquement transférable selon OVH, pas vraiment pareil 😉

Cela dit ça reste un outil à tester, il ne vous faudra que quelques secondes pour lancer votre recherche et peut-être que vous récupérerez de nouvelles idées. L’illumination peut venir de partout.

Source

<script async src="https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"> <script> (adsbygoogle = window.adsbygoogle || []).push({});