1 line
20 KiB
JSON
1 line
20 KiB
JSON
[{"uuid":"da8225be-1b25-4d02-9765-a576fc89c543","slug":"lithium-battery-charger-2s-a1","title":"Module de chargeur de batterie Li-ion","category":"Électronique","author":"cedric@abonnel.fr","cover":"","published":true,"published_at":"2022-08-24 05:23:05","created_at":"2022-08-24 05:23:05","updated_at":"2022-08-24 05:23:05","tags":[],"plain":"Description\nChargeur de 2 batteries Lithium-Ion (Li-Ion) de 7.4V (2 x 3.7V) au format 18650. Interface d'entrée prise USB-C Caractéristiques\nCourant d'entrée : 1A Tension d'entrée : DC de 3.7V à 5V (tolérance de 3V à 6V) Courant de charge : 0.55A (0.40A si tension d'entrée à 3.7V) Tension de charge : 8.4V LED CR pour indiquer le statut de charge LED OK pou rindiquer que la charge est complète Température de fonctionnement : de -40°C à +85°C Fréquence de commutation jusqu'à 1MHz, compense la perte de tension en mode quadruple CV. La résistance interne et la résistance de suivi de la batterie sont chargées automatiquement. La tension de la batterie de Protection est inférieure à la tension d'entrée et au court-circuit de la batterie. Forte adaptabilité à l'alimentation d'entrée, la capacité de conduite est limitée batterie de protection contre les surtensions. Photos du produit Montage"},{"uuid":"45ecbbd9-38ed-4ec4-88e4-9527307cf2a0","slug":"utiliser-php-en-ligne-de-commande","title":"Utiliser PHP en ligne de commande","category":"Informatique","author":"cedric@abonnel.fr","cover":"","published":true,"published_at":"2023-02-02 07:46:11","created_at":"2023-02-02 07:46:11","updated_at":"2023-02-02 07:46:11","tags":[],"plain":"PHP\nLa commande PHP, une fois validée, attendra du code PHP. Il faudra indiquer la code de fin de fichier (EOF, <kbd>Ctrl</kbd> + <kbd>D</kbd>) pour que le code PHP s’exécute. PHP -r\nOn peut utiliser l'option , qui execute le code PHP sans utiliser les tags"},{"uuid":"1fbc16a5-27e0-46d7-b87b-e840e99419d1","slug":"configuration-de-postfix-avec-un-relais-smtp-externe-utilisant-l-authentification-login-ou-plain","title":"Configuration de Postfix avec un relais SMTP externe utilisant l'authentification LOGIN ou PLAIN","category":"Informatique","author":"cedric@abonnel.fr","cover":"","published":true,"published_at":"2023-05-14 07:52:47","created_at":"2023-05-14 07:52:47","updated_at":"2023-05-14 07:52:47","tags":[],"plain":"Par défaut, Postfix est configuré pour envoyer des e-mails directement au serveur de messagerie du destinataire. Cependant, il est parfois nécessaire de configurer Postfix pour utiliser un relais SMTP externe avec authentification LOGIN ou PLAIN. Éditer le fichier de configuration principal\nLe fichier de configuration principal de Postfix est généralement situé dans le répertoire . Ouvrez ce fichier à l'aide d'un éditeur de texte et recherchez les directives suivantes : Configurer le relais SMTP externe\nModifiez la directive pour spécifier l'adresse du relais SMTP externe que vous souhaitez utiliser. Par exemple, si le relais SMTP externe est et il écoute sur le port , la directive devrait ressembler à ceci : Activer l'authentification PLAIN\nDécommentez la directive en supprimant le # au début de la ligne, puis modifiez sa valeur à : Configurer les informations d'authentification\nAjoutez les informations d'authentification pour le relais SMTP externe en ajoutant les directives suivantes dans le fichier de configuration : Voici ce que font ces options : 1. : Cette option active l'authentification SASL (Simple Authentication and Security Layer) pour les connexions SMTP sortantes. Cela permet à Postfix de s'authentifier auprès du relais SMTP externe en utilisant les informations d'identification fournies. 2. : Cette option active l'authentification SASL pour les connexions SMTP entrantes. Elle permet à Postfix d'accepter les connexions SMTP entrantes et d'authentifier les clients qui se connectent. 3. : Cette option spécifie que Postfix n'accepte pas les connexions anonymes lors de l'authentification SASL. Cela garantit que toutes les connexions SMTP doivent fournir des informations d'identification valides. 4. : Cette option spécifie que lors de l'utilisation de TLS (Transport Layer Security) pour sécuriser les connexions SMTP, les connexions anonymes ne sont pas autorisées. 5. : Cette option indique à Postfix où trouver le fichier de hachage contenant les informations d'identification (nom d'utilisateur et mot de passe) pour l'authentification SASL auprès du relais SMTP externe. Dans cet exemple, le fichier est utilisé et doit être converti en un fichier de hachage à l'aide de la commande . 6. : Cette option active l'utilisation de TLS pour chiffrer les connexions SMTP sortantes. Elle assure que les communications avec le relais SMTP externe sont sécurisées. 7. : Cette option indique à Postfix d'émettre une offre STARTTLS lors de l'établissement d'une connexion SMTP sortante. Cela permet d'initier une négociation TLS avec le relais SMTP externe si celui-ci prend en charge TLS. 8. : Cette option spécifie les mécanismes d'authentification SASL autorisés pour les connexions SMTP sortantes. Dans cet exemple, seuls les mécanismes \"login\" et \"plain\" sont autorisés. Ces options combinées permettent à Postfix de configurer un relais SMTP externe avec authentification PLAIN et d'établir des connexions sécurisées à l'aide de TLS. Cela garantit que les e-mails sont envoyés de manière fiable et en toute sécurité via le relais externe. Créer le fichier de mots de passe SASL\nCréez un fichier et ajoutez les informations d'authentification suivantes : Remplacez par l'adresse du relais SMTP externe, par le port utilisé, par votre nom d'utilisateur de messagerie pour le relais SMTP, et par votre mot de passe associé. Générer le fichier de hachage des mots de passe SASL\nExécutez la commande suivante pour générer le fichier de hachage des mots de passe SASL à partir du fichier : Cette commande va créer un fichier contenant le hachage des mots de passe. Redémarrer POSTFIX"},{"uuid":"11186836-bbac-4054-82db-a3bfed14a274","slug":"imagemagick-traiter-des-images-en-ligne-de-commande","title":"ImageMagick : traiter des images en ligne de commande","category":"linux","author":"cedric@abonnel.fr","cover":"cover.png","published":true,"published_at":"2025-12-28 14:56","created_at":"2025-12-28 14:56:14","updated_at":"2026-05-12 00:36:01","tags":[],"plain":"1. À quoi ça sert\r\n\r\nImageMagick, c'est l'outil qu'on sort quand on veut manipuler des images sans ouvrir un logiciel graphique. Pas de Photoshop, pas de GIMP, pas de clic-droit \"Redimensionner\" sur cent fichiers à la suite : juste une commande dans un terminal, et le travail est fait.\r\n\r\nC'est une suite d'outils qui sait lire, écrire et transformer plus de 200 formats — du JPEG classique au PDF en passant par le HEIC des iPhones, le WebP de Google ou le bon vieux TIFF des scanners. L'absence d'interface graphique est ici une fonctionnalité, pas un défaut : elle permet de l'utiliser partout où il n'y a pas d'écran, et surtout dans tout ce qui doit tourner tout seul.\r\n\r\nOn le retrouve donc naturellement :\r\nsur des serveurs web qui génèrent des miniatures à la volée,\r\ndans des scripts qui traitent des dossiers entiers d'un coup,\r\ndans des pipelines CI/CD pour préparer des assets,\r\ndans des conteneurs Docker, accessibles uniquement en SSH.\r\n\r\nDepuis la version 7, tout passe par une commande unique : . Les anciennes commandes (, , ...) existent toujours pour la compatibilité, mais elles ne sont plus la norme.\r\n\r\n2. Installation\r\n\r\nSur Debian ou Ubuntu :\r\n\r\n\r\n\r\nOn vérifie ensuite que tout est en place :\r\n\r\n\r\n\r\nLa sortie indique aussi les délégués compilés (libwebp, libheif, libraw, etc.). Si un format précis vous intéresse, c'est ici qu'il faut regarder : ImageMagick ne sait lire un format que si la bibliothèque correspondante est présente au moment de la compilation.\r\n\r\n3. Comment ImageMagick raisonne\r\n\r\nToutes les commandes suivent la même logique :\r\n\r\n\r\n\r\nL'image est chargée en mémoire, puis chaque option s'applique dans l'ordre où elle est écrite, comme une chaîne de traitement. Ce point est important : déplacer une option dans la ligne peut changer le résultat final.\r\n\r\nExemple :\r\n\r\n\r\n\r\nIci, l'image est lue, redimensionnée à 800×600, puis compressée à 85% de qualité, puis écrite sur le disque. Si on inversait et , le résultat serait identique dans ce cas précis, mais avec des opérations qui modifient les pixels (flou, conversion d'espace colorimétrique, recadrage), l'ordre devient critique.\r\n\r\n4. Convertir d'un format à un autre\r\n\r\nLe cas le plus simple : changer l'extension du fichier de sortie suffit.\r\n\r\n\r\n\r\nImageMagick détecte le format cible à partir de l'extension et fait la conversion. C'est aussi simple que ça pour 90% des cas.\r\n\r\nQuand on veut être plus précis — par exemple forcer une profondeur de couleur particulière — on l'indique explicitement :\r\n\r\n\r\n\r\nUtile quand on récupère des images en 16 bits par canal qu'on veut ramener à du 8 bits standard, soit pour gagner de la place, soit pour garantir la compatibilité avec un logiciel récalcitrant.\r\n\r\n5. Redimensionner\r\n\r\nLa méthode brutale\r\n\r\n\r\n\r\nCette commande redimensionne à 800×600 en respectant les proportions par défaut, contrairement à ce qu'on pourrait croire. Si l'image source est en 4:3, elle rentrera pile dedans ; si elle est en 16:9, ImageMagick choisira la dimension la plus contraignante et l'autre sera plus petite que demandé.\r\n\r\nPour forcer exactement ces dimensions quitte à déformer l'image, il faut ajouter un point d'exclamation :\r\n\r\n\r\n\r\nNe rétrécir que les grandes images\r\n\r\nC'est probablement le cas le plus utile au quotidien : on a un dossier d'images, on veut s'assurer qu'aucune ne dépasse 1600 pixels, mais on ne veut pas agrandir les petites (ce qui dégraderait leur qualité).\r\n\r\n\r\n\r\nLe signifie « uniquement si l'image est plus grande ». Les guillemets sont nécessaires car est interprété par le shell comme une redirection. On peut aussi échapper le caractère avec .\r\n\r\nEn pourcentage\r\n\r\n\r\n\r\nPratique quand on veut diviser la taille par deux sans calculer les dimensions exactes.\r\n\r\n6. Qualité et poids du fichier\r\n\r\nPour les JPEG, le paramètre règle le compromis entre fidélité visuelle et poids du fichier :\r\n\r\n\r\n\r\nQuelques repères en pratique :\r\n100 : qualité maximale, fichier énorme, différence imperceptible avec 95.\r\n85 : la valeur par défaut de la plupart des appareils photo, et un excellent compromis pour le web.\r\n75 : encore très acceptable, gain de place notable.\r\nEn dessous de 70 : les artefacts deviennent visibles, surtout sur les aplats de couleur.\r\n\r\nSupprimer les métadonnées\r\n\r\nLes fichiers issus d'appareils photo ou de smartphones embarquent beaucoup d'informations : modèle de l'appareil, date, parfois coordonnées GPS, miniature intégrée, profil colorimétrique... Tout ça peut peser plusieurs dizaines de kilo-octets, et surtout poser des problèmes de confidentialité.\r\n\r\n\r\n\r\nL'option fait le ménage. À utiliser systématiquement avant de publier des photos sur le web, et indispensable dès qu'on parle de RGPD ou d'anonymisation. Attention en revanche pour la photographie professionnelle où certaines métadonnées (droits d'auteur, profil ICC) peuvent être nécessaires.\r\n\r\n7. Recadrer et adapter à un cadre\r\n\r\nRecadrage classique\r\n\r\n\r\n\r\nLa syntaxe se lit comme une fenêtre qu'on découpe dans l'image : largeur × hauteur, décalée de 100 pixels depuis la gauche et 50 pixels depuis le haut.\r\n\r\nRemplir un cadre exact, sans déformation\r\n\r\nC'est le besoin typique des miniatures de site : on veut toutes les vignettes en 800×600 pile, peu importe le format des photos d'origine.\r\n\r\n\r\n\r\nTrois étapes enchaînées :\r\n\r\n1. redimensionne pour que l'image remplisse le cadre (le inverse la logique habituelle : on prend la plus grande dimension comme contrainte, pas la plus petite).\r\n2. indique qu'on veut centrer le découpage.\r\n3. coupe ce qui dépasse pour obtenir exactement la taille voulue.\r\n\r\nLe résultat : aucune déformation, aucune bande noire, juste un éventuel rognage sur les bords les plus longs.\r\n\r\n8. Traiter un dossier entier\r\n\r\nUne boucle Bash suffit pour convertir tous les PNG d'un dossier en JPEG :\r\n\r\n\r\n\r\nLa syntaxe retire l'extension du nom, on y ajoute . Simple et fiable.\r\n\r\nPour modifier les fichiers sur place, ImageMagick fournit :\r\n\r\n\r\n\r\nCette commande écrase chaque fichier par sa version redimensionnée. C'est rapide et pratique, mais ça veut aussi dire qu'il n'y a pas de retour en arrière : si la commande est mal écrite, le dossier original est perdu. Règle absolue : travailler sur une copie, ou s'assurer d'avoir une sauvegarde.\r\n\r\n9. Texte et filigranes\r\n\r\nApposer une mention textuelle\r\n\r\n\r\n\r\n ancre le texte dans un coin de l'image (les neuf positions classiques : , , , , ...), et ajoute un décalage par rapport à ce point d'ancrage. Ici, éloigne le texte de 10 pixels du coin inférieur droit.\r\n\r\nSuperposer un logo ou un watermark image\r\n\r\n\r\n\r\nL'image principale est lue en premier, le filigrane en second, puis les fusionne. Si le watermark a un canal alpha (transparence), il est respecté.\r\n\r\n10. Couleurs et tons\r\n\r\nPassage en noir et blanc :\r\n\r\n\r\n\r\nRéglage de la luminosité et du contraste (valeurs en pourcentage, positives ou négatives) :\r\n\r\n\r\n\r\nIci, +10% de luminosité et +5% de contraste. Pour assombrir, on utilise des valeurs négatives : .\r\n\r\n11. Inspecter une image\r\n\r\nPour obtenir les informations essentielles — format, dimensions, profondeur :\r\n\r\n\r\n\r\nPour tout savoir, y compris les métadonnées EXIF, le profil colorimétrique, l'histogramme :\r\n\r\n\r\n\r\nLa sortie verbeuse peut faire plusieurs pages, mais c'est inestimable pour diagnostiquer un problème ou comprendre d'où vient un fichier.\r\n\r\n12. Formats modernes\r\n\r\nLe WebP de Google offre une compression nettement meilleure que le JPEG à qualité équivalente, et il est aujourd'hui supporté par tous les navigateurs courants :\r\n\r\n\r\n\r\nL'AVIF va encore plus loin en termes de compression, au prix d'un encodage plus lent :\r\n\r\n\r\n\r\nSi la commande échoue avec une erreur de délégué, c'est que votre installation d'ImageMagick a été compilée sans le support AVIF — il faudra installer ou recompiler.\r\n\r\n13. Quelques règles à se fixer\r\nToujours travailler sur une copie quand on découvre une nouvelle commande. en particulier ne pardonne pas.\r\nStripper les métadonnées avant toute publication web.\r\nPour de très gros volumes (plusieurs milliers d'images, ou des images très lourdes), regarder du côté de : c'est plus rapide et beaucoup moins gourmand en mémoire qu'ImageMagick. Pour tout le reste, ImageMagick est largement suffisant.\r\nAutomatiser dès qu'on répète : si la même commande revient deux fois, elle mérite un script.\r\nLire les messages d'erreur : ImageMagick est verbeux, et la plupart des problèmes (délégué manquant, permissions, format non reconnu) sont explicitement nommés dans la sortie.\r\n\r\n14. Là où on le croise vraiment\r\n\r\nEn pratique, ImageMagick finit presque toujours dans les mêmes situations :\r\npréparation d'images pour un site web (redimensionnement + compression + strip),\r\ngénération de miniatures à la volée côté serveur,\r\nnormalisation d'un catalogue photo hétérogène (formats, tailles, profils),\r\nconversion massive d'archives anciennes vers des formats modernes,\r\nnettoyage des métadonnées avant diffusion publique.\r\n--\r\n\r\nImageMagick fait partie de ces outils qu'on apprivoise lentement mais qu'on garde longtemps. Au début, on copie des commandes trouvées en ligne sans tout comprendre. Puis on commence à reconnaître les options, à les combiner, à écrire ses propres scripts. Et un jour, on se rend compte qu'on a remplacé un logiciel entier par trois lignes de Bash — et qu'on n'a jamais été aussi efficace pour traiter des images."},{"uuid":"46f2f084-8dd8-497a-aef0-4728367ce753","slug":"convertir-des-images-en-ligne-de-commande-sous-linux","title":"Convertir des images en ligne de commande sous Linux","category":"linux","author":"cedric@abonnel.fr","cover":"cover.svg","published":true,"published_at":"2025-12-28 14:54","created_at":"2025-12-28 14:54:41","updated_at":"2026-05-12 00:51:02","tags":[],"plain":"La manipulation d'images depuis le terminal est une de ces choses qu'on apprend une fois et qu'on utilise pour toujours. Pas besoin de GIMP, pas besoin d'ouvrir quoi que ce soit : une commande, et c'est réglé.\r\n\r\nVoici les outils que j'utilise concrètement, et dans quels cas.\r\n--\r\n\r\nImageMagick, le plus polyvalent\r\n\r\nC'est l'outil de base. Il gère à peu près tous les formats qui existent, et la syntaxe est toujours la même. L'installation est classique :\r\n\r\n\r\n\r\nConvertir un format :\r\n\r\n\r\n\r\nRedimensionner sans toucher au ratio, en posant une limite maximale :\r\n\r\n\r\n\r\nLe est important — sans lui, ImageMagick agrandit aussi les petites images. Avec, il ne fait que réduire.\r\n\r\nPréparer une image pour le web, en supprimant les métadonnées EXIF et en compressant :\r\n\r\n\r\n\r\nPour traiter un répertoire entier, fait le même boulot mais modifie les fichiers en place — toujours travailler sur une copie ou rediriger vers un autre dossier :\r\n--\r\n\r\nlibvips, pour les traitements lourds\r\n\r\nQuand il y a des centaines de photos ou des images très lourdes (scans, RAW exportés), libvips est nettement plus rapide et utilise beaucoup moins de mémoire qu'ImageMagick. Il charge les images en flux au lieu de tout mettre en RAM.\r\n\r\n\r\n\r\n\r\n\r\nLa syntaxe est moins intuitive qu'ImageMagick mais les gains sur des gros volumes sont sensibles.\r\n--\r\n\r\nFFmpeg, pas que pour la vidéo\r\n\r\nFFmpeg est surtout connu pour la vidéo, mais il convertit les images aussi — utile quand il est déjà installé et qu'on veut éviter une dépendance supplémentaire, ou pour extraire des frames depuis une vidéo :\r\n\r\n\r\n\r\nRedimensionner en conservant le ratio :\r\n--\r\n\r\nLes métadonnées EXIF avec exiftool\r\n\r\nLes appareils photo embarquent beaucoup d'informations dans les fichiers : coordonnées GPS, modèle d'appareil, réglages. Avant de publier une photo, il vaut mieux vérifier ce qu'elle contient :\r\n\r\n\r\n\r\nImageMagick peut aussi supprimer les EXIF avec , mais exiftool offre plus de contrôle quand on veut garder certaines balises et supprimer d'autres.\r\n--\r\n\r\nFichiers RAW\r\n\r\nPour les CR2, NEF, ARW et autres formats propriétaires d'appareils photo, est la solution la plus propre :\r\n\r\n\r\n\r\nIl applique les mêmes algorithmes de développement que l'interface graphique de darktable. est une alternative plus ancienne et plus bas niveau :\r\n--\r\n\r\nHEIC, le format Apple\r\n\r\nLes iPhone exportent leurs photos en HEIC depuis iOS 11. Le format est compact, mais Linux ne le gère pas nativement — il faut convertir avant de pouvoir travailler dessus.\r\n\r\nLe paquet fournit , l'outil le plus direct :\r\n\r\n\r\n\r\nImageMagick peut aussi s'en charger si est installé sur le système :\r\n\r\n\r\n\r\nPour vérifier que le support HEIC est bien disponible :\r\n\r\n\r\n\r\nConversion d'un dossier entier :\r\n--\r\n\r\nEn pratique\r\n\r\nConversion d'un dossier de PNG en WebP :\r\n\r\n\r\n\r\nPipeline complet pour publication web — redimensionnement, suppression EXIF, compression :\r\n\r\n\r\n\r\nTraitement récursif sur un arbre de dossiers :\r\n--\r\n\r\nRécap rapide\r\nCas d'usage | Outil |\r\n---|---|\r\nUsage général | ImageMagick |\r\nGros volumes / performance | libvips |\r\nDéjà dans le pipeline vidéo | FFmpeg |\r\nFichiers RAW | darktable-cli |\r\nHEIC (iPhone) | heif-convert ou ImageMagick |\r\nLecture / nettoyage EXIF | exiftool |\r\n\r\nPour 90 % des besoins courants, ImageMagick suffit. libvips vaut le coup d'être appris si on traite régulièrement des lots importants."}] |