Script – afficher les donnees Exif sur Thunar

Afficher les métadonnées EXIF avec un clic droit sur Thunar

Ha, il y a longtemps que je n’ai pas écrit sur le sujet !

Sur les PC sous un environnement Gnome avec le gestionnaire de fichiers Nautilus j’applique la méthode décrite dans mon l’article « Afficher les métadonnées exif avec un clic droit sur Nautilus » écrit en 2015 (il y a une légère modification sur le script d’aujourd’hui, mais les deux fonctionnent).

Il se trouve que le PC que j’utilise le plus souvent ces derniers temps est sous Manjaro avec un environnement XFCE et donc Thunar comme gestionnaire de fichiers.

Pour infos

Il existe de nombreuses similitudes avec l’article mentionné plus haut. La principale différence réside dans l’emplacement du script ainsi qu’une procédure spécifique à effectuer sous Thunar, qui ne s’applique pas à Nautilus.
Il est possible de remplacer Zenity par Yad, et Exiv2 par Exiftool, mais je pense que Yad nécessite certainement des critères supplémentaires (je n’ai pas cherché). Bref, il existe plusieurs façons de faire, mais comme je suis de nature plutôt fainéante, je préfère me baser sur des solutions déjà en place et qui fonctionnent chez moi depuis 2015.

Mais voyons la procédure

Tu auras besoin de Zenity et de Exiv2 (Chez-moi, Exiv2 était déjà installé). Pour installer les deux :
Manjaro :

sudo pacman -S exiv2 zenity

Débian et dérivés

sudo apt install exiv2 zenity

Sous XFCE il n’y a pas de ./local/thunar, on va donc créer un répertoire sous .local, je l’ai appelé bin, vous pouvez le nommer scripts ou autres, mais il faudra en tenir compte pour les chemins.

Créer un répertoire bin

mkdir -p ~/.local/bin

On va écrire le script, j’utilise vim, mais vous pouvez utiliser nano ou autre éditeur.

vim ~/.local/bin/exif.sh

et on y écrit :

#!/bin/bash

# métadonnées exif avec exiv2

zenity --info --title="Métadonnées EXIF" --text="$(exiv2 "$1")"

Un peu de pédagogie

#!/bin/bash est un préfixe au nom de l’exécutable qui va effectivement traiter les lignes qui le suivent. On l’appelle « shebang » et doit être la première ligne du script. (il s’agit d’un copié/collé de mon article « Initiation au Shell – Boucle (for, do, done » écrit en 2015).

zenity --info --title="Métadonnées EXIF" --text="$(exiv2 "$1")"

zenity affiche une boite de dialogue d’info (–info), titre optionnel (–title) et enfin avec (–text) le contenu de la sortie de la commande exiv2, les métadonnées exif de $1, le premier argument passé au script, c’est-à-dire le chemin du fichier image.

Il faut rendre exécutable le script

chmod +x ~/.local/bin/exif.sh

– Pas certain que ma pédagogie fasse mouche
– Ouah ah ah… Et c’est toi Sima qui donne des cours d’initiation au Bash à Root66.Net ? Hé ben, ils sont pas aidés.
– Ho ça va, ta gueu… Tais-toi ! Bon, je continue.

Voyons maintenant comment configurer Thunar

On ouvre le gestionnaire de fichier Thunar puis on va dans :
Édition → Configurer les actions personnalisées…

Une boite de dialogue s’ouvre → clique sur le +

Une autre boite de dialogue s’ouvre sur l’onglet « Base »
On met le nom de son choix.
On peut mettre une description.
Dans commande on met le chemin absolu (en entier) vers l’exécutable avec le paramètre %f

Ensuite on va dans l’onglet « Conditions d’apparition » et on coche la case « Fichiers image »

Puis on valide
On voit que l’action « EXIF » a été ajouté. Tu peux fermer.

Sur Thunar vas sur une image et fais un clic droit, puis descend sur « EXIF »

Clic sur « EXIF » et une fenêtre s’ouvre avec les métadonnées Exif.


Si ça ne fonctionne pas, ferme et relance Thunar pour être certain que les modifications ont bien été prises en compte par Thunar.

Des idées pour améliorer ce petit script ou une autre approche à proposer ? Lâche-toi en commentaires.

Le billet « Script – afficher les données Exif sur Thunar » est apparu en premier sur le blog de Sima78.

Mettre un logo ou signature sur vos images en ligne de commande

ImageMagick, déc. 2023
logo ImageMagick

Je vous propose aussi un script Bash pour le faire par lot

Je compte enrichir mon Pixelfed avec certaines de mes photos et je me disais que mettre un petit logo sur chacune de mes images serait bien, puisque celles actuelles ne sont pas signées.

Pour cela il faudra installer ImageMagick pour l’accès à ses composants car nous devrons utiliser la commande « composite ».

J’avoue avoir un peu galéré car il manque quelques informations sur le « man composite », rassurez-vous, je vous vous mets tout !

Précision :

Si vos images sont en « .jpg » faites votre logo à un format différent pour plus de commodité du genre « .png ».  Ce n’est pas obligatoire si vous ne mettez pas le logo dans le même répertoire et que vous précisez son chemin.

