Archives de l’auteur : SiZiOUS

Apache Maven : Comment extraire les valeurs des noeuds XML depuis le fichier pom.xml (en pur batch !)

Si vous êtes un développeur Java vous connaissez très certainement Apache Maven, qui est à peu près l’équivalent de Make mais pour le monde Java.

Il y a quelques jours j’ai dû réfléchir à une méthode d’extraction des valeurs de certains nœuds du fichier pom.xml pour automatiser certaines opérations. Par exemple, j’ai voulu extraire les valeurs de groupId, artifactId et version depuis un projet Maven, c’est-à-dire depuis le fichier pom.xml.

J’ai finalement créé une solution en pur batch Windows pour le faire, et j’ai appelé ce petit outil POM Tool.

Et voici son code source :

Vous devez simplement copier/coller ce code source dans un nouveau fichier texte et l’appeler pomtool.cmd.

L’utilisation est très simple :

Ceci va vous donner la valeur du nœud artifactId du fichier  c:\temp\my-maven-project\pom.xml !

Bien entendu vous pouvez appeler POM Tool depuis un autre fichier batch, par exemple :

Dans ce cas, la variable %PROJECT_NAME% contiendra la sortie du programme POM Tool, dans cet exemple il s’agit de la valeur du nœud description du fichier pom.xml ! 🙂

N’hésitez pas à commenter si vous avez des questions ! 🙂

Installation de DiscJuggler sous Windows 10

Si le monde de la Sega Dreamcast vous est familier, vous connaissez très certainement le format d’image disques CDI. Les images CDI sont la plupart du temps des images amorçables pour la Dreamcast : il suffit simplement de graver l’image disque CDI puis de mettre le CD-R ainsi gravé dans la console pour lancer le jeu.

Les images CDI sont générées avec un outil nommé Padus DiscJuggler. La dernière version (le développement est arrêté) est la version 6.00.1400 sortie en 2007. Aujourd’hui, je voulais installer cet outil sur mon ordinateur Microsoft Windows 10 Pro x64 Update 1803, mais malheureusement, impossible de l’installer, j’ai systématiquement ce message qui s’affiche :

You need to reboot your system.

C’est évidemment ce que j’ai fait. J’ai redémarré 3 fois mais rien à faire : ce message s’affiche toujours et le logiciel ne s’installe pas.

Après avoir désassemblé l’exécutable, le problème est tout simple. Il est causé par la présence de valeurs dans le Registre de Windows sous la clef RunOnce. Puisque DiscJuggler est un programme 32-bits, il faut donc vérifier si des entrées sont présentes à ces endroits :

Donc effectivement dans mon cas j’avais bien des valeurs dans les clefs ci-dessus :

Une valeur est présente dans la clef RunOnce

En théorie, il suffit alors de redémarrer l’ordinateur pour que les clefs RunOnce soient vidées automatiquement de leurs valeurs, en effet, les programmes présents dans ces clefs sont en théorie exécutés une seule fois puis ces valeurs sont supprimées (dans la capture d’écran, la valeur ici se nomme PreRun). Mais dans mon cas, rien n’y fait, la clef RunOnce contient toujours quelque chose : ce fameux programme PreRun de Gigabyte ! Cela car je possède effectivement une carte mère Gigabyte et j’ai par conséquent installé certains outils fournis avec ma carte mère. Même en la supprimant à la main (ne pas oublier de lancer regedit en mode Administrateur pour le faire), elle revient toujours automatiquement (il suffit de faire F5 pour la voir réapparaitre au bout de quelques secondes…). Donc l’installation de DiscJuggler affiche toujours You need to reboot your system.

Dans mon cas, il suffit simplement d’arrêter le service GIGABYTE Adjust pour que la valeur  PreRun ne soit pas recréée le temps d’installer DiscJuggler.

Arrêt du service GIGABYTE Adjust

Une fois ceci fait, l’installation peut se faire :

Installation de Padus DiscJuggler 6.00.1400 sous Windows 10

Et cerise sur le gâteau, le programme fonctionne très bien sous Windows 10 ! 🙂

Préparer le Raspberry Pi en mode serveur