Ajouter un logo à vos images en ligne de commande

Le basique

composite -geometry +15+15 votrelogo.png image-original.jpg image-finale.jpg
  • composite est la commande pour superposer des images.
  • -geometry +15+15 spécifie la position de votre logo par rapport au coin supérieur gauche.
  • +15+15 pixels vous pouvez préciser plus ou moins.

Oui mais moi Sima je veux que ce soit en bas à gauche !
Pas de souci…

composite -gravity southwest -geometry +15+15 votrelogo.png image-original.jpg image-finale.jpg
  • -gravity southwest spécifie la position dans le coin inférieur gauche de l’image.
  • -gravity southeast en bas à droite
  • -gravity center -geometry +0+0 au centre
photo avec logo Sima78, déc. 2023
photo avec logo Sima78

Sima, c’est bien beau tout ça, mais je ne veux pas me faire chier m’embêter à faire image par image, j’en ai des centaines…
Ok, passons au petit script sans prétention.

Script pour ajouter un logo par lot.

#!/bin/bash

logo="votrelogo.png"

for image in *.jpg; do

    output="output_${image}"

    composite -gravity southwest -geometry +15+15 "${logo}" "${image}" "${output}"

done

Si vos images ont toutes une extension .JPG donc en majuscule il faudra modifier le script car là il ne prend que l’extension en minuscule. Vous pouvez modifier pour qu’il accepte les deux, Bref, il s’agit d’une base qui ne demande qu’à être améliorée.

  • logo est le nom du fichier de votrelogo.
  • Assurez-vous que le fichier du logo est dans le même répertoire que vos images ou spécifiez le chemin complet.
  • La boucle for image in *.jpg parcourt tous les fichiers avec l’extension .jpg dans le répertoire courant. Vous pouvez ajuster l’extension selon le format de vos images.
  • output= »output_${image} » définit le nom du fichier de sortie en ajoutant le préfixe « output_ » au nom de chaque image d’entrée. Vous pouvez personnaliser le préfixe.
  • composite est utilisée à l’intérieur de la boucle pour ajouter le logo.

Enregistrez ce script sous le nom de votre choix du genre ajout-logo.sh

Rendez-le exécutable avec la commande

chmod +x ajout-logo.sh

Puis exécutez-le dans le répertoire contenant vos images.

Vous pouvez en papprendre un peu plus sur l’article Initiation au shell boucle (for, do, done)

Il y a aussi une possibilité avec la commande « find » mais attention dans ce cas c’est récursif et cela modifiera tous vos fichiers .jpg se trouvant dans les sous-répertoires, mais ça peut être utile.

Avec l’option « -iname » peut importe que l’extension .jpg soit en majuscule ou pas.

find /chemin/vers/le_dossier/de_vos_images -type f -iname "*.jpg" -exec composite -gravity southeast -geometry +15+15 /chemin/vers/votrelogo.png {} {} \;

Qu’en pensez-vous ? Vous avez d’autres astuces en ligne de commande, je suis preneur !

Le billet Mettre un logo ou signature sur vos images en ligne de commande est apparu en premier sur le blog de Sima78.

Mettre un filigrane sur des documents officiels – ligne de commande

Mettre un filigrane [ImageMagick] et supprimer les métadonnées [ExifTool] sur des documents officiels que nous devons envoyer via le web ou par mail.

Le tout en ligne de commande depuis un terminal.

Un billet comme un conseil dans ce monde soi-disant idéal de la dématérialisation.

Dans beaucoup de procédures télématiques, il nous est demandé des copies de nos documents personnels, tel que notre pièce d’identité (on va prendre cet exemple dans ce billet).

L’idée de ce billet me vient d’une discussion téléphonique avec une administration qui me demandait d’envoyer une photocopie ou scan de ma carte d’identité.

Curieux, je demande : D’accord, qu’allez-vous faire de cette pièce, c’est très personnel, où sera t-elle stockée, pour combien de temps ? Quelle garantis donnez-vous ?
Réponse : Ne vous inquiétez pas, nous avons des services très spécialisés et toutes les données sont cryptées !
Ha, le mot est lâché, rassurant, « cryptées »…
Moi : Vous me demandez d’envoyer par mail, ça arrive sur une boite mail où je suppose que plusieurs personnels du service y ont accès, comment est géré la boite mail, qui y a accès, est-elle sécurisée ?…
Réponse : Faites-le directement depuis notre site web, il y a le petit cadenas en haut à gauche, tous est crypté…
Ouh là là, « crypté » le mot qui se voudrait rassurant et qui pourtant me fait pousser les poils des oreilles.
Moi : soit, la communication de bout en bout est chiffrée, mais une fois ma pièce envoyée, la carte d’identité, que devient-elle ?
Réponse : Nous avons des spécialistes de la sécurité et tout est crypté…
Moi : bon je résume, je vous envoie un document en clair, transparent via votre site, il se retrouve quelque part sur l’un de vos disques durs, sans que je sache qui y a accès ni ce que deviendra ce document…
Il me coupe la parole… : Je vous l’ai dit, tout est sécurisé et crypté…
Moi : Je peux imaginer que l’accès aux disques ou support soient sécurisés, que les disques dur soient chiffrés, ou comme vous dites, cryptés, mon document lui est en clair et les disques, une fois montés et même chiffrés, les données restent en clair…

Bon je vous fais grâce de la suite de la discussion de sourd.

Dans un monde idéal…

Une fois votre document scanné, l’idéal est de réaliser un chiffrement asymétrique, soit avec votre certificat numérique, soit avec d’une autre façon comme par exemple en utilisant « gpg » (j’aime bien gnupg, je l’utilise pour mes signatures et chiffrement de mes mails et autres…) afin que personne ne puisse lire le document envoyé, sauf celui qui doit le réceptionner.

Mais que ce soit dans l’administration ou ailleurs, il est très rare que l’on se préoccupe réellement de la sécurité de ce que l’on envoie.

Ajouter un filigrane.

Dans le cas où le destinataire ne sait pas comment fonctionne le chiffrement et c’est malheureusement souvent le cas, nous pouvons choisir l’option d’ajouter un filigrane à nos documents privés. D’autant plus que nous ne saurons pas où sera notre document ni pour combien de temps…

Nous allons ajouter en ligne de commande un filigrane sur notre document avec ImageMagick.

Vérifions s’il est déjà, ou pas, installé sur notre pc.

dpkg --get-selections | grep imagemagick
imagemagick             install
imagemagick-6-common    install
imagemagick-6.q16       install 

Si vous avez quelque chose de similaire à ci-dessus, c’est qu’il est installé, sinon il n’afficherait rien.
S’il n’est pas installé, il suffit de :

sudo apt install imagemagick

Une fois installé, nous pouvons utiliser tous les outils « ImageMagick ». Dans cet exemple, nous partirons d’une image test que j’ai trouvé sur le net et qui porte le nom « CNI-blog.jpg », vous l’aurez remarqué, je suis un peu plus vieux que sur la photo :

Afin d’ajouter un filigrane à l’image, nous allons exécuter la commande « convert » avec les options suivantes dans le même répertoire où se trouve notre image:

convert -density 150 -fill "rgba(255,0,0,0.25)" -gravity Center -pointsize 60 -draw "rotate -45 text 0,0 'COPIE'" CNI-blog.jpg CNI-blog-final.jpg

Description des options utilisées:

  • density: La résolution de la largeur de l’image avec l’unité de points par pouce (PPI).
  • fill: Couleur à utiliser.
  • gravity Center: position du texte, dans ce cas centrée sur l’image.
  • pointsize: taille en points de la police.
  • draw: annoter l’image avec une précision. Dans ce cas, avec un texte pivoté de 45 degrés dans le sens antihoraire dans les coordonnées X, Y 0,0 et le texte entre guillemets simples.
  • Ensuite, le fichier source où les modifications seront appliquées (CNI-blog.jpg) et le fichier de destination qui sera créé (CNI-blog-final.jpg).

Le résultat :

Pour compliquer les choses il conviendrait de personnaliser notre filigrane en fonction de chaque procédure:

convert -density 150 -fill "rgba(255,0,0,0.50)" -pointsize 15 -draw "rotate -15 text 0,200 'COPIE POUR TRAITEMENT'" -draw "rotate -15 text -25,260 'DE RECENSEMENT'" CNI-blog.jpg CNI-blog-final-02.jpg

Résultat suivant :

Supprimer les métadonnées

Pour terminer, nous pouvons supprimer les métadonnées effaçables du fichier (en fait il faudrait commencer par là) avec le programme « exiftool« , ce programme peut être installé à partir des dépôts :

sudo apt install exiftool

Puis :

exiftool CNI-blog-final-02.jpg

Et pour supprimer les métadonnées de notre fichier image avec le filigrane créé, nous allons exécuter :

exiftool -all= CNI-blog-final-02.jpg
    1 image files updated

Pour voir que les métadonnées ont bien disparu comme le montre l’image ci-dessus, exécutez :

exiftool dni-final.jpg

Ces étapes nous ont permis d’apposer un filigrane sur un document privé et de supprimer les métadonnées, de sorte à sécurisé à minima ce que nous envoyons.

J’espère que ces petites astuces vous aideront tout en restant loin de la préservation de la vie privée, mais parfois l’on doit faire à minima.

Créez une mosaïque avec vos photos sous Linux

pixelize iconeJ’avais déjà écris en 2005, un billet sur le sujet sur mon ancien blogs éteint depuis quelques années déjà. Je me suis souvenu de cet article et eu envie de vérifier si cette application existait toujours, et si oui, la tester de nouveau et le faire connaître par le biais d’un nouveau article.

Créer une image avec une mosaïque de vos photos sous Gnu/Linux, c’était mieux avant !

Une mosaïque, d’après le Larousse est : un assemblage de petits cubes ou parallélépipèdes multicolores (marbre, pâte de verre, etc.) juxtaposés de façon à former un dessin, et retenus par un ciment ; art d’exécuter ce type d’assemblage.

Si l’adage « c’était mieux avant » symbolise souvent l’expression du vieux con aigri déversant tout son fiel sur chaque nouveauté, parfois cette adage révèle un fait bien réelle… C’était mieux avant !