Comme vous le savez certainement déjà, le Raspberry Pi est un merveilleux nano-ordinateur avec beaucoup de fonctionnalités. Par défaut, le système d’exploitation Raspbian est configuré pour être utilisé comme un ordinateur de bureau. Mais il vaut mieux l’utiliser comme un serveur ! Pour ce faire, nous devons effectuer un nettoyage (c’est-à-dire supprimer des paquets inutiles) et ajouter quelques paquets supplémentaires pour convertir notre Pi en un vrai serveur !

Définition d’une adresse IP statique

Avant de commencer, vous devez avoir défini une adresse IP statique locale. Cliquez ici pour apprendre comment.

Si vous avez une adresse IP dynamique de votre FAI, vous devez utiliser No-IP ou quelque chose de similaire afin d’accéder au Pi à partir de n’importe où. Cliquez ici pour apprendre comment.

Suppression des paquets inutiles

Les commandes ci-dessous suppriment tous les paquets inutiles.

Après cela, nous avons un Raspbian OS plus léger.

Mise à jour du Pi

Maintenant, il est temps de mettre à jour votre Pi, pour être sûr que vous utilisez les derniers paquets.

Entrez les commandes suivantes :

Si vous le souhaitez, vous pouvez mettre à niveau la distribution si vous avez installé votre Pi il y a longtemps :

Ensuite, vous pouvez également mettre à jour le firmware du Pi :

Ensuite, pour terminer la mise à jour, redémarrez le Pi :

Créer un script de mise à jour

C’est une bonne idée de créer un script shell pour exécuter toutes ces commandes régulièrement :

Copiez le contenu suivant dans le fichier ainsi créé :

Puis appuyez sur CTRL + X  et Y  pour sauvegarder.

Rendez-le exécutable :

Et maintenant, vous pouvez l’exécuter via :

Ou bien alors vous pouvez utiliser cron pour l’exécuter régulièrement automatiquement si vous le souhaitez, mais je n’aime pas cela car je vérifie toujours la compatibilité avant de faire quoi que ce soit !

Installation de xRDP (facultatif)

xRDP est un excellent paquet pour accéder au Raspberry Pi via RDP, qui est la technologie de Microsoft pour utiliser un ordinateur à distance. Bien sûr, cela est utile si votre ordinateur quotidien est basé sur Windows ! Dans ce cas, vous devez utiliser l’exécutable mstsc. Si vous avez un système Unix comme Ubuntu ou MacOS X, vous pouvez utiliser Remmina (qui est un client RDP libre) ou simplement rester sous SSH (qui est activé par défaut dans Raspbian) !

Pour l’installer, suivez ce guide ou suivez les étapes résumées ci-dessous.

La première chose à faire est de désactiver le client RealVNC installé avec la dernière image Raspbian car cela cause des problèmes à xRDP.

Entrez la commande suivante:

Choisissez l’option 5 Interfacing Options , puis P3 VNC. Désactiver lorsque demandé. Après cela, installez le paquet xRDP:

Finalisez l’installation en résolvant le problème du curseur ‘X’ (qui reste en ‘croix’ au lieu d’afficher la flèche) :

Maintenant, votre Raspberry Pi peut être utilisé via xRDP.

Terminé !

Alors maintenant vous avez un Pi tout propre et prêt à être utilisé comme un serveur ! 🙂

Bonne année 2018!

Bonne année 2018 à tous !

Oui je sais mon site a l’air mort mais en fait c’est pas le cas, j’ai juste pas trop le temps 🙂

Mais je suis toujours là 😉

Catégorie : Vie

Comment contourner le mot de passe de session de Windows 10

La semaine dernière j’ai dû aider quelqu’un qui avait perdu son mot de passe de session sous Windows 10 Pro x64, version 1703 sorti en Mars 2017 (ID 10204029). Nous étions dans la pire des situations pour plusieurs raisons :

  • Le seul compte disponible était celui bloqué par le mot de passe perdu. Et il n’y avait pas le compte Administrateur ou équivalent d’activé.
  • Aucune clef USB de sauvegarde du mot de passe n’avait été générée.
  • C’est un PC sous Windows 10, donc les méthodes classiques basées sur Ophcrack ou Offline NT Password & Registry Editor ne fonctionnent pas, en tout cas dans ma situation. Pour Kon-Boot en revanche, aucune idée si celui-ci fonctionne puisque c’est un shareware, donc je n’avais pas la possibilité de le tester.
  • Il s’agissait d’un Ultrabook dépourvu de lecteur de disques optique (ça c’est pour le côté encore plus embêtant de la chose).
  • Nous n’avions aucun média de restauration permettant de réinstaller Windows 10 le cas échéant : il était donc impossible de restaurer l’ordinateur dans son état d’origine, car la partition de restauration fournie avec l’ordinateur portable ne fonctionne que dans le cas où le mot de passe d’un compte administrateur est fourni.

Autrement dit l’espoir de s’en sortir facilement et sans trop de pertes était assez faible. J’étais un peu désespéré après avoir essayé pendant 2 bonnes heures de trouver une solution. Et c’est en restant bloqué sur l’écran de connexion que j’ai eu une idée…

Principe

L’idée est de détourner une fonctionnalité fournie par l’écran de connexion pour lancer un Invite de commandes afin de pouvoir changer le mot de passe du compte bloqué.

Notez que la solution que je fournie ici ne s’applique que dans le cas où vous n’avez pas chiffré les partitions avec BitLocker. Si c’est le cas, vos données seront définitivement perdues lors du changement de mot de passe… Si vous ne savez pas ce que c’est, à priori vous n’êtes pas concerné.

Prérequis

Globalement, la méthode nécessite 2 choses :

  • Un média contenant l’installation de Windows 10, au format DVD ou Clef USB ;
  • Et de savoir comment démarrer sur ce média sur l’ordinateur en question.

Matériel nécessaire

Comme précisé en introduction, il faut simplement un média d’installation de Windows 10. Je précise qu’il est inutile d’avoir une clef de licence pour cette opération.

Si comme dans mon cas, l’ordinateur en question ne dispose pas de lecteur de disques optique (DVD-ROM), une clef USB fera l’affaire. Dans ce cas, il faut également récupérer un ISO de Windows 10, voire en créer un depuis une autre machine, afin de créer une clef USB amorçable (bootable) avec contenant le programme d’installation de Windows 10. Il existe pléthore de tutoriaux donc je ne détaille pas la marche à suivre ici pour réaliser cette opération.

Démarrage sur un périphérique externe

Il faut impérativement trouver la touche permettant à votre ordinateur de démarrer (« booter ») sur le DVD-ROM ou la clef USB contenant l’installation de Windows 10. Pour cela, vous devez chercher dans les réglages de votre BIOS. Pour le HP Envy, il faut appuyer de façon répétée sur la touche Echap : un menu s’affiche alors, comportant une option permettant de choisir le périphérique de démarrage.

Je ne peux pas décrire cette partie étant donné que cela dépend fortement du matériel utilisé.

Méthode

Maintenant que votre média d’installation de Windows 10 est prêt et que vous savez comment démarrer dessus, faites-le maintenant. Une fois que le menu d’installation préliminaire s’affiche, appuyez sur les touches suivantes : Maj + F10. Une Invite de commandes s’ouvre alors comme ci-dessous :

Ouverture de l'Invite de commandes depuis le média d'installation de Windows 10

La première chose à faire est de déterminer la partition où est installé votre Windows. Vous allez me dire que c’est sur la C: et vous avez sûrement raison. Le truc c’est que le programme d’installation de Windows peut changer (temporairement) l’ordre des partitions, et donc par conséquent la lettre d’accès. Pour récupérer la bonne lettre de partition où est accessible votre Windows, entrez la commande ci-dessous :

Le programme Microsoft DiskPart va alors se lancer et lister les volumes disponibles. Dans mon cas, l’installation de Windows est montée sur le disque D:. Ceci n’est bien sûr valable que pour cette session, une fois l’ordinateur redémarré, la partition reprendra bien sa lettre C: !

Maintenant, nous pouvons mettre en place notre astuce. Entrez les commandes suivantes (dans l’éventualité où votre partition Windows est bien D:, adaptez en fonction !) :

Si tout est OK, vous pouvez donc redémarrer votre ordinateur en entrant la commande suivante :

Voici un exemple de toutes les commandes entrées :

Détournement de l'utilitaire OSK

Maintenant que votre ordinateur est démarré, cliquez sur le bouton Accessibilité puis sur Clavier visuel, comme ci-dessous.

Lancement du Clavier visuel

A la place de celui-ci, un Invite de commandes cmd  va s’ouvrir ! Entrez alors la commande suivante pour lister les comptes utilisateurs de la machine :

Dans mon cas, mon compte utilisateur bloqué s’appelle sizious. Il n’y a plus qu’à changer le mot de passe :

Voici un exemple des commandes saisies à ce stade :

Déblocage du compte utilisateur

Maintenant, il n’y a plus qu’à se connecter avec le nouveau mot de passe ( test  dans mon cas) :

Connexion avec le nouveau mot de passe

Une frayeur de moins ! 🙂

Remise en place du Clavier visuel

Maintenant que nous avons changé notre mot de passe, il faut remettre l’utilitaire Clavier visuel en place. Pour cela, redémarrez encore une fois sur le média d’installation de Windows 10, puis appuyez de nouveau sur les touches Maj + F10.

Entrez alors les commandes suivantes (adaptez la lettre D: en fonction !) :

Ce qui donne donc :

Remise en place de l'utilitaire Clavier visuel (OSK)

Une fois l’ordinateur redémarré, sélectionnez Clavier visuel dans les options d’Accessibilité :

Vérification du Clavier visuel (OSK)

Et voilà, tout est rentré dans l’ordre !

Conclusion

Vous avez désormais changé le mot de passe d’un compte inaccessible ! 🙂

Maintenant, les avertissements de rigueur : Vous devez faire cela que sur les machines vous appartenant et/ou avec le consentement de son propriétaire. Je ne suis évidemment pas responsable des dommages et/ou mauvaises manipulations effectuées, je fournis ces informations à titre informatif, dans l’espoir qu’elles vous soient utiles.

En tout cas pour ma part, cela m’a sauvé plus d’une journée de travail !

Comment résoudre les problèmes de connexion réseau avec une imprimante HP

Je possède une imprimante HP Photosmart C5180 et parfois, la connexion réseau entre mon ordinateur exécutant Windows 7 et celle-ci se « coupe » … même si l’imprimante est allumée et répond aux requêtes « ping » sur le réseau.

Redémarrer l’ordinateur et/ou mettre hors tension l’imprimante permet de résoudre le souci mais c’est vraiment embêtant de faire cela tout le temps !

Cette situation ennuyeuse est causée par le service HPSLPSVC, aussi connu sous le nom  HP Network Devices Support. Pour corriger cela :

  1. Éteignez l’imprimante.
  2. Ouvrez une invite de commande avec les privilèges administrateur.
  3. Entrez la commande suivante :  net stop HPSLPSVC.
  4. Allumez l’imprimante.
  5. Entrez la commande suivante :  net start HPSLPSVC.

Maintenant, vérifiez le Centre de solutions HP. Votre imprimante devrait être de nouveau disponible !

Comment installer No-IP Dynamic Update Client (DUC) sous Raspbian

Si vous avez, comme moi, un FAI vous fournissant une IP dynamique, vous avez certainement besoin d’un service comme DynDNS ou No-IP. Ceci est important surtout si vous souhaitez utiliser votre Raspberry Pi comme un serveur. J’utilise personnellement No-IP pour des raisons historiques car je possède un compte gratuit chez eux depuis environ 10 ans. Dans ce poste je vais vous apprendre à comment bien installer leur client officiel sous Raspbian.

En effet, l’équipe de No-IP fournit un petit programme gratuit appelé Dynamic DNS Update (DUC) Client. DUC permet de vérifier de façon continue tous les changements d’adresse IP publique en tâche de fond et met à jour le registre de No-IP si nécessaire. Ce programme fonctionne sous Raspbian sans modifications, à part pour la partie installation comme un service qui est un peu délicate. Suivez le guide !

Compiler le client DUC

La première chose à faire est de récupérer et compiler le client. Ouvrez un Terminal (ou utilisez un client SSH, comme PuTTY) et entrez les commandes suivantes :

Après ça, le client No-IP DUC vous demandera quelques informations :

  • Le login/email correspondant à votre compte no-ip.com ;
  • Le mot de passe associé ;
  • Quelques préférences supplémentaires (comme la fréquence de mise à jour de l’adresse IP).

Le client No-IP DUC est maintenant prêt à être utilisé. Il est temps de configurer le service.

Configurer le client No-IP DUC comme un service

Maintenant que vous avez un client DUC qui fonctionne, il est temps de l’installer sous forme de service. Ceci permettra le lancement automatique du client DUC à chaque démarrage du Raspberry Pi.

Après avoir passé toutes ces commandes, vous devriez avoir ce message :

Tout est désormais configuré !

Vérification du fonctionnement du service No-IP

La première chose à faire est de vérifier si le service No-IP est bien la dernière chose lancée sur le Raspberry Pi. Entrez la commande suivante :

La sortie devrait ressembler à quelque chose comme ça :

Lancer le service No-IP en dernier permet d’éviter certains problèmes. Par exemple, si votre configuration réseau n’est pas prête lors du lancement du client DUC, ceci peut le crasher avec des messages d’erreurs inutiles et difficiles à comprendre. J’ai déjà tout pré-configuré dans les fichiers fournis afin d’éviter ce problème.

Pour vérifier si le service No-IP DUC Client tourne, lancez cette commande :

Une sortie correcte ressemble à cela :

Comme vous pouvez le voir, le service noip2 fonctionne parfaitement bien !

Pour avoir plus d’informations sur l’instance noip2 en cours d’exécution, lancez la commande suivante :

Ceci va afficher un message comme ci-dessous :

Tout semble OK. Maintenant, connectez-vous à votre compte No-IP pour vérifier si le DNS concerné a bien été mis à jour :

Manage Hostnames

Gestion des noms de domaines (DNS)

Super, vous avez réussi ! Profitez ! 🙂

Bonus

Vous pouvez vérifier les messages d’erreurs survenus lors du démarrage avec cette commande :

Vous pouvez contrôler le service No-IP via la commande  service :

Par exemple, cette commande va relancer le service noip2 (elle met 10 secondes à s’exécuter).

Références

Bonne année 2017 !

Je souhaite simplement vous souhaiter une excellente année 2017 !

Continuez à rêver surtout 😉

Catégorie : Vie

Comment réactiver la touche F11 pour réinstaller les ordinateurs HP

Il y a environ 6 mois, ma sœur m’a dit que son portable HP a complètement cessé de fonctionner. Quand je l’ai récupéré, un HP G62-a57SF, j’ai constaté que le disque dur était mort. Et bien sûr, pas de sauvegarde, nulle part. Cela veut aussi dire que la partition de récupération (« recovery partition ») a disparu 🙁

Après l’achat d’un nouveau disque dur SSD pour remplacer le disque hors-service d’origine et téléchargé tous les pilotes à partir du site Web de HP, j’ai fait face à un défi intéressant: La touche F11 permettant de lancer le processus de récupération au démarrage ne fonctionne plus. Est-il possible d’obtenir cette touche F11 de nouveau fonctionnelle ? Réponse courte : oui ! 🙂

Tout d’abord, cette méthode n’a été testée que sur un HP G62-a57SF tournant sous Windows 7, je ne sais pas si ce que je vous propose ici peut fonctionner pour autre chose. Deuxièmement, il n’y a aucun moyen d’obtenir l’outil d’origine HP Recovery, car c’est vraiment impossible à trouver en ligne. Cependant, j’ai utilisé les Recovery Tools d’AnarethoS à la place! Ce génial petit outil est conçu pour créer des partitions de récupération personnalisées comme le font les fabricants OEM !

Pour que cette touche F11 fonctionne à nouveau, il suffit de télécharger ce paquet et de suivre les instructions à l’intérieur. Il s’agit d’une version personnalisée des outils d’AnarethoS, vous n’avez donc pas besoin de télécharger la version originale.

Bon courage et amusez-vous bien avec votre nouvelle touche F11 fonctionnelle ! 🙂