J’avais écrit un tutoriel sur Metapixel, j’ai voulu voir où le projet en est aujourd’hui, Il est à l’abandon depuis 2006. J’ai tout de même voulu tester, juste pour le fun… Mais ça ne passe pas le « make » et je ne trouve pas (dans les paquets) les librairies manquantes.

Je me dis que certainement quelqu’un a créé un « fork » et j’en trouve un qui lui est abandonné depuis 2013 et ne passe pas non plus le « make » (une librairie manquante).

J’avoue ne pas avoir cherché la librairie manquante en dehors des mes dépôts.

Mais il n’y a donc plus rien pour créer des mosaïques sous linux ?

Si si, j’ai découvert au fin fond de mes dépôts Pixelize.

Brève critique de Pixelize : C’est décevant, un résultat médiocre, trop peu d’options que je n’ai jamais pu modifier, même en lançant l’application sous « root ».
Metapixel avait un peu plus d’options permettant un affinage du résultat souhaité. Et même par défaut le résultat était beaucoup plus propre.

Si le Larousse nous dit que la création de mosaïque est un art, n’ayez pas d’illusion, vous ne deviendrez pas artiste grâce à Pixelize.

Le tuto tient en trois lignes :

# apt-get install pixelize
$ make_db /home/sima78/Images/pour_ma/mosaique/*
$ pixelize

La première ligne on installe Pixelize
La deuxième va créer un fichier « bd » à partir d’un dossier contenant les images qui créeront la mosaïque (plus il y a d’images, mieux c’est).
La troisième ligne lance Pixelize.

Les options :

options-pixelize.png

Chez-moi aucune modification n’est prise en compte et tout reste à 25X25 pixels et « Proximity of duplicates » à 8

Résultats avec deux exemples… Franchement c’est pas convainquant.

Avant :blonde pixelize original

Après :blonde pixelize

Avant :2006-04-eductour11 origine

Après :2006-04-eductour11

Ne jetons pas la pierre au logiciel libre, de nombreuses applications évoluent et font notre satisfaction, mais pixelize est le résultat d’une application qui n’a pas de succès auprès des utilisateurs n’y des développeurs…

Si vous connaissez une autre application qui permet de créer des mosaïques, je suis preneur.

Linux – De l’interface graphique à la ligne de commande

de l'interface graphique à la ligne de commandeUn peu de ma vie privée, ou plutôt de celle de mes farfadets et mes fadettes, j’en ai deux de chaque.

Tous utilisent depuis leur tendre enfance linux… Maintenant, ils l’utilisent plus ou moins en fonction de leurs besoins. Pour celui qui l’utilise le plus, même exclusivement, il s’agit d’un de mes farfadets, l’autre, étant un « gamer« , et l’utilise le moins, les Fadettes sont entre les deux.

J’en viens à l’une des Fadettes, son pc est en dual boot, pour un usage professionnel, elle utilise au maximum linux (la grande majorité du temps) via les applications graphiques qui lui sont proposées, sauf pour certains de ces travaux.

L’interface graphique, c’est bien… Mais parfois, la ligne de commande, c’est mieux ! J’y viens !

« Papa, on a plusieurs photos de divers appareils (4) et elles se mélangent dans le répertoire, on doit rendre un travail chronologique… Tu m’as dit un jour qu’avec ton écran noir (un terminal) et tes lignes, ça peut se faire facilement… Tu peux me montrer ? » (Sur son pc, une multitude de fenêtres ouvertes sur plusieurs bureaux avec divers travaux en route… Pas question de les fermer pour passer sur un autre système d’exploitation).

Quand on me parle de mes lignes, ça me rend particulièrement fier, même si au fond de moi-même, je sais que quiconque lit le « man » de « find » et « exiv2 » peut en faire autant, voire mieux, mais bon…

Je lui dis, il suffit de suivre le billet sur mon blog « Renommer les photos par lot en utilisant les métadonnées EXIF« . Et là, magie ! En quelques secondes, les centaines de photographies se renomment par ordre chronologique.

Renommer les photos par lot en utilisant les métadonnées EXIF Magique ou presque, car l’un des appareils n’était pas à la bonne date et heure…
Alors, autres lignes de commande, c’est un peu plus long, en suivant le billet « Modifier la date de vos photos« , et le résultat final est parfait !
Je suis heureux de voir que ma Fadette s’en est très bien sorti et surtout qu’elle s’est rendu compte que la ligne de commande est un parfait complément à ce qui peut se faire via une interface graphique !

Afficher les metadonnees exif avec un clic droit sur Nautilus

nautilusPetit script utilisant exiv2 et simple à mettre en oeuvre.

1- Ouvrez un éditeur de texte, copiez les lignes ci-dessous et sauvegardez sous par exemple « exif.sh »

#! /bin/bash
# métadonnées exif avec exiv2
zenity --info --text " `exiv2 "$1" `"

2 – rendez-le exécutable : clic droit => Propriétés dans l’onglet « Permitions »
Cochez la case « Autoriser l’exécution du fichier comme un programme

3 – Ubuntu 14.04, placez le fichier dans ~.local/share/nautilus/scripts/

En ligne de commande, pas plus compliqué…
1 – avec par exemple « nano »

~$ nano .local/share/nautilus/scripts/exif.sh

on copie, on sauvegarde et on quitte.

#! /bin/bash
# métadonnées exif avec exiv2
zenity --info --text " `exiv2 "$1" `"

2 – on rend exécutable et on relance nautilus;

~$ chmod +x .local/share/nautilus/scripts/exif.sh | nautilus -q

Résultat dans les deux cas:
1 – clic droit sur l’image

Nautilus script exif
2 – Résultat 

Nautilus affiche metadonnees exif

Supprimer les métadonnées EXIF avec exiv2

supprimer données exif Womer & Cabincr3wMétadonnées EXIF, utilité et méfiance.

Si les métadonnées exif, et leur enrichissement peuvent être d’une grande utilité, sachez aussi vous en méfier.

En effet, pour des raisons professionnelles ou pour la gestion de photos à titre personnel, les données EXIF ont toutes leurs raisons d’être et sont une véritable richesse.

Par contre, si vous publier vos photos sur un quelconque site internet, dans la majeure partie des cas, pour des raisons de préserver votre vie privée, les métadonnées EXIF n’ont pas d’intérêt.

Pour les supprimer avec exiv2, rien de plus simple.

$ exiv2 -d a photo.jpg

 

En suivant les liens plus bas, vous saurez comment intégrer cette commande dans une boucle pour procéder par lot.
Pour l’anecdote avec un peu d’humour (c’était en 2012) :
Le pirate w0rmer & CabinCr3w (pour ne pas dire l’utilisateur de Scripts kiddies) a publié sur Twitter depuis son smartphone, deux photos, l’une du décolleté de sa petite amie, l’autre de son fessier moulé dans un short… Les métadonnées de ses images ont permis au FBI de le confondre…
Les médias parlent de hacker… Ha les cons! Il n’ont encore rien compris, hacker n’est pas synonyme de pirate, au contraire, et hacker ne s’applique pas seulement à l’informatique mais dans le bricolage créatif visant à améliorer le fonctionnement d’un système… Quelqu’un qui fait du tunning, est aussi un hacker! Les hackers existent depuis longtemps, bien avant les ordinateurs. Le terme de Hacker a perdu son prestige depuis le Crackdown de 1990, lorsque le système téléphonique US a globalement disjoncté, du fait d’une erreur de programmation des opérateurs, qui accusèrent pourtant le monde des BBS.

Pour en savoir plus sur les métadonnées EXIF :
Métadonnées EXIF d’une photo
Renommer les photos par lot en utilisant les métadonnées EXIF
Modifier les métadonnées EXIF de ses photos
Modifier la date de vos photos
Ajouter les coordonnées GPS dans EXIF avec exiv2

Vous pouvez aussi changer le nom de fichier de vos photos sans utiliser les métadonnées EXIF
Renommer les photos sans utiliser les métadonnées Exif

 

Récupérer des images ou fichiers effacés avec PhotoRec

Récuprérer photos et fichiers effacés avec photorecRécupérer des images ou fichiers effacés avec PhotoRec

Je refais mon article que j’avais déjà publié le 23 octobre 2010 sur mon autre blog.

Pour ce billet, j’ai refait l’expérience en mettant une carte SD d’un de nos appareils photos.
Toujours aussi MAGIQUE! car j’ai récupéré 334 éléments dont une grande majorité de photos et vidéos dont certaines remontent à 2012.

Mettre sa carte SD sur le lecteur multi carte de son PC, ou brancher son appareil photo muni de sa carte.

Pour la récupération, nous allons utiliser PhotoRec, s’il n’est pas installé, vous le trouverez dans pakage « testdisk » qui doit être installé.

sudo apt-get install testdisk

Sur un terminal regardons où est monté la carte SD avec la commande « mount ».
La ligne qui m’intéresse, entre autres, est la suivante:

/dev/sdc1 on /media/sima78/disk type vfat (rw,nosuid,nodev,uid=1000,gid=1000,shortname=mixed,dmask=0077,utf8=1,showexec,flush,uhelper=udisks2)

Ma carte « /dev/sdc1 » est monté sur « /media/sima78/disk » son type de fichier est « fat »
On crée un répertoire où seront misent les photos récupérées.

cd Bureau/
mkdir recup

Puis on lance l’application « photorec » avec les droits administrateur, le résultat doit être quelque chose de ressemblant à:

$ sudo photorec
PhotoRec 6.14, Data Recovery Utility, July 2013
Christophe GRENIER <grenier[at]cgsecurity[point]org>
http://www.cgsecurity.org
  PhotoRec is free software, and
comes with ABSOLUTELY NO WARRANTY.
Select a media (use Arrow keys, then press Enter):
>Disk /dev/sda - 160 GB / 149 GiB (RO) - ST3160815AS
 Disk /dev/sdb - 1000 GB / 931 GiB (RO) - ST1000DM003-1CH162
 Disk /dev/sdc - 1948 MB / 1858 MiB (RO) - Generic- SD/MMC
 Disk /dev/mapper/mvg-donnees - 751 GB / 700 GiB (RO) - ST1000DM003-1CH162
 Disk /dev/mapper/mvg-save - 248 GB / 231 GiB (RO) - ST1000DM003-1CH162
 Disk /dev/mapper/ubuntu--vg-root - 155 GB / 145 GiB (RO) - ST3160815AS
 Disk /dev/mapper/ubuntu--vg-swap_1 - 4026 MB / 3840 MiB (RO) - ST3160815AS
 Disk /dev/dm-0 - 751 GB / 700 GiB (RO) - ST1000DM003-1CH162
 Disk /dev/dm-1 - 248 GB / 231 GiB (RO) - ST1000DM003-1CH162
 Disk /dev/dm-2 - 155 GB / 145 GiB (RO) - ST3160815AS
>[Previous]  [  Next  ]  [Proceed ]  [  Quit  ]
Note:
Disk capacity must be correctly detected for a successful recovery.
If a disk listed above has incorrect size, check HD jumper settings, BIOS
detection, and install the latest OS patches and disk drivers.

Je choisis donc:
Disk /dev/sdc – 1948 MB / 1858 MiB (RO) – Generic- SD/MMC
Qui correspond à ma carte sd et valide [Proceed ]

A la fenêtre suivante il suffit de faire [ Search ]

PhotoRec 6.14, Data Recovery Utility, July 2013
Christophe GRENIER <grenier[at]cgsecurity[point]org>
http://www.cgsecurity.org
Disk /dev/sdc - 1948 MB / 1858 MiB (RO) - Generic- SD/MMC
     Partition                  Start        End    Size in sectors
      No partition             0   0  1  1022  53 58    3805184 [Whole disk]
> 1 P FAT16 >32M               0   2 18  1022  53 58    3805043 [NO NAME]
>[ Search ]  [Options ]  [File Opt]  [  Quit  ]
                              Start file recovery

Si avant la fenêtre ci-dessus vous tombez sur une fenêtre ressemblant à celle ci-dessous,

PhotoRec 6.14, Data Recovery Utility, July 2013
Christophe GRENIER <grenier[at]cgsecurity[point]org>
http://www.cgsecurity.org
Disk /dev/sde - 1030 MB / 982 MiB (RO) - Generic 2.0 Reader-SD
Please select the partition table type, press Enter when done.
[Intel  ]  Intel/PC partition
[EFI GPT]  EFI GPT partition map (Mac i386, some x86_64...)
[Mac    ]  Apple partition map
[None   ]  Non partitioned media
[Sun    ]  Sun Solaris partition
[XBox   ]  XBox partition
[Return ]  Return to disk selection
sima@stepstep:~/Bureau
Note: Do NOT select 'None' for media with only a single partition. It's very
rare for a drive to be 'Non-partitioned'.
Il suffit de choisir [Intel  ]

A la fenêtre suivante:

PhotoRec 6.14, Data Recovery Utility, July 2013
Christophe GRENIER <grenier[at]cgsecurity[point]org>
http://www.cgsecurity.org
 1 P FAT16 >32M               0   2 18  1022  53 58    3805043 [NO NAME]

Faire Entrée puis à:

To recover lost files, PhotoRec need to know the filesystem type where the
file were stored:
 [ ext2/ext3 ] ext2/ext3/ext4 filesystem
>[ Other     ] FAT/NTFS/HFS+/ReiserFS/...

Choisir [ Other     ] et à la suivante:

PhotoRec 6.14, Data Recovery Utility, July 2013
Christophe GRENIER <grenier[at]cgsecurity[point]org>
http://www.cgsecurity.org
 1 P FAT16 >32M               0   2 18  1022  53 58    3805043 [NO NAME]
Please choose if all space need to be analysed:
>[   Free    ] Scan for files from FAT16 unallocated space only
 [   Whole   ] Extract files from whole partition

Choisir [   Free    ]
Dans celle ci-dessous, il suffit de choisir le dossier où seront stockées les photos ou fichiers récupérés.
Au début du billet nous avons proposé Bureau/recup/

Il suffi de le sélectionner.

PhotoRec 6.14, Data Recovery Utility, July 2013
Please select a destination to save the recovered files.
Do not choose to write the files to the same partition they were stored on.
Keys: Arrow keys to select another directory
      C when the destination is correct
      Q to quit
Directory /home/sima78
>drwx------  1000  1000     20480  8-May-2015 17:23 .
 drwxr-xr-x     0     0      4096 24-Oct-2014 18:11 ..
 drwxr-xr-x  1000  1000      4096  8-May-2015 15:46 Bureau
 drwxr-xr-x  1000  1000     12288 26-Apr-2015 08:22 Documents
 drwxr-xr-x  1000  1000     12288 20-Dec-2014 09:19 Images
 drwxr-xr-x  1000  1000      4096 24-Oct-2014 17:27 Modèles
 drwxr-xr-x  1000  1000      4096  2-Dec-2014 21:35 Musique
 drwxr-xr-x  1000  1000      4096 23-Nov-2014 08:14 Public
 drwxr-xr-x  1000  1000     40960  8-May-2015 14:48 Téléchargements
 drwxr-xr-x  1000  1000      4096 12-Jan-2015 18:14 Vidéos
PhotoRec 6.14, Data Recovery Utility, July 2013
Please select a destination to save the recovered files.
Do not choose to write the files to the same partition they were stored on.
Keys: Arrow keys to select another directory
      C when the destination is correct
      Q to quit
Directory /home/sima78/Bureau
>drwxr-xr-x  1000  1000      4096  8-May-2015 15:46 .
 drwx------  1000  1000     20480  8-May-2015 17:23 ..
 drwxrwxr-x  1000  1000      4096 22-Feb-2015 19:36 Nouveau dossier
 drwxrwxr-x  1000  1000     12288 23-Apr-2015 20:57 phatch
 drwxrwxr-x  1000  1000      4096  8-May-2015 16:44 recup
PhotoRec 6.14, Data Recovery Utility, July 2013
Please select a destination to save the recovered files.
Do not choose to write the files to the same partition they were stored on.
Keys: Arrow keys to select another directory
      C when the destination is correct
      Q to quit
Directory /home/sima78/Bureau/recup
>drwxrwxr-x  1000  1000      4096  8-May-2015 16:44 .
 drwxr-xr-x  1000  1000      4096  8-May-2015 15:46 ..
Quand on est enfin dans le répartoire choisi on valide en tapant C

Sur l’image ci-dessous on voit qu’au bout de seulement quelques secondes on à récupéré:
173 jpg
38 riff
6 tx?
2txt

PhotoRec en activité
Résultat final:

PhotoRec 6.14, Data Recovery Utility, July 2013
Christophe GRENIER <grenier[at]cgsecurity[point]org>
http://www.cgsecurity.org
Disk /dev/sdc - 1948 MB / 1858 MiB (RO) - Generic- SD/MMC
     Partition                  Start        End    Size in sectors
 1 P FAT16 >32M               0   2 18  1022  53 58    3805043 [NO NAME]
334 files saved in /home/sima78/Bureau/recup/recup_dir directory.
Recovery completed.
You are welcome to donate to support further development and encouragement
http://www.cgsecurity.org/wiki/Donation
[ Quit ]

Sources :
PhotoRec
Leur faire un don! Un don pour soutenir le développement et l’encouragement sera le bienvenu !

Modifier la date de vos photos

Modifier la date de vos photosModifier la date de vos photos sous linux en ligne de commande.

Votre appareil est resté longtemps sans ses piles, vous en avez mis des neuves, et pris des photo sans remettre votre appareil à la bonne date et heure…

Vous allez donc devoir…

Modifier la date sur le fichier EXIF de vos photos.

Mettez vos clichés à modifier dans un répertoire.

Voyez la suite….

Ouvrez un shell et vérifiez le contenu du répertoire avec la commande « ls ».

$ ls
DSCN3449.JPG  DSCN3450.JPG  DSCN3451.JPG  DSCN3452.JPG  DSCN3453.JPG  DSCN3454.JPG  DSCN3455.JPG  DSCN3456.JPG

Vérifiez la date d’une des images du répertoire avec « exiv2 image.jpg »
$ exiv2 DSCN3449.JPG

Nom du fichier        : DSCN3449.JPG
Taille du fichier     : 1230426 Octets
Type MIME             : image/jpeg
Taille de l'image     : 2304 x 3072
Marque de l'appareil  : NIKON
Modèle de l'appareil  : COOLPIX L12
Horodatage de l'image : 2010:05:02 05:32:43
Numéro de l'image     : 
Temps d'exposition    : 1/469 s
Ouverture             : F2.8

La date affiche 02/05/2010 à 05:32:43 alors que l’image a été prise (supposons) le 01/05/2012 à entre 14h et 15h.
Nous allons modifier la ligne « Horodatage de l’image: 2010:05:02 05:32:43 » en ligne de commande.
Plusieurs champs peuvent intervenir pour l’affichage de l’heure, on peut vérifier avec la ligne suivante:
exiv2 -p v DSCN3449.JPG | grep DateTime

$ exiv2 -p v DSCN3449.JPG | grep DateTime
0x0132 Image    DateTime             Ascii   20  2010:05:02 05:32:43
0x9003 Photo    DateTimeOriginal     Ascii   20  2010:05:02 05:32:43
0x9004 Photo    DateTimeDigitized    Ascii   20  2010:05:02 05:32:43

Il y a donc trois champs à modifier.
On peut déjà modifier la première photo en trois ligne avec la commande « exiv2 » et l’option « -Mset »

$ exiv2 -M"set Exif.Image.DateTime 2012:05:01 14:32:43" DSCN3449.JPG
$ exiv2 -M"set Exif.Photo.DateTimeOriginal 2012:05:01 14:32:43" DSCN3449.JPG
$ exiv2 -M"set Exif.Photo.DateTimeDigitized 2012:05:01 14:32:43" DSCN3449.JPG

Oui, mais si vous avez plusieurs photos cela risque de devenir très vite fastidieux, l’idéal est de trouver la bonne boucle à faire.
Déplacez l’image que vous venez de modifier pour éviter que les changements lui soient appliqués.
Faire une modification de date dans une boucle, c’est risquer de se retrouver avec tous les clichés à la même date, à la seconde près. A moins de faire un script assez complexe.
Nous allons nous simplifier la tâche en ajustant l’heure. L’option « ad » de la commande « exiv2 » permet l’ajustement de cette donnée en ajoutant ou retirant des tranches de temps. En fait, il faudra préciser le nombre d’années, mois, jours et heures de décalage.

Dans un premier temps nous allons chercher l’intervalle entre la date du cliché et celui de la prise de vue, soit (01/05/2012 14:32 – 02/05/2010 05:32).

Vous pouvez utiliser un tableur ou un calculateur en ligne.
Résultat: 1 year, 11 months, 29 days, 9 hours
Une fois le décalage évalué, on va l’appliquer avec « exiv2 », donc ajouter 1 ans, 11 mois, 29 jours, 9 heures et 00 minutes, il suffit d’exécuter:
« exiv2 -a 9:00 -Y 1 -O 11 -D 29 ad image.jpg »
Mais nous allons l’introduire dans une boucle « For Do Done« 

$ for i in *; do exiv2 -a 9:00 -Y 1 -O 11 -D 29 ad $i;done

Vérifions sur une des images:

$ exiv2 -p v DSCN3452.JPG | grep DateTime
0x0132 Image    DateTime            Ascii   20  2012:05:01 14:36:22
0x9003 Photo    DateTimeOriginal    Ascii   20  2012:05:01 14:36:22
0x9004 Photo    DateTimeDigitized   Ascii   20  2012:05:01 14:36:22

Réussi !
Maintenant vous pouvez renommer vos photos en utilisant la date et heure du fichier exif.

Ajouter les coordonnées GPS dans EXIF avec exiv2

mettre les coordonnées gps dans exif avec exiv2.pngLinux, exiv2 et ajout des coordonnées GPS dans EXIF

Ajouter les coordonnées GPS à une photo en ligne de commande nécessiterai trois (3) lignes de commande, ce script peut simplifier la tâches.

Ici un petit script permettant de rentrer des coordonnées GPS dans les métadonnées EXIF dans une série de photos.

« exiv2 » doit être installé… sinon:

apt-get install exiv2

Ce script va vous poser quelques questions, bien entendu, il ne faut pas mettre les parenthèses…

Les questions qui vous seront posées:

  • Entrez l’extension de fichier en respectant la casse (jpg) (JPG) (RAW)… : Tapez JPG ou jpg ou RAW ,bref l’extension de votre série photos en respectant la casse, c’est-à-dire, en majuscules ou minuscules…
  • Entrez la latitude (N) ou (S) : N ou S Cela se transformera en North ou South sur les tags exif
  • Entrez la latitude sous forme ex (48/1 13/1 24/1) : Imaginons la latitude à rentrer est 48°, 13min et 24sec… vous devrez le saisir sous forme de 48/1 13/1 24/1 et cela donnera 48deg 13′ 24″ sur le tag exif.
  • Entrez la longitude (E) ou (O) : E ou O cela se transformera en East ou West
  • Entrez la longitude sous forme ex (9/1 52/1 51/1) : (même principe que pour la latitude).

Le sript:

#!/bin/bash
# Ajouter les données GPS aux métadonnées EXIF - Sima78
# Entrez vos données GPS sans les parenthèses... :-)"
echo -n "Entrez l'extention de fichier en respectant la casse (jpg) (JPG) (RAW)... : "
read form
echo -n "Entrez la latitude (N) ou (S) : "
read latref
echo -n "Entrez la latitude sous forme ex (48/1 13/1 24/1) : "
read lat
echo -n "Entrez la longitude (E) ou (O) : "
read longref
echo -n "Entrez la longitude sous forme ex (9/1 52/1 51/1) : "
read long
for i in *.$form
   do
      exiv2 -M"set Exif.GPSInfo.GPSLatitudeRef $latref" $i
      exiv2 -M"set Exif.GPSInfo.GPSLatitude $lat" $i
      exiv2 -M"set Exif.GPSInfo.GPSLongitudeRef $longref" $i
      exiv2 -M"set Exif.GPSInfo.GPSLongitude $long" $i
   done
echo "TERMINE"

Pour utiliser ce script, copiez-le dans votre éditeur texte favori et enregistrez sous… par exemple: ajout-gps-exif.sh

Le rendre exécutable par:

chmod +x ajout-gps-exif.sh

Le placer dans le dossier de vos clichés à modifier et le lancer par:

./ajout-gps-exif.sh

Pour voir le résultat:

exiv2 -pt votre_photo.JPG

Exemple de résultat:

(...)
Exif.GPSInfo.GPSLatitudeRef     Ascii    2  North
Exif.GPSInfo.GPSLatitude        Rational 3  48deg 13' 24" 
Exif.GPSInfo.GPSLongitudeRef    Ascii    2  East
Exif.GPSInfo.GPSLongitude       Rational 3  9deg 52' 51"

Ce script utilise une simple boucle (for, do, done) il est donc facile de l’enrichir avec d’autres champs complémentaires (copyright, auteur, commentaire, etc…)

Liste des champs possibles sur www.exiv2.org/tags.